Skip to content

Commit 8ba0e22

Browse files
committed
build: Add scripts to build and test using Xcode
- xcode-build.sh builds and optionally tests SwiftFoundation. usage: ./xcode-build.sh [--clean] [--test] - DarwinCompatibilityTests/xcode-build.sh builds and tests using the DarwinCompatibilityTests. usage: DarwinCompatibilityTests/xcode-build.sh [--clean]
1 parent 39e3587 commit 8ba0e22

File tree

4 files changed

+86
-2
lines changed

4 files changed

+86
-2
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
TestByteCountFormatter
2+
TestCodable
3+
TestDateComponents
4+
TestDateFormatter
5+
TestDateIntervalFormatter
6+
TestDecimal
7+
TestFileManager
8+
TestHTTPCookie
9+
TestHTTPCookieStorage
10+
TestHTTPURLResponse
11+
TestISO8601DateFormatter
12+
TestIndexSet
13+
TestJSONEncoder
14+
TestJSONSerialization
15+
TestLengthFormatter
16+
TestNSArray
17+
TestNSAttributedString
18+
TestNSCache
19+
TestNSData
20+
TestNSDateComponents
21+
TestNSDictionary
22+
TestNSGeometry
23+
TestNSKeyedArchiver
24+
TestNSMutableAttributedString
25+
TestNSNumber
26+
TestNSOrderedSet
27+
TestNSRegularExpression
28+
TestNSSet
29+
TestNSSortDescriptor
30+
TestNSString
31+
TestNSTextCheckingResult
32+
TestNSURLRequest
33+
TestNotificationQueue
34+
TestNumberFormatter
35+
TestObjCRuntime
36+
TestProcess
37+
TestProcessInfo
38+
TestRunLoop
39+
TestTimeZone
40+
TestURLComponents
41+
TestURLProtocol
42+
TestURLRequest
43+
TestURLResponse
44+
TestURLSessionFTP
45+
TestUserDefaults
46+
TestXMLDocument
47+
TestXMLParser
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#!/bin/bash
2+
3+
DERIVED_DATA=dct-xcode-test-build
4+
if [ "$1" == "--clean" ]; then
5+
rm -rf "${DERIVED_DATA}"
6+
shift
7+
fi
8+
9+
xcodebuild -derivedDataPath $DERIVED_DATA -project DarwinCompatibilityTests.xcodeproj -scheme xdgTestHelper `sed 's/^/-skip-testing:DarwinCompatibilityTests\//g' DarwinCompatibilityTests/TestsToSkip.txt` test

Foundation.xcodeproj/project.pbxproj

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,9 @@
404404
B933A79F1F3055F700FE6846 /* NSString-UTF32-LE-data.txt in Resources */ = {isa = PBXBuildFile; fileRef = B933A79D1F3055F600FE6846 /* NSString-UTF32-LE-data.txt */; };
405405
B940492D223B146800FB4384 /* TestProgressFraction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B940492C223B146800FB4384 /* TestProgressFraction.swift */; };
406406
B951B5EC1F4E2A2000D8B332 /* TestNSLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = B951B5EB1F4E2A2000D8B332 /* TestNSLock.swift */; };
407+
B95FC97122AF0049005DEA0A /* SwiftFoundationNetworking.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 15B8043A228F376000B30FF6 /* SwiftFoundationNetworking.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
408+
B95FC97322AF0060005DEA0A /* SwiftXCTest.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = B95FC97222AF0050005DEA0A /* SwiftXCTest.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
409+
B95FC97522AF051B005DEA0A /* xcode-build.sh in Resources */ = {isa = PBXBuildFile; fileRef = B95FC97422AF051B005DEA0A /* xcode-build.sh */; };
407410
B98E33DD2136AA740044EBE9 /* TestFileWithZeros.txt in Resources */ = {isa = PBXBuildFile; fileRef = B98E33DC2136AA740044EBE9 /* TestFileWithZeros.txt */; };
408411
B9C0E89620C31AB60064C68C /* CFInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B5D888A1BBC963C00234F36 /* CFInternal.h */; settings = {ATTRIBUTES = (Private, ); }; };
409412
BB3D7558208A1E500085CFDC /* TestImports.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB3D7557208A1E500085CFDC /* TestImports.swift */; };
@@ -596,6 +599,8 @@
596599
dstSubfolderSpec = 10;
597600
files = (
598601
5BDC406E1BD6D8C400ED97BB /* SwiftFoundation.framework in CopyFiles */,
602+
B95FC97122AF0049005DEA0A /* SwiftFoundationNetworking.framework in CopyFiles */,
603+
B95FC97322AF0060005DEA0A /* SwiftXCTest.framework in CopyFiles */,
599604
);
600605
runOnlyForDeploymentPostprocessing = 0;
601606
};
@@ -975,8 +980,10 @@
975980
B91095791EEF237800A71930 /* NSString-UTF16-BE-data.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "NSString-UTF16-BE-data.txt"; sourceTree = "<group>"; };
976981
B933A79C1F3055F600FE6846 /* NSString-UTF32-BE-data.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = "NSString-UTF32-BE-data.txt"; sourceTree = "<group>"; };
977982
B933A79D1F3055F600FE6846 /* NSString-UTF32-LE-data.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = "NSString-UTF32-LE-data.txt"; sourceTree = "<group>"; };
978-
B940492C223B146800FB4384 /* TestProgressFraction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestProgressFraction.swift; path = TestFoundation/TestProgressFraction.swift; sourceTree = "<group>"; };
983+
B940492C223B146800FB4384 /* TestProgressFraction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestProgressFraction.swift; sourceTree = "<group>"; };
979984
B951B5EB1F4E2A2000D8B332 /* TestNSLock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestNSLock.swift; sourceTree = "<group>"; };
985+
B95FC97222AF0050005DEA0A /* SwiftXCTest.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SwiftXCTest.framework; sourceTree = BUILT_PRODUCTS_DIR; };
986+
B95FC97422AF051B005DEA0A /* xcode-build.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "xcode-build.sh"; sourceTree = "<group>"; };
980987
B98E33DC2136AA740044EBE9 /* TestFileWithZeros.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TestFileWithZeros.txt; sourceTree = "<group>"; };
981988
B9974B8F1EDF4A22007F15B8 /* TransferState.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TransferState.swift; sourceTree = "<group>"; };
982989
B9974B901EDF4A22007F15B8 /* MultiHandle.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MultiHandle.swift; sourceTree = "<group>"; };
@@ -1221,7 +1228,7 @@
12211228
5B5D88531BBC938800234F36 = {
12221229
isa = PBXGroup;
12231230
children = (
1224-
B940492C223B146800FB4384 /* TestProgressFraction.swift */,
1231+
B95FC97422AF051B005DEA0A /* xcode-build.sh */,
12251232
B167A6641ED7303F0040B09A /* README.md */,
12261233
5BDC3F2C1BCC5DB500ED97BB /* Foundation */,
12271234
EAB57B681BD1A255004AC5C5 /* CoreFoundation */,
@@ -1230,6 +1237,7 @@
12301237
EA66F6371BF1619600136161 /* TestFoundation */,
12311238
5B5D89AB1BBDCD0B00234F36 /* Frameworks */,
12321239
5B5D885E1BBC938800234F36 /* Products */,
1240+
B95FC97222AF0050005DEA0A /* SwiftXCTest.framework */,
12331241
);
12341242
indentWidth = 4;
12351243
sourceTree = "<group>";
@@ -1707,6 +1715,7 @@
17071715
3EA9D66F1EF0532D00B362D6 /* TestJSONEncoder.swift */,
17081716
AA9E0E0C21FA6E0700963F4C /* TestPropertyListEncoder.swift */,
17091717
DCA8120A1F046D13000D0C86 /* TestCodable.swift */,
1718+
B940492C223B146800FB4384 /* TestProgressFraction.swift */,
17101719
C93559281C12C49F009FD6A9 /* TestAffineTransform.swift */,
17111720
EA66F63C1BF1619600136161 /* TestNSArray.swift */,
17121721
294E3C1C1CC5E19300E4F44C /* TestNSAttributedString.swift */,
@@ -2452,6 +2461,7 @@
24522461
isa = PBXResourcesBuildPhase;
24532462
buildActionMask = 2147483647;
24542463
files = (
2464+
B95FC97522AF051B005DEA0A /* xcode-build.sh in Resources */,
24552465
);
24562466
runOnlyForDeploymentPostprocessing = 0;
24572467
};

xcode-build.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/bin/bash
2+
3+
DERIVED_DATA=xcode-test-build
4+
if [ "$1" == "--clean" ]; then
5+
rm -rf "${DERIVED_DATA}"
6+
shift
7+
fi
8+
9+
xcodebuild -derivedDataPath $DERIVED_DATA -workspace Foundation.xcworkspace -scheme SwiftFoundation build
10+
xcodebuild -derivedDataPath $DERIVED_DATA -workspace Foundation.xcworkspace -scheme SwiftFoundationNetworking build
11+
12+
13+
if [ "$1" == "--test" ]; then
14+
shift
15+
xcodebuild -derivedDataPath $DERIVED_DATA -workspace Foundation.xcworkspace -scheme TestFoundation build
16+
$DERIVED_DATA/Build/Products/Debug/TestFoundation.app/Contents/MacOS/TestFoundation $1
17+
fi
18+

0 commit comments

Comments
 (0)