Skip to content

Commit 6ff912a

Browse files
committed
CCUnitTestAssertions.h added with a macro to assert string equality in unit tests.
Simplified unit tests of CCPackageInstallData. Removed non testable CCPackageHelperTests class.
1 parent b3d2939 commit 6ff912a

File tree

4 files changed

+26
-53
lines changed

4 files changed

+26
-53
lines changed

UnitTests/CCPackageHelperTests.m

Lines changed: 0 additions & 34 deletions
This file was deleted.

UnitTests/CCPackageInstallDataTests.m

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
#import <Foundation/Foundation.h>
1111
#import "CCPackageInstallData.h"
1212
#import "CCPackage.h"
13+
#import "CCUnitTestAssertions.h"
1314

1415
@interface CCPackageInstallDataTests : XCTestCase
1516

@@ -49,15 +50,9 @@ - (void)testPopulateInstallDataWithDictionary
4950

5051
[_installData populateInstallDataWithDictionary:installDataDict];
5152

52-
NSURL *localDownloadURL = [NSURL fileURLWithPath:@"/downloadfolder/baa.zip"];
53-
XCTAssertTrue([_installData.localDownloadURL isEqual:localDownloadURL], @"%@ is not equal to %@", _installData.localDownloadURL, localDownloadURL);
54-
55-
NSURL *unzipURL = [NSURL fileURLWithPath:@"/unzupfolder/foo"];
56-
XCTAssertTrue([_installData.unzipURL isEqual:unzipURL], @"%@ is not equal to %@", _installData.unzipURL, unzipURL);
57-
58-
NSString *folderName = @"somename";
59-
XCTAssertTrue([_installData.folderName isEqual:folderName], @"%@ is not equal to %@", _installData.folderName, folderName);
60-
53+
XCTAssertEqualObjects(_installData.localDownloadURL, [NSURL fileURLWithPath:@"/downloadfolder/baa.zip"]);
54+
XCTAssertEqualObjects(_installData.unzipURL, [NSURL fileURLWithPath:@"/unzupfolder/foo"]);
55+
CCAssertEqualStrings(_installData.folderName, @"somename");
6156
XCTAssertTrue(_installData.enableOnDownload);
6257
}
6358

@@ -67,17 +62,14 @@ - (void)testWriteInstallDataToDictionary
6762

6863
[_installData writeInstallDataToDictionary:dictionary];
6964

70-
NSURL *localDownloadURL = [NSURL fileURLWithPath:@"/downloadfolder/baa.zip"];
7165
NSURL *dictDownloadURL = [NSURL URLWithString:dictionary[@"localDownloadURL"]];
72-
XCTAssertTrue([dictDownloadURL isEqual:localDownloadURL], @"%@ is not equal to %@", dictDownloadURL, localDownloadURL);
66+
XCTAssertEqualObjects(dictDownloadURL, [NSURL fileURLWithPath:@"/downloadfolder/baa.zip"]);
7367

74-
NSURL *localUnzipURL = [NSURL fileURLWithPath:@"/unzupfolder/foo"];
7568
NSURL *dictUnzipURL = [NSURL URLWithString:dictionary[@"localUnzipURL"]];
76-
XCTAssertTrue([dictUnzipURL isEqual:localUnzipURL], @"%@ is not equal to %@", dictUnzipURL, localUnzipURL);
69+
XCTAssertEqualObjects(dictUnzipURL, [NSURL fileURLWithPath:@"/unzupfolder/foo"]);
7770

78-
NSString *localFolderName = @"somename";
7971
NSString *dictFolderName = dictionary[@"folderName"];
80-
XCTAssertTrue([dictFolderName isEqualToString:localFolderName], @"%@ is not equal to %@", dictFolderName, localFolderName);
72+
CCAssertEqualStrings(dictFolderName, @"somename");
8173

8274
XCTAssertFalse([dictionary[@"enableOnDownload"] boolValue]);
8375
}

UnitTests/CCUnitTestAssertions.h

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#define CCAssertEqualStrings(a1, a2, format...) \
2+
do { \
3+
@try { \
4+
id a1value = (a1); \
5+
id a2value = (a2); \
6+
if (a1value == a2value) continue; \
7+
if ([a1value isKindOfClass:[NSString class]] && \
8+
[a2value isKindOfClass:[NSString class]] && \
9+
[a1value compare:a2value options:0] == NSOrderedSame) continue; \
10+
_XCTRegisterFailure(_XCTFailureDescription(_XCTAssertion_EqualObjects, 0, @#a1, @#a2, a1value, a2value),format); \
11+
} \
12+
@catch (id exception) { \
13+
_XCTRegisterFailure(_XCTFailureDescription(_XCTAssertion_EqualObjects, 1, @#a1, @#a2, [exception reason]),format); \
14+
} \
15+
} while(0)

cocos2d-tests-ios.xcodeproj/project.pbxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -144,13 +144,13 @@
144144
E525F033EECC363CA8EAF2A6 /* CCPackageDownloadManagerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F2B770C5914D0810E4C2 /* CCPackageDownloadManagerTests.m */; };
145145
E525F23949076BAB5337F7AD /* CCPackage+InstallDataTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F935C2ECADF41CA1B1F2 /* CCPackage+InstallDataTests.m */; };
146146
E525F5DB1E3086DDE0296CEC /* CCPackageDownloadTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F5FACFF098F0ACBA6419 /* CCPackageDownloadTests.m */; };
147-
E525F6BF96F084A9DD5FFE17 /* CCPackageHelperTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F9A88F0103FC4F3A9FE2 /* CCPackageHelperTests.m */; };
148147
E525F7C977339D17470FC149 /* CCPackageInstallerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525FBF58DFECF27272F5D6F /* CCPackageInstallerTests.m */; };
149148
E525F7FD04A53FA8700B4890 /* CCPackageInstallDataTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525FA40B9446D6820F622B4 /* CCPackageInstallDataTests.m */; };
150149
E525F81797DA5573FC26BEBB /* CCPackageTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F771C583AAF68EB42E15 /* CCPackageTests.m */; };
151150
E525FA44681404CC22A3A8D9 /* CCPackageUnzipperTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F30DA34A6712527102E5 /* CCPackageUnzipperTests.m */; };
152151
E525FCAF2CC6D200B8065E2E /* CCPackageCocos2dEnablerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525FB8A3CC89D071A8377B1 /* CCPackageCocos2dEnablerTests.m */; };
153152
E525FF2E8351476CDD7DEAC4 /* CCPackageManagerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E525F395FE85323D86232416 /* CCPackageManagerTests.m */; };
153+
E525FFABB4646A7446269A98 /* CCUnitTestAssertions.h in Resources */ = {isa = PBXBuildFile; fileRef = E525F832B569117922DA339E /* CCUnitTestAssertions.h */; };
154154
/* End PBXBuildFile section */
155155

156156
/* Begin PBXContainerItemProxy section */
@@ -361,8 +361,8 @@
361361
E525F395FE85323D86232416 /* CCPackageManagerTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageManagerTests.m; sourceTree = "<group>"; };
362362
E525F5FACFF098F0ACBA6419 /* CCPackageDownloadTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageDownloadTests.m; sourceTree = "<group>"; };
363363
E525F771C583AAF68EB42E15 /* CCPackageTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageTests.m; sourceTree = "<group>"; };
364+
E525F832B569117922DA339E /* CCUnitTestAssertions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CCUnitTestAssertions.h; sourceTree = "<group>"; };
364365
E525F935C2ECADF41CA1B1F2 /* CCPackage+InstallDataTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "CCPackage+InstallDataTests.m"; sourceTree = "<group>"; };
365-
E525F9A88F0103FC4F3A9FE2 /* CCPackageHelperTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageHelperTests.m; sourceTree = "<group>"; };
366366
E525FA40B9446D6820F622B4 /* CCPackageInstallDataTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageInstallDataTests.m; sourceTree = "<group>"; };
367367
E525FB8A3CC89D071A8377B1 /* CCPackageCocos2dEnablerTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageCocos2dEnablerTests.m; sourceTree = "<group>"; };
368368
E525FBF58DFECF27272F5D6F /* CCPackageInstallerTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CCPackageInstallerTests.m; sourceTree = "<group>"; };
@@ -426,6 +426,7 @@
426426
D32FDE8519B645CA0078CC16 /* CCTextureTests.m */,
427427
755569EC1856361100ED1B0F /* Supporting Files */,
428428
E525F25081EB1E197CD567E4 /* Packages */,
429+
E525F832B569117922DA339E /* CCUnitTestAssertions.h */,
429430
);
430431
path = UnitTests;
431432
sourceTree = "<group>";
@@ -761,7 +762,6 @@
761762
E525F18C1684DF1CDDEBE3AE /* Install */,
762763
E525F544D63123C8E948AA05 /* Unzip */,
763764
E525F771C583AAF68EB42E15 /* CCPackageTests.m */,
764-
E525F9A88F0103FC4F3A9FE2 /* CCPackageHelperTests.m */,
765765
E525F395FE85323D86232416 /* CCPackageManagerTests.m */,
766766
);
767767
name = Packages;
@@ -897,6 +897,7 @@
897897
9269312A1923D8A700CE6285 /* Resources-shared in Resources */,
898898
75556A1B1856374700ED1B0F /* InfoPlist.strings in Resources */,
899899
75556A15185636FB00ED1B0F /* powered.png in Resources */,
900+
E525FFABB4646A7446269A98 /* CCUnitTestAssertions.h in Resources */,
900901
);
901902
runOnlyForDeploymentPostprocessing = 0;
902903
};
@@ -1000,7 +1001,6 @@
10001001
D34CD3C518ABF4AA00D8E537 /* CCRendererTests.m in Sources */,
10011002
75556A191856370A00ED1B0F /* CCSchedulerTests.m in Sources */,
10021003
E525F81797DA5573FC26BEBB /* CCPackageTests.m in Sources */,
1003-
E525F6BF96F084A9DD5FFE17 /* CCPackageHelperTests.m in Sources */,
10041004
E525F5DB1E3086DDE0296CEC /* CCPackageDownloadTests.m in Sources */,
10051005
E525FA44681404CC22A3A8D9 /* CCPackageUnzipperTests.m in Sources */,
10061006
E525F23949076BAB5337F7AD /* CCPackage+InstallDataTests.m in Sources */,

0 commit comments

Comments
 (0)