Added new test data for attachments and wrote a unit test for attachments

This commit is contained in:
Matt Ronge
2007-08-14 22:01:38 -05:00
parent e3716e8438
commit db123a7e7e
4 changed files with 429 additions and 4 deletions
+1 -1
View File
@@ -328,7 +328,7 @@
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
<string>F8430B2C0C72A21F00753941</string>
<string>F8430B2F0C72A3E600753941</string>
<key>history</key>
<array>
<string>F869B8E10C618FA80033E640</string>
+25 -3
View File
@@ -552,6 +552,8 @@
F8430B2A0C72A21F00753941 /* PBXTextBookmark */ = F8430B2A0C72A21F00753941 /* PBXTextBookmark */;
F8430B2B0C72A21F00753941 /* PBXTextBookmark */ = F8430B2B0C72A21F00753941 /* PBXTextBookmark */;
F8430B2C0C72A21F00753941 /* PBXTextBookmark */ = F8430B2C0C72A21F00753941 /* PBXTextBookmark */;
F8430B2D0C72A3D300753941 /* PBXTextBookmark */ = F8430B2D0C72A3D300753941 /* PBXTextBookmark */;
F8430B2F0C72A3E600753941 /* PBXTextBookmark */ = F8430B2F0C72A3E600753941 /* PBXTextBookmark */;
F8584AAE0C4B0CE1007B6EF3 = F8584AAE0C4B0CE1007B6EF3 /* PBXTextBookmark */;
F8584B4B0C4B2675007B6EF3 = F8584B4B0C4B2675007B6EF3 /* PBXTextBookmark */;
F858CC950C51E42100EF1B3D = F858CC950C51E42100EF1B3D /* PBXTextBookmark */;
@@ -732,9 +734,9 @@
};
F81A8AEC0C03FC58002F780A /* CTMIMETests.m */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1046, 1568}}";
sepNavSelRange = "{6194, 0}";
sepNavVisRange = "{0, 2255}";
sepNavIntBoundsRect = "{{0, 0}, {1046, 1778}}";
sepNavSelRange = "{7316, 0}";
sepNavVisRange = "{4285, 3099}";
};
};
F81B88500A74AA7100143DF6 /* CTCoreAccount.h */ = {
@@ -5441,6 +5443,26 @@
vrLen = 2255;
vrLoc = 0;
};
F8430B2D0C72A3D300753941 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = F81A8AEC0C03FC58002F780A /* CTMIMETests.m */;
name = "CTMIMETests.m: 122";
rLen = 0;
rLoc = 7261;
rType = 0;
vrLen = 3101;
vrLoc = 4285;
};
F8430B2F0C72A3E600753941 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = F81A8AEC0C03FC58002F780A /* CTMIMETests.m */;
name = "CTMIMETests.m: 123";
rLen = 0;
rLoc = 7316;
rType = 0;
vrLen = 3099;
vrLoc = 4285;
};
F8584AAE0C4B0CE1007B6EF3 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = F81B88560A74AA7100143DF6 /* CTCoreMessage.h */;
+388
View File
@@ -0,0 +1,388 @@
Return-Path: <mronge@theronge.com>
X-Original-To: mronge@theronge.com
Delivered-To: mronge@theronge.com
Received: from relay7.cso.uiuc.edu (relay7.cso.uiuc.edu [128.174.5.108])
by theronge.com (Postfix) with ESMTP id D9110B847D
for <mronge@theronge.com>; Tue, 14 Aug 2007 19:56:25 -0700 (PDT)
Received: from theronge.com (theronge.com [69.12.216.205])
by relay7.cso.uiuc.edu (8.14.1/8.14.1) with ESMTP id l7F2uKEQ009515
for <mronge2@uiuc.edu>; Tue, 14 Aug 2007 21:56:26 -0500 (CDT)
Received: from [192.168.0.197] (66-117-168-58.rev.dls.net [66.117.168.58])
by theronge.com (Postfix) with ESMTP id 4B8E5B847D
for <mronge2@uiuc.edu>; Tue, 14 Aug 2007 19:56:15 -0700 (PDT)
Date: Tue, 14 Aug 2007 21:56:13 -0500 (CDT)
From: Matt Ronge <mronge@theronge.com>
X-X-Sender: mronge@Compie.local
To: mronge2@uiuc.edu
Subject: Test Message with Image Attachment
Message-ID: <alpine.OSX.0.999.0708142154570.11724@Compie.local>
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="0-1595289667-1187146577=:11724"
X-Spam-Score: 0
X-Spam-Details: rule=aggressive_notspam policy=aggressive score=0 spamscore=0
ipscore=0 phishscore=1 bulkscore=1 adultscore=0 classifier=spam
adjust=0 reason=mlx engine=3.1.0-0708060001
definitions=main-0708140149
X-Spam-OrigSender: mronge@theronge.com
X-Spam-Bar:
X-Spambayes-Classification: ham; 0.05
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
--0-1595289667-1187146577=:11724
Content-Type: TEXT/PLAIN; format=flowed; charset=us-ascii
Test message with an image attachment.
--0-1595289667-1187146577=:11724
Content-Type: IMAGE/png; name="Picture 1.png"
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.OSX.0.999.0708142156130.11724@Compie.local>
Content-Description:
Content-Disposition: attachment; filename="Picture 1.png"
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
--0-1595289667-1187146577=:11724--
+15
View File
@@ -108,4 +108,19 @@ const NSString *filePrefix = @"/Users/mronge/Projects/MailCore/";
STAssertEqualObjects(img.filename, @"mytestimage.jpg", @"Filename of inline image not correct");
[msg release];
}
- (void)testImagePNGAttachment {
CTCoreMessage *msg = [[CTCoreMessage alloc] initWithFileAtPath:[NSString stringWithFormat:@"%@%@",filePrefix,@"TestData/mime-tests/png_attachment"]];
CTMIME *mime = [CTMIMEFactory createMIMEWithMIMEStruct:[msg messageStruct]->msg_mime forMessage:[msg messageStruct]];
STAssertTrue([mime isKindOfClass:[CTMIME_MessagePart class]],@"Outmost MIME type should be Message but it's not!");
STAssertTrue([[mime content] isKindOfClass:[CTMIME_MultiPart class]],@"Incorrect MIME structure found!");
NSArray *multiPartContent = [[mime content] content];
STAssertTrue([multiPartContent count] == 2, @"Incorrect MIME structure found!");
STAssertTrue([[multiPartContent objectAtIndex:0] isKindOfClass:[CTMIME_TextPart class]], @"Incorrect MIME structure found!");
STAssertTrue([[multiPartContent objectAtIndex:1] isKindOfClass:[CTMIME_ImagePart class]], @"Incorrect MIME structure found!");
CTMIME_ImagePart *img = [multiPartContent objectAtIndex:1];
STAssertTrue(img.attached == TRUE, @"Image is should be attached");
STAssertEqualObjects(img.filename, @"Picture 1.png", @"Filename of inline image not correct");
[msg release];
}
@end