diff --git a/DarwinCompatibilityTests.xcodeproj/project.pbxproj b/DarwinCompatibilityTests.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..772e4a4ce9 --- /dev/null +++ b/DarwinCompatibilityTests.xcodeproj/project.pbxproj @@ -0,0 +1,788 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 48; + objects = { + +/* Begin PBXBuildFile section */ + B95788861F6FB9470003EB01 /* TestNSNumberBridging.swift in Sources */ = {isa = PBXBuildFile; fileRef = B95788851F6FB9470003EB01 /* TestNSNumberBridging.swift */; }; + B9C89ED21F6BF67C00087AF4 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B9C89ED11F6BF67C00087AF4 /* XCTest.framework */; }; + B9C89F361F6BF89C00087AF4 /* TestScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EE61F6BF88F00087AF4 /* TestScanner.swift */; }; + B9C89F371F6BF89C00087AF4 /* TestNSValue.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EE71F6BF88F00087AF4 /* TestNSValue.swift */; }; + B9C89F381F6BF89C00087AF4 /* TestUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EE81F6BF88F00087AF4 /* TestUtils.swift */; }; + B9C89F391F6BF89C00087AF4 /* TestProcessInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EE91F6BF88F00087AF4 /* TestProcessInfo.swift */; }; + B9C89F3B1F6BF89C00087AF4 /* TestURLProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EEB1F6BF89000087AF4 /* TestURLProtocol.swift */; }; + B9C89F3C1F6BF89C00087AF4 /* TestURLSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EEC1F6BF89000087AF4 /* TestURLSession.swift */; }; + B9C89F3D1F6BF89C00087AF4 /* TestXMLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EED1F6BF89000087AF4 /* TestXMLParser.swift */; }; + B9C89F3E1F6BF89C00087AF4 /* TestISO8601DateFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EEE1F6BF89000087AF4 /* TestISO8601DateFormatter.swift */; }; + B9C89F3F1F6BF89C00087AF4 /* TestNSTextCheckingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EEF1F6BF89000087AF4 /* TestNSTextCheckingResult.swift */; }; + B9C89F401F6BF89C00087AF4 /* TestCharacterSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF01F6BF89000087AF4 /* TestCharacterSet.swift */; }; + B9C89F411F6BF89C00087AF4 /* TestCodable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF11F6BF89100087AF4 /* TestCodable.swift */; }; + B9C89F421F6BF89C00087AF4 /* TestIndexPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF21F6BF89100087AF4 /* TestIndexPath.swift */; }; + B9C89F431F6BF89C00087AF4 /* TestMassFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF31F6BF89100087AF4 /* TestMassFormatter.swift */; }; + B9C89F441F6BF89C00087AF4 /* TestNSSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF41F6BF89100087AF4 /* TestNSSet.swift */; }; + B9C89F451F6BF89C00087AF4 /* TestURLResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF51F6BF89100087AF4 /* TestURLResponse.swift */; }; + B9C89F461F6BF89C00087AF4 /* TestDate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF61F6BF89100087AF4 /* TestDate.swift */; }; + B9C89F471F6BF89C00087AF4 /* TestObjCRuntime.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF71F6BF89200087AF4 /* TestObjCRuntime.swift */; }; + B9C89F481F6BF89C00087AF4 /* TestStream.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF81F6BF89200087AF4 /* TestStream.swift */; }; + B9C89F491F6BF89C00087AF4 /* TestProgress.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EF91F6BF89200087AF4 /* TestProgress.swift */; }; + B9C89F4A1F6BF89C00087AF4 /* TestCalendar.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EFA1F6BF89200087AF4 /* TestCalendar.swift */; }; + B9C89F4B1F6BF89C00087AF4 /* TestBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EFB1F6BF89200087AF4 /* TestBundle.swift */; }; + B9C89F4C1F6BF89C00087AF4 /* TestDateFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EFC1F6BF89200087AF4 /* TestDateFormatter.swift */; }; + B9C89F4D1F6BF89C00087AF4 /* TestHTTPCookie.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EFD1F6BF89200087AF4 /* TestHTTPCookie.swift */; }; + B9C89F4E1F6BF89C00087AF4 /* TestNSError.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EFE1F6BF89300087AF4 /* TestNSError.swift */; }; + B9C89F4F1F6BF89C00087AF4 /* TestNSString.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EFF1F6BF89300087AF4 /* TestNSString.swift */; }; + B9C89F501F6BF89C00087AF4 /* TestNSUUID.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F001F6BF89300087AF4 /* TestNSUUID.swift */; }; + B9C89F511F6BF89C00087AF4 /* TestPropertyListSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F011F6BF89300087AF4 /* TestPropertyListSerialization.swift */; }; + B9C89F531F6BF89C00087AF4 /* TestNSArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F031F6BF89300087AF4 /* TestNSArray.swift */; }; + B9C89F541F6BF89C00087AF4 /* TestFileHandle.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F051F6BF89400087AF4 /* TestFileHandle.swift */; }; + B9C89F551F6BF89C00087AF4 /* TestTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F061F6BF89400087AF4 /* TestTimer.swift */; }; + B9C89F561F6BF89C00087AF4 /* TestTimeZone.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F071F6BF89400087AF4 /* TestTimeZone.swift */; }; + B9C89F571F6BF89C00087AF4 /* TestNSNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F081F6BF89400087AF4 /* TestNSNumber.swift */; }; + B9C89F581F6BF89C00087AF4 /* TestNSAttributedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F091F6BF89400087AF4 /* TestNSAttributedString.swift */; }; + B9C89F591F6BF89C00087AF4 /* TestByteCountFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F0A1F6BF89400087AF4 /* TestByteCountFormatter.swift */; }; + B9C89F5A1F6BF89C00087AF4 /* TestUnit.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F0B1F6BF89400087AF4 /* TestUnit.swift */; }; + B9C89F5B1F6BF89C00087AF4 /* TestJSONEncoder.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F0C1F6BF89500087AF4 /* TestJSONEncoder.swift */; }; + B9C89F5C1F6BF89C00087AF4 /* TestOperationQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F0D1F6BF89500087AF4 /* TestOperationQueue.swift */; }; + B9C89F5D1F6BF89C00087AF4 /* TestUserDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F0E1F6BF89500087AF4 /* TestUserDefaults.swift */; }; + B9C89F5E1F6BF89C00087AF4 /* TestXMLDocument.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F0F1F6BF89500087AF4 /* TestXMLDocument.swift */; }; + B9C89F5F1F6BF89C00087AF4 /* TestNSOrderedSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F101F6BF89500087AF4 /* TestNSOrderedSet.swift */; }; + B9C89F601F6BF89C00087AF4 /* TestIndexSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F111F6BF89500087AF4 /* TestIndexSet.swift */; }; + B9C89F611F6BF89C00087AF4 /* TestPipe.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F121F6BF89500087AF4 /* TestPipe.swift */; }; + B9C89F631F6BF89C00087AF4 /* TestURLRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F141F6BF89600087AF4 /* TestURLRequest.swift */; }; + B9C89F641F6BF89C00087AF4 /* TestNSNull.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F151F6BF89600087AF4 /* TestNSNull.swift */; }; + B9C89F651F6BF89C00087AF4 /* TestNSKeyedArchiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F161F6BF89600087AF4 /* TestNSKeyedArchiver.swift */; }; + B9C89F661F6BF89C00087AF4 /* TestUnitConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F171F6BF89600087AF4 /* TestUnitConverter.swift */; }; + B9C89F671F6BF89C00087AF4 /* TestNumberFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F181F6BF89600087AF4 /* TestNumberFormatter.swift */; }; + B9C89F681F6BF89C00087AF4 /* TestURL.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F191F6BF89700087AF4 /* TestURL.swift */; }; + B9C89F6A1F6BF89C00087AF4 /* TestNSRegularExpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F1B1F6BF89700087AF4 /* TestNSRegularExpression.swift */; }; + B9C89F6B1F6BF89C00087AF4 /* TestNSPredicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F1C1F6BF89700087AF4 /* TestNSPredicate.swift */; }; + B9C89F6C1F6BF89C00087AF4 /* TestNSLocale.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F1D1F6BF89700087AF4 /* TestNSLocale.swift */; }; + B9C89F6D1F6BF89C00087AF4 /* TestNSKeyedUnarchiver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F1E1F6BF89700087AF4 /* TestNSKeyedUnarchiver.swift */; }; + B9C89F6E1F6BF89C00087AF4 /* TestPersonNameComponents.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F1F1F6BF89700087AF4 /* TestPersonNameComponents.swift */; }; + B9C89F6F1F6BF89C00087AF4 /* TestFileManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F201F6BF89800087AF4 /* TestFileManager.swift */; }; + B9C89F701F6BF89C00087AF4 /* TestDecimal.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F211F6BF89800087AF4 /* TestDecimal.swift */; }; + B9C89F711F6BF89C00087AF4 /* TestNSCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F221F6BF89800087AF4 /* TestNSCache.swift */; }; + B9C89F721F6BF89C00087AF4 /* TestNSDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F231F6BF89800087AF4 /* TestNSDictionary.swift */; }; + B9C89F731F6BF89C00087AF4 /* TestNotificationCenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F241F6BF89800087AF4 /* TestNotificationCenter.swift */; }; + B9C89F741F6BF89C00087AF4 /* TestProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F251F6BF89800087AF4 /* TestProcess.swift */; }; + B9C89F751F6BF89C00087AF4 /* TestEnergyFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F261F6BF89900087AF4 /* TestEnergyFormatter.swift */; }; + B9C89F761F6BF89C00087AF4 /* TestNSCompoundPredicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F271F6BF89900087AF4 /* TestNSCompoundPredicate.swift */; }; + B9C89F771F6BF89C00087AF4 /* TestNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F281F6BF89900087AF4 /* TestNotification.swift */; }; + B9C89F781F6BF89C00087AF4 /* TestNSData.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F291F6BF89900087AF4 /* TestNSData.swift */; }; + B9C89F791F6BF89C00087AF4 /* TestNSRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F2A1F6BF89900087AF4 /* TestNSRange.swift */; }; + B9C89F7A1F6BF89C00087AF4 /* TestNSGeometry.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F2B1F6BF89900087AF4 /* TestNSGeometry.swift */; }; + B9C89F7B1F6BF89C00087AF4 /* TestNSProgressFraction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F2C1F6BF89900087AF4 /* TestNSProgressFraction.swift */; }; + B9C89F7C1F6BF89C00087AF4 /* TestURLCredential.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F2D1F6BF89A00087AF4 /* TestURLCredential.swift */; }; + B9C89F7D1F6BF89C00087AF4 /* TestRunLoop.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F2E1F6BF89A00087AF4 /* TestRunLoop.swift */; }; + B9C89F7E1F6BF89C00087AF4 /* TestThread.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F2F1F6BF89B00087AF4 /* TestThread.swift */; }; + B9C89F7F1F6BF89C00087AF4 /* TestNotificationQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F301F6BF89B00087AF4 /* TestNotificationQueue.swift */; }; + B9C89F801F6BF89C00087AF4 /* TestJSONSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F311F6BF89B00087AF4 /* TestJSONSerialization.swift */; }; + B9C89F811F6BF89C00087AF4 /* TestAffineTransform.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F321F6BF89B00087AF4 /* TestAffineTransform.swift */; }; + B9C89F821F6BF89C00087AF4 /* TestNSURLRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F331F6BF89C00087AF4 /* TestNSURLRequest.swift */; }; + B9C89F8B1F6D4DA900087AF4 /* HTTPServer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89F891F6D4D9D00087AF4 /* HTTPServer.swift */; }; + B9C89F8C1F6D4DA900087AF4 /* TestHTTPCookieStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EE41F6BF88F00087AF4 /* TestHTTPCookieStorage.swift */; }; + B9C89F8D1F6D4DA900087AF4 /* TestLengthFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9C89EE51F6BF88F00087AF4 /* TestLengthFormatter.swift */; }; + B9C89FBA1F6DCAEB00087AF4 /* NSString-UTF32-LE-data.txt in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FA51F6DCAE500087AF4 /* NSString-UTF32-LE-data.txt */; }; + B9C89FBB1F6DCAEB00087AF4 /* NSKeyedUnarchiver-EdgeInsetsTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FA61F6DCAE600087AF4 /* NSKeyedUnarchiver-EdgeInsetsTest.plist */; }; + B9C89FBC1F6DCAEB00087AF4 /* NSKeyedUnarchiver-ConcreteValueTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FA71F6DCAE600087AF4 /* NSKeyedUnarchiver-ConcreteValueTest.plist */; }; + B9C89FBD1F6DCAEB00087AF4 /* NSKeyedUnarchiver-RectTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FA81F6DCAE600087AF4 /* NSKeyedUnarchiver-RectTest.plist */; }; + B9C89FBE1F6DCAEB00087AF4 /* NSXMLDTDTestData.xml in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FA91F6DCAE700087AF4 /* NSXMLDTDTestData.xml */; }; + B9C89FBF1F6DCAEB00087AF4 /* NSString-UTF16-LE-data.txt in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FAA1F6DCAE700087AF4 /* NSString-UTF16-LE-data.txt */; }; + B9C89FC01F6DCAEB00087AF4 /* NSKeyedUnarchiver-UUIDTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FAB1F6DCAE700087AF4 /* NSKeyedUnarchiver-UUIDTest.plist */; }; + B9C89FC11F6DCAEB00087AF4 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FAC1F6DCAE700087AF4 /* Info.plist */; }; + B9C89FC21F6DCAEB00087AF4 /* NSKeyedUnarchiver-ArrayTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FAD1F6DCAE800087AF4 /* NSKeyedUnarchiver-ArrayTest.plist */; }; + B9C89FC31F6DCAEB00087AF4 /* NSStringTestData.txt in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FAE1F6DCAE800087AF4 /* NSStringTestData.txt */; }; + B9C89FC41F6DCAEB00087AF4 /* NSKeyedUnarchiver-OrderedSetTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FAF1F6DCAE800087AF4 /* NSKeyedUnarchiver-OrderedSetTest.plist */; }; + B9C89FC51F6DCAEB00087AF4 /* NSString-UTF32-BE-data.txt in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB01F6DCAE900087AF4 /* NSString-UTF32-BE-data.txt */; }; + B9C89FC61F6DCAEB00087AF4 /* NSKeyedUnarchiver-URLTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB11F6DCAE900087AF4 /* NSKeyedUnarchiver-URLTest.plist */; }; + B9C89FC71F6DCAEB00087AF4 /* NSURLTestData.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB21F6DCAE900087AF4 /* NSURLTestData.plist */; }; + B9C89FC81F6DCAEB00087AF4 /* NSKeyedUnarchiver-ComplexTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB31F6DCAE900087AF4 /* NSKeyedUnarchiver-ComplexTest.plist */; }; + B9C89FC91F6DCAEB00087AF4 /* NSString-UTF16-BE-data.txt in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB41F6DCAEA00087AF4 /* NSString-UTF16-BE-data.txt */; }; + B9C89FCA1F6DCAEB00087AF4 /* NSKeyedUnarchiver-RangeTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB51F6DCAEA00087AF4 /* NSKeyedUnarchiver-RangeTest.plist */; }; + B9C89FCB1F6DCAEB00087AF4 /* NSXMLDocumentTestData.xml in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB61F6DCAEA00087AF4 /* NSXMLDocumentTestData.xml */; }; + B9C89FCC1F6DCAEB00087AF4 /* NSKeyedUnarchiver-NotificationTest.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB71F6DCAEB00087AF4 /* NSKeyedUnarchiver-NotificationTest.plist */; }; + B9C89FCD1F6DCAEB00087AF4 /* PropertyList-1.0.dtd in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB81F6DCAEB00087AF4 /* PropertyList-1.0.dtd */; }; + B9C89FCE1F6DCAEB00087AF4 /* Test.plist in Resources */ = {isa = PBXBuildFile; fileRef = B9C89FB91F6DCAEB00087AF4 /* Test.plist */; }; + B9F3269F1FC714DD003C3599 /* DarwinShims.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9F3269E1FC714DD003C3599 /* DarwinShims.swift */; }; + B9F326A01FC714DD003C3599 /* DarwinShims.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9F3269E1FC714DD003C3599 /* DarwinShims.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + B9C89EBF1F6BF47D00087AF4 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 12; + dstPath = usr/share/man/man1; + dstSubfolderSpec = 7; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + B95788851F6FB9470003EB01 /* TestNSNumberBridging.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSNumberBridging.swift; path = TestFoundation/TestNSNumberBridging.swift; sourceTree = ""; }; + B9C89EC11F6BF47D00087AF4 /* DarwinCompatibilityTests */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = DarwinCompatibilityTests; sourceTree = BUILT_PRODUCTS_DIR; }; + B9C89ED11F6BF67C00087AF4 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/MacOSX.platform/Developer/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + B9C89ED71F6BF77E00087AF4 /* DarwinCompatibilityTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DarwinCompatibilityTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + B9C89EDB1F6BF77E00087AF4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + B9C89EDF1F6BF79000087AF4 /* TestFoundation */ = {isa = PBXFileReference; lastKnownFileType = folder; name = TestFoundation; path = ../TestFoundation; sourceTree = ""; }; + B9C89EE41F6BF88F00087AF4 /* TestHTTPCookieStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestHTTPCookieStorage.swift; path = TestFoundation/TestHTTPCookieStorage.swift; sourceTree = ""; }; + B9C89EE51F6BF88F00087AF4 /* TestLengthFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestLengthFormatter.swift; path = TestFoundation/TestLengthFormatter.swift; sourceTree = ""; }; + B9C89EE61F6BF88F00087AF4 /* TestScanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestScanner.swift; path = TestFoundation/TestScanner.swift; sourceTree = ""; }; + B9C89EE71F6BF88F00087AF4 /* TestNSValue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSValue.swift; path = TestFoundation/TestNSValue.swift; sourceTree = ""; }; + B9C89EE81F6BF88F00087AF4 /* TestUtils.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestUtils.swift; path = TestFoundation/TestUtils.swift; sourceTree = ""; }; + B9C89EE91F6BF88F00087AF4 /* TestProcessInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestProcessInfo.swift; path = TestFoundation/TestProcessInfo.swift; sourceTree = ""; }; + B9C89EEB1F6BF89000087AF4 /* TestURLProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestURLProtocol.swift; path = TestFoundation/TestURLProtocol.swift; sourceTree = ""; }; + B9C89EEC1F6BF89000087AF4 /* TestURLSession.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestURLSession.swift; path = TestFoundation/TestURLSession.swift; sourceTree = ""; }; + B9C89EED1F6BF89000087AF4 /* TestXMLParser.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestXMLParser.swift; path = TestFoundation/TestXMLParser.swift; sourceTree = ""; }; + B9C89EEE1F6BF89000087AF4 /* TestISO8601DateFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestISO8601DateFormatter.swift; path = TestFoundation/TestISO8601DateFormatter.swift; sourceTree = ""; }; + B9C89EEF1F6BF89000087AF4 /* TestNSTextCheckingResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSTextCheckingResult.swift; path = TestFoundation/TestNSTextCheckingResult.swift; sourceTree = ""; }; + B9C89EF01F6BF89000087AF4 /* TestCharacterSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestCharacterSet.swift; path = TestFoundation/TestCharacterSet.swift; sourceTree = ""; }; + B9C89EF11F6BF89100087AF4 /* TestCodable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestCodable.swift; path = TestFoundation/TestCodable.swift; sourceTree = ""; }; + B9C89EF21F6BF89100087AF4 /* TestIndexPath.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestIndexPath.swift; path = TestFoundation/TestIndexPath.swift; sourceTree = ""; }; + B9C89EF31F6BF89100087AF4 /* TestMassFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestMassFormatter.swift; path = TestFoundation/TestMassFormatter.swift; sourceTree = ""; }; + B9C89EF41F6BF89100087AF4 /* TestNSSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSSet.swift; path = TestFoundation/TestNSSet.swift; sourceTree = ""; }; + B9C89EF51F6BF89100087AF4 /* TestURLResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestURLResponse.swift; path = TestFoundation/TestURLResponse.swift; sourceTree = ""; }; + B9C89EF61F6BF89100087AF4 /* TestDate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestDate.swift; path = TestFoundation/TestDate.swift; sourceTree = ""; }; + B9C89EF71F6BF89200087AF4 /* TestObjCRuntime.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestObjCRuntime.swift; path = TestFoundation/TestObjCRuntime.swift; sourceTree = ""; }; + B9C89EF81F6BF89200087AF4 /* TestStream.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestStream.swift; path = TestFoundation/TestStream.swift; sourceTree = ""; }; + B9C89EF91F6BF89200087AF4 /* TestProgress.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestProgress.swift; path = TestFoundation/TestProgress.swift; sourceTree = ""; }; + B9C89EFA1F6BF89200087AF4 /* TestCalendar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestCalendar.swift; path = TestFoundation/TestCalendar.swift; sourceTree = ""; }; + B9C89EFB1F6BF89200087AF4 /* TestBundle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestBundle.swift; path = TestFoundation/TestBundle.swift; sourceTree = ""; }; + B9C89EFC1F6BF89200087AF4 /* TestDateFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestDateFormatter.swift; path = TestFoundation/TestDateFormatter.swift; sourceTree = ""; }; + B9C89EFD1F6BF89200087AF4 /* TestHTTPCookie.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestHTTPCookie.swift; path = TestFoundation/TestHTTPCookie.swift; sourceTree = ""; }; + B9C89EFE1F6BF89300087AF4 /* TestNSError.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSError.swift; path = TestFoundation/TestNSError.swift; sourceTree = ""; }; + B9C89EFF1F6BF89300087AF4 /* TestNSString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSString.swift; path = TestFoundation/TestNSString.swift; sourceTree = ""; }; + B9C89F001F6BF89300087AF4 /* TestNSUUID.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSUUID.swift; path = TestFoundation/TestNSUUID.swift; sourceTree = ""; }; + B9C89F011F6BF89300087AF4 /* TestPropertyListSerialization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestPropertyListSerialization.swift; path = TestFoundation/TestPropertyListSerialization.swift; sourceTree = ""; }; + B9C89F021F6BF89300087AF4 /* XDGTestHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = XDGTestHelper.swift; path = TestFoundation/XDGTestHelper.swift; sourceTree = ""; }; + B9C89F031F6BF89300087AF4 /* TestNSArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSArray.swift; path = TestFoundation/TestNSArray.swift; sourceTree = ""; }; + B9C89F051F6BF89400087AF4 /* TestFileHandle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestFileHandle.swift; path = TestFoundation/TestFileHandle.swift; sourceTree = ""; }; + B9C89F061F6BF89400087AF4 /* TestTimer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestTimer.swift; path = TestFoundation/TestTimer.swift; sourceTree = ""; }; + B9C89F071F6BF89400087AF4 /* TestTimeZone.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestTimeZone.swift; path = TestFoundation/TestTimeZone.swift; sourceTree = ""; }; + B9C89F081F6BF89400087AF4 /* TestNSNumber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSNumber.swift; path = TestFoundation/TestNSNumber.swift; sourceTree = ""; }; + B9C89F091F6BF89400087AF4 /* TestNSAttributedString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSAttributedString.swift; path = TestFoundation/TestNSAttributedString.swift; sourceTree = ""; }; + B9C89F0A1F6BF89400087AF4 /* TestByteCountFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestByteCountFormatter.swift; path = TestFoundation/TestByteCountFormatter.swift; sourceTree = ""; }; + B9C89F0B1F6BF89400087AF4 /* TestUnit.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestUnit.swift; path = TestFoundation/TestUnit.swift; sourceTree = ""; }; + B9C89F0C1F6BF89500087AF4 /* TestJSONEncoder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestJSONEncoder.swift; path = TestFoundation/TestJSONEncoder.swift; sourceTree = ""; }; + B9C89F0D1F6BF89500087AF4 /* TestOperationQueue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestOperationQueue.swift; path = TestFoundation/TestOperationQueue.swift; sourceTree = ""; }; + B9C89F0E1F6BF89500087AF4 /* TestUserDefaults.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestUserDefaults.swift; path = TestFoundation/TestUserDefaults.swift; sourceTree = ""; }; + B9C89F0F1F6BF89500087AF4 /* TestXMLDocument.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestXMLDocument.swift; path = TestFoundation/TestXMLDocument.swift; sourceTree = ""; }; + B9C89F101F6BF89500087AF4 /* TestNSOrderedSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSOrderedSet.swift; path = TestFoundation/TestNSOrderedSet.swift; sourceTree = ""; }; + B9C89F111F6BF89500087AF4 /* TestIndexSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestIndexSet.swift; path = TestFoundation/TestIndexSet.swift; sourceTree = ""; }; + B9C89F121F6BF89500087AF4 /* TestPipe.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestPipe.swift; path = TestFoundation/TestPipe.swift; sourceTree = ""; }; + B9C89F131F6BF89600087AF4 /* xdgTestHelper */ = {isa = PBXFileReference; lastKnownFileType = folder; name = xdgTestHelper; path = TestFoundation/xdgTestHelper; sourceTree = ""; }; + B9C89F141F6BF89600087AF4 /* TestURLRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestURLRequest.swift; path = TestFoundation/TestURLRequest.swift; sourceTree = ""; }; + B9C89F151F6BF89600087AF4 /* TestNSNull.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSNull.swift; path = TestFoundation/TestNSNull.swift; sourceTree = ""; }; + B9C89F161F6BF89600087AF4 /* TestNSKeyedArchiver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSKeyedArchiver.swift; path = TestFoundation/TestNSKeyedArchiver.swift; sourceTree = ""; }; + B9C89F171F6BF89600087AF4 /* TestUnitConverter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestUnitConverter.swift; path = TestFoundation/TestUnitConverter.swift; sourceTree = ""; }; + B9C89F181F6BF89600087AF4 /* TestNumberFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNumberFormatter.swift; path = TestFoundation/TestNumberFormatter.swift; sourceTree = ""; }; + B9C89F191F6BF89700087AF4 /* TestURL.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestURL.swift; path = TestFoundation/TestURL.swift; sourceTree = ""; }; + B9C89F1B1F6BF89700087AF4 /* TestNSRegularExpression.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSRegularExpression.swift; path = TestFoundation/TestNSRegularExpression.swift; sourceTree = ""; }; + B9C89F1C1F6BF89700087AF4 /* TestNSPredicate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSPredicate.swift; path = TestFoundation/TestNSPredicate.swift; sourceTree = ""; }; + B9C89F1D1F6BF89700087AF4 /* TestNSLocale.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSLocale.swift; path = TestFoundation/TestNSLocale.swift; sourceTree = ""; }; + B9C89F1E1F6BF89700087AF4 /* TestNSKeyedUnarchiver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSKeyedUnarchiver.swift; path = TestFoundation/TestNSKeyedUnarchiver.swift; sourceTree = ""; }; + B9C89F1F1F6BF89700087AF4 /* TestPersonNameComponents.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestPersonNameComponents.swift; path = TestFoundation/TestPersonNameComponents.swift; sourceTree = ""; }; + B9C89F201F6BF89800087AF4 /* TestFileManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestFileManager.swift; path = TestFoundation/TestFileManager.swift; sourceTree = ""; }; + B9C89F211F6BF89800087AF4 /* TestDecimal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestDecimal.swift; path = TestFoundation/TestDecimal.swift; sourceTree = ""; }; + B9C89F221F6BF89800087AF4 /* TestNSCache.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSCache.swift; path = TestFoundation/TestNSCache.swift; sourceTree = ""; }; + B9C89F231F6BF89800087AF4 /* TestNSDictionary.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSDictionary.swift; path = TestFoundation/TestNSDictionary.swift; sourceTree = ""; }; + B9C89F241F6BF89800087AF4 /* TestNotificationCenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNotificationCenter.swift; path = TestFoundation/TestNotificationCenter.swift; sourceTree = ""; }; + B9C89F251F6BF89800087AF4 /* TestProcess.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestProcess.swift; path = TestFoundation/TestProcess.swift; sourceTree = ""; }; + B9C89F261F6BF89900087AF4 /* TestEnergyFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestEnergyFormatter.swift; path = TestFoundation/TestEnergyFormatter.swift; sourceTree = ""; }; + B9C89F271F6BF89900087AF4 /* TestNSCompoundPredicate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSCompoundPredicate.swift; path = TestFoundation/TestNSCompoundPredicate.swift; sourceTree = ""; }; + B9C89F281F6BF89900087AF4 /* TestNotification.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNotification.swift; path = TestFoundation/TestNotification.swift; sourceTree = ""; }; + B9C89F291F6BF89900087AF4 /* TestNSData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSData.swift; path = TestFoundation/TestNSData.swift; sourceTree = ""; }; + B9C89F2A1F6BF89900087AF4 /* TestNSRange.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSRange.swift; path = TestFoundation/TestNSRange.swift; sourceTree = ""; }; + B9C89F2B1F6BF89900087AF4 /* TestNSGeometry.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSGeometry.swift; path = TestFoundation/TestNSGeometry.swift; sourceTree = ""; }; + B9C89F2C1F6BF89900087AF4 /* TestNSProgressFraction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSProgressFraction.swift; path = TestFoundation/TestNSProgressFraction.swift; sourceTree = ""; }; + B9C89F2D1F6BF89A00087AF4 /* TestURLCredential.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestURLCredential.swift; path = TestFoundation/TestURLCredential.swift; sourceTree = ""; }; + B9C89F2E1F6BF89A00087AF4 /* TestRunLoop.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestRunLoop.swift; path = TestFoundation/TestRunLoop.swift; sourceTree = ""; }; + B9C89F2F1F6BF89B00087AF4 /* TestThread.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestThread.swift; path = TestFoundation/TestThread.swift; sourceTree = ""; }; + B9C89F301F6BF89B00087AF4 /* TestNotificationQueue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNotificationQueue.swift; path = TestFoundation/TestNotificationQueue.swift; sourceTree = ""; }; + B9C89F311F6BF89B00087AF4 /* TestJSONSerialization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestJSONSerialization.swift; path = TestFoundation/TestJSONSerialization.swift; sourceTree = ""; }; + B9C89F321F6BF89B00087AF4 /* TestAffineTransform.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestAffineTransform.swift; path = TestFoundation/TestAffineTransform.swift; sourceTree = ""; }; + B9C89F331F6BF89C00087AF4 /* TestNSURLRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = TestNSURLRequest.swift; path = TestFoundation/TestNSURLRequest.swift; sourceTree = ""; }; + B9C89F891F6D4D9D00087AF4 /* HTTPServer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = HTTPServer.swift; path = TestFoundation/HTTPServer.swift; sourceTree = ""; }; + B9C89FA51F6DCAE500087AF4 /* NSString-UTF32-LE-data.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = "NSString-UTF32-LE-data.txt"; path = "TestFoundation/Resources/NSString-UTF32-LE-data.txt"; sourceTree = ""; }; + B9C89FA61F6DCAE600087AF4 /* NSKeyedUnarchiver-EdgeInsetsTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-EdgeInsetsTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-EdgeInsetsTest.plist"; sourceTree = ""; }; + B9C89FA71F6DCAE600087AF4 /* NSKeyedUnarchiver-ConcreteValueTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-ConcreteValueTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-ConcreteValueTest.plist"; sourceTree = ""; }; + B9C89FA81F6DCAE600087AF4 /* NSKeyedUnarchiver-RectTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-RectTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-RectTest.plist"; sourceTree = ""; }; + B9C89FA91F6DCAE700087AF4 /* NSXMLDTDTestData.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = NSXMLDTDTestData.xml; path = TestFoundation/Resources/NSXMLDTDTestData.xml; sourceTree = ""; }; + B9C89FAA1F6DCAE700087AF4 /* NSString-UTF16-LE-data.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = "NSString-UTF16-LE-data.txt"; path = "TestFoundation/Resources/NSString-UTF16-LE-data.txt"; sourceTree = ""; }; + B9C89FAB1F6DCAE700087AF4 /* NSKeyedUnarchiver-UUIDTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-UUIDTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-UUIDTest.plist"; sourceTree = ""; }; + B9C89FAC1F6DCAE700087AF4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = TestFoundation/Resources/Info.plist; sourceTree = ""; }; + B9C89FAD1F6DCAE800087AF4 /* NSKeyedUnarchiver-ArrayTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-ArrayTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-ArrayTest.plist"; sourceTree = ""; }; + B9C89FAE1F6DCAE800087AF4 /* NSStringTestData.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = NSStringTestData.txt; path = TestFoundation/Resources/NSStringTestData.txt; sourceTree = ""; }; + B9C89FAF1F6DCAE800087AF4 /* NSKeyedUnarchiver-OrderedSetTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-OrderedSetTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-OrderedSetTest.plist"; sourceTree = ""; }; + B9C89FB01F6DCAE900087AF4 /* NSString-UTF32-BE-data.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = "NSString-UTF32-BE-data.txt"; path = "TestFoundation/Resources/NSString-UTF32-BE-data.txt"; sourceTree = ""; }; + B9C89FB11F6DCAE900087AF4 /* NSKeyedUnarchiver-URLTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-URLTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-URLTest.plist"; sourceTree = ""; }; + B9C89FB21F6DCAE900087AF4 /* NSURLTestData.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = NSURLTestData.plist; path = TestFoundation/Resources/NSURLTestData.plist; sourceTree = ""; }; + B9C89FB31F6DCAE900087AF4 /* NSKeyedUnarchiver-ComplexTest.plist */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; name = "NSKeyedUnarchiver-ComplexTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-ComplexTest.plist"; sourceTree = ""; }; + B9C89FB41F6DCAEA00087AF4 /* NSString-UTF16-BE-data.txt */ = {isa = PBXFileReference; lastKnownFileType = text; name = "NSString-UTF16-BE-data.txt"; path = "TestFoundation/Resources/NSString-UTF16-BE-data.txt"; sourceTree = ""; }; + B9C89FB51F6DCAEA00087AF4 /* NSKeyedUnarchiver-RangeTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-RangeTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-RangeTest.plist"; sourceTree = ""; }; + B9C89FB61F6DCAEA00087AF4 /* NSXMLDocumentTestData.xml */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = NSXMLDocumentTestData.xml; path = TestFoundation/Resources/NSXMLDocumentTestData.xml; sourceTree = ""; }; + B9C89FB71F6DCAEB00087AF4 /* NSKeyedUnarchiver-NotificationTest.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "NSKeyedUnarchiver-NotificationTest.plist"; path = "TestFoundation/Resources/NSKeyedUnarchiver-NotificationTest.plist"; sourceTree = ""; }; + B9C89FB81F6DCAEB00087AF4 /* PropertyList-1.0.dtd */ = {isa = PBXFileReference; lastKnownFileType = text.xml; name = "PropertyList-1.0.dtd"; path = "TestFoundation/Resources/PropertyList-1.0.dtd"; sourceTree = ""; }; + B9C89FB91F6DCAEB00087AF4 /* Test.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Test.plist; path = TestFoundation/Resources/Test.plist; sourceTree = ""; }; + B9F3269E1FC714DD003C3599 /* DarwinShims.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DarwinShims.swift; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + B9C89EBE1F6BF47D00087AF4 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + B9C89ED21F6BF67C00087AF4 /* XCTest.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B9C89ED41F6BF77E00087AF4 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + B9C89EB81F6BF47D00087AF4 = { + isa = PBXGroup; + children = ( + B95788851F6FB9470003EB01 /* TestNSNumberBridging.swift */, + B9C89FAC1F6DCAE700087AF4 /* Info.plist */, + B9C89FAD1F6DCAE800087AF4 /* NSKeyedUnarchiver-ArrayTest.plist */, + B9C89FB31F6DCAE900087AF4 /* NSKeyedUnarchiver-ComplexTest.plist */, + B9C89FA71F6DCAE600087AF4 /* NSKeyedUnarchiver-ConcreteValueTest.plist */, + B9C89FA61F6DCAE600087AF4 /* NSKeyedUnarchiver-EdgeInsetsTest.plist */, + B9C89FB71F6DCAEB00087AF4 /* NSKeyedUnarchiver-NotificationTest.plist */, + B9C89FAF1F6DCAE800087AF4 /* NSKeyedUnarchiver-OrderedSetTest.plist */, + B9C89FB51F6DCAEA00087AF4 /* NSKeyedUnarchiver-RangeTest.plist */, + B9C89FA81F6DCAE600087AF4 /* NSKeyedUnarchiver-RectTest.plist */, + B9C89FB11F6DCAE900087AF4 /* NSKeyedUnarchiver-URLTest.plist */, + B9C89FAB1F6DCAE700087AF4 /* NSKeyedUnarchiver-UUIDTest.plist */, + B9C89FB41F6DCAEA00087AF4 /* NSString-UTF16-BE-data.txt */, + B9C89FAA1F6DCAE700087AF4 /* NSString-UTF16-LE-data.txt */, + B9C89FB01F6DCAE900087AF4 /* NSString-UTF32-BE-data.txt */, + B9C89FA51F6DCAE500087AF4 /* NSString-UTF32-LE-data.txt */, + B9C89FAE1F6DCAE800087AF4 /* NSStringTestData.txt */, + B9C89FB21F6DCAE900087AF4 /* NSURLTestData.plist */, + B9C89FB61F6DCAEA00087AF4 /* NSXMLDocumentTestData.xml */, + B9C89FA91F6DCAE700087AF4 /* NSXMLDTDTestData.xml */, + B9C89FB81F6DCAEB00087AF4 /* PropertyList-1.0.dtd */, + B9C89FB91F6DCAEB00087AF4 /* Test.plist */, + B9C89F891F6D4D9D00087AF4 /* HTTPServer.swift */, + B9C89F321F6BF89B00087AF4 /* TestAffineTransform.swift */, + B9C89EFB1F6BF89200087AF4 /* TestBundle.swift */, + B9C89F0A1F6BF89400087AF4 /* TestByteCountFormatter.swift */, + B9C89EFA1F6BF89200087AF4 /* TestCalendar.swift */, + B9C89EF01F6BF89000087AF4 /* TestCharacterSet.swift */, + B9C89EF11F6BF89100087AF4 /* TestCodable.swift */, + B9C89EF61F6BF89100087AF4 /* TestDate.swift */, + B9C89EFC1F6BF89200087AF4 /* TestDateFormatter.swift */, + B9C89F211F6BF89800087AF4 /* TestDecimal.swift */, + B9C89F261F6BF89900087AF4 /* TestEnergyFormatter.swift */, + B9C89F051F6BF89400087AF4 /* TestFileHandle.swift */, + B9C89F201F6BF89800087AF4 /* TestFileManager.swift */, + B9C89EFD1F6BF89200087AF4 /* TestHTTPCookie.swift */, + B9C89EE41F6BF88F00087AF4 /* TestHTTPCookieStorage.swift */, + B9C89EF21F6BF89100087AF4 /* TestIndexPath.swift */, + B9C89F111F6BF89500087AF4 /* TestIndexSet.swift */, + B9C89EEE1F6BF89000087AF4 /* TestISO8601DateFormatter.swift */, + B9C89F0C1F6BF89500087AF4 /* TestJSONEncoder.swift */, + B9C89F311F6BF89B00087AF4 /* TestJSONSerialization.swift */, + B9C89EE51F6BF88F00087AF4 /* TestLengthFormatter.swift */, + B9C89EF31F6BF89100087AF4 /* TestMassFormatter.swift */, + B9C89F281F6BF89900087AF4 /* TestNotification.swift */, + B9C89F241F6BF89800087AF4 /* TestNotificationCenter.swift */, + B9C89F301F6BF89B00087AF4 /* TestNotificationQueue.swift */, + B9C89F031F6BF89300087AF4 /* TestNSArray.swift */, + B9C89F091F6BF89400087AF4 /* TestNSAttributedString.swift */, + B9C89F221F6BF89800087AF4 /* TestNSCache.swift */, + B9C89F271F6BF89900087AF4 /* TestNSCompoundPredicate.swift */, + B9C89F291F6BF89900087AF4 /* TestNSData.swift */, + B9C89F231F6BF89800087AF4 /* TestNSDictionary.swift */, + B9C89EFE1F6BF89300087AF4 /* TestNSError.swift */, + B9C89F2B1F6BF89900087AF4 /* TestNSGeometry.swift */, + B9C89F161F6BF89600087AF4 /* TestNSKeyedArchiver.swift */, + B9C89F1E1F6BF89700087AF4 /* TestNSKeyedUnarchiver.swift */, + B9C89F1D1F6BF89700087AF4 /* TestNSLocale.swift */, + B9C89F151F6BF89600087AF4 /* TestNSNull.swift */, + B9C89F081F6BF89400087AF4 /* TestNSNumber.swift */, + B9C89F101F6BF89500087AF4 /* TestNSOrderedSet.swift */, + B9C89F1C1F6BF89700087AF4 /* TestNSPredicate.swift */, + B9C89F2C1F6BF89900087AF4 /* TestNSProgressFraction.swift */, + B9C89F2A1F6BF89900087AF4 /* TestNSRange.swift */, + B9C89F1B1F6BF89700087AF4 /* TestNSRegularExpression.swift */, + B9C89EF41F6BF89100087AF4 /* TestNSSet.swift */, + B9C89EFF1F6BF89300087AF4 /* TestNSString.swift */, + B9C89EEF1F6BF89000087AF4 /* TestNSTextCheckingResult.swift */, + B9C89F331F6BF89C00087AF4 /* TestNSURLRequest.swift */, + B9C89F001F6BF89300087AF4 /* TestNSUUID.swift */, + B9C89EE71F6BF88F00087AF4 /* TestNSValue.swift */, + B9C89F181F6BF89600087AF4 /* TestNumberFormatter.swift */, + B9C89EF71F6BF89200087AF4 /* TestObjCRuntime.swift */, + B9C89F0D1F6BF89500087AF4 /* TestOperationQueue.swift */, + B9C89F1F1F6BF89700087AF4 /* TestPersonNameComponents.swift */, + B9C89F121F6BF89500087AF4 /* TestPipe.swift */, + B9C89F251F6BF89800087AF4 /* TestProcess.swift */, + B9C89EE91F6BF88F00087AF4 /* TestProcessInfo.swift */, + B9C89EF91F6BF89200087AF4 /* TestProgress.swift */, + B9C89F011F6BF89300087AF4 /* TestPropertyListSerialization.swift */, + B9C89F2E1F6BF89A00087AF4 /* TestRunLoop.swift */, + B9C89EE61F6BF88F00087AF4 /* TestScanner.swift */, + B9C89EF81F6BF89200087AF4 /* TestStream.swift */, + B9C89F2F1F6BF89B00087AF4 /* TestThread.swift */, + B9C89F061F6BF89400087AF4 /* TestTimer.swift */, + B9C89F071F6BF89400087AF4 /* TestTimeZone.swift */, + B9C89F0B1F6BF89400087AF4 /* TestUnit.swift */, + B9C89F171F6BF89600087AF4 /* TestUnitConverter.swift */, + B9C89F191F6BF89700087AF4 /* TestURL.swift */, + B9C89F2D1F6BF89A00087AF4 /* TestURLCredential.swift */, + B9C89EEB1F6BF89000087AF4 /* TestURLProtocol.swift */, + B9C89F141F6BF89600087AF4 /* TestURLRequest.swift */, + B9C89EF51F6BF89100087AF4 /* TestURLResponse.swift */, + B9C89EEC1F6BF89000087AF4 /* TestURLSession.swift */, + B9C89F0E1F6BF89500087AF4 /* TestUserDefaults.swift */, + B9C89EE81F6BF88F00087AF4 /* TestUtils.swift */, + B9C89F0F1F6BF89500087AF4 /* TestXMLDocument.swift */, + B9C89EED1F6BF89000087AF4 /* TestXMLParser.swift */, + B9C89F131F6BF89600087AF4 /* xdgTestHelper */, + B9C89F021F6BF89300087AF4 /* XDGTestHelper.swift */, + B9C89ED81F6BF77E00087AF4 /* DarwinCompatibilityTests */, + B9C89EC21F6BF47D00087AF4 /* Products */, + B9C89ED01F6BF67C00087AF4 /* Frameworks */, + ); + sourceTree = ""; + }; + B9C89EC21F6BF47D00087AF4 /* Products */ = { + isa = PBXGroup; + children = ( + B9C89EC11F6BF47D00087AF4 /* DarwinCompatibilityTests */, + B9C89ED71F6BF77E00087AF4 /* DarwinCompatibilityTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + B9C89ED01F6BF67C00087AF4 /* Frameworks */ = { + isa = PBXGroup; + children = ( + B9C89ED11F6BF67C00087AF4 /* XCTest.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + B9C89ED81F6BF77E00087AF4 /* DarwinCompatibilityTests */ = { + isa = PBXGroup; + children = ( + B9F3269E1FC714DD003C3599 /* DarwinShims.swift */, + B9C89EDF1F6BF79000087AF4 /* TestFoundation */, + B9C89EDB1F6BF77E00087AF4 /* Info.plist */, + ); + path = DarwinCompatibilityTests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + B9C89EC01F6BF47D00087AF4 /* DarwinCompatibilityTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = B9C89EC81F6BF47D00087AF4 /* Build configuration list for PBXNativeTarget "DarwinCompatibilityTests" */; + buildPhases = ( + B9C89EBD1F6BF47D00087AF4 /* Sources */, + B9C89EBE1F6BF47D00087AF4 /* Frameworks */, + B9C89EBF1F6BF47D00087AF4 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = DarwinCompatibilityTests; + productName = DarwinCompatibilityTests; + productReference = B9C89EC11F6BF47D00087AF4 /* DarwinCompatibilityTests */; + productType = "com.apple.product-type.tool"; + }; + B9C89ED61F6BF77E00087AF4 /* DarwinCompatibilityTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = B9C89EDC1F6BF77E00087AF4 /* Build configuration list for PBXNativeTarget "DarwinCompatibilityTests" */; + buildPhases = ( + B9C89ED31F6BF77E00087AF4 /* Sources */, + B9C89ED41F6BF77E00087AF4 /* Frameworks */, + B9C89ED51F6BF77E00087AF4 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = DarwinCompatibilityTests; + productName = DarwinCompatibilityTests; + productReference = B9C89ED71F6BF77E00087AF4 /* DarwinCompatibilityTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + B9C89EB91F6BF47D00087AF4 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0900; + LastUpgradeCheck = 0900; + ORGANIZATIONNAME = Apple; + TargetAttributes = { + B9C89EC01F6BF47D00087AF4 = { + CreatedOnToolsVersion = 9.0; + LastSwiftMigration = 0910; + ProvisioningStyle = Automatic; + }; + B9C89ED61F6BF77E00087AF4 = { + CreatedOnToolsVersion = 9.0; + ProvisioningStyle = Automatic; + }; + }; + }; + buildConfigurationList = B9C89EBC1F6BF47D00087AF4 /* Build configuration list for PBXProject "DarwinCompatibilityTests" */; + compatibilityVersion = "Xcode 8.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = B9C89EB81F6BF47D00087AF4; + productRefGroup = B9C89EC21F6BF47D00087AF4 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + B9C89EC01F6BF47D00087AF4 /* DarwinCompatibilityTests */, + B9C89ED61F6BF77E00087AF4 /* DarwinCompatibilityTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + B9C89ED51F6BF77E00087AF4 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B9C89FBA1F6DCAEB00087AF4 /* NSString-UTF32-LE-data.txt in Resources */, + B9C89FBB1F6DCAEB00087AF4 /* NSKeyedUnarchiver-EdgeInsetsTest.plist in Resources */, + B9C89FBC1F6DCAEB00087AF4 /* NSKeyedUnarchiver-ConcreteValueTest.plist in Resources */, + B9C89FBD1F6DCAEB00087AF4 /* NSKeyedUnarchiver-RectTest.plist in Resources */, + B9C89FBE1F6DCAEB00087AF4 /* NSXMLDTDTestData.xml in Resources */, + B9C89FBF1F6DCAEB00087AF4 /* NSString-UTF16-LE-data.txt in Resources */, + B9C89FC01F6DCAEB00087AF4 /* NSKeyedUnarchiver-UUIDTest.plist in Resources */, + B9C89FC11F6DCAEB00087AF4 /* Info.plist in Resources */, + B9C89FC21F6DCAEB00087AF4 /* NSKeyedUnarchiver-ArrayTest.plist in Resources */, + B9C89FC31F6DCAEB00087AF4 /* NSStringTestData.txt in Resources */, + B9C89FC41F6DCAEB00087AF4 /* NSKeyedUnarchiver-OrderedSetTest.plist in Resources */, + B9C89FC51F6DCAEB00087AF4 /* NSString-UTF32-BE-data.txt in Resources */, + B9C89FC61F6DCAEB00087AF4 /* NSKeyedUnarchiver-URLTest.plist in Resources */, + B9C89FC71F6DCAEB00087AF4 /* NSURLTestData.plist in Resources */, + B9C89FC81F6DCAEB00087AF4 /* NSKeyedUnarchiver-ComplexTest.plist in Resources */, + B9C89FC91F6DCAEB00087AF4 /* NSString-UTF16-BE-data.txt in Resources */, + B9C89FCA1F6DCAEB00087AF4 /* NSKeyedUnarchiver-RangeTest.plist in Resources */, + B9C89FCB1F6DCAEB00087AF4 /* NSXMLDocumentTestData.xml in Resources */, + B9C89FCC1F6DCAEB00087AF4 /* NSKeyedUnarchiver-NotificationTest.plist in Resources */, + B9C89FCD1F6DCAEB00087AF4 /* PropertyList-1.0.dtd in Resources */, + B9C89FCE1F6DCAEB00087AF4 /* Test.plist in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + B9C89EBD1F6BF47D00087AF4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B9F3269F1FC714DD003C3599 /* DarwinShims.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B9C89ED31F6BF77E00087AF4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B95788861F6FB9470003EB01 /* TestNSNumberBridging.swift in Sources */, + B9C89F8B1F6D4DA900087AF4 /* HTTPServer.swift in Sources */, + B9C89F8C1F6D4DA900087AF4 /* TestHTTPCookieStorage.swift in Sources */, + B9C89F8D1F6D4DA900087AF4 /* TestLengthFormatter.swift in Sources */, + B9C89F361F6BF89C00087AF4 /* TestScanner.swift in Sources */, + B9C89F371F6BF89C00087AF4 /* TestNSValue.swift in Sources */, + B9C89F381F6BF89C00087AF4 /* TestUtils.swift in Sources */, + B9C89F391F6BF89C00087AF4 /* TestProcessInfo.swift in Sources */, + B9C89F3B1F6BF89C00087AF4 /* TestURLProtocol.swift in Sources */, + B9C89F3C1F6BF89C00087AF4 /* TestURLSession.swift in Sources */, + B9C89F3D1F6BF89C00087AF4 /* TestXMLParser.swift in Sources */, + B9C89F3E1F6BF89C00087AF4 /* TestISO8601DateFormatter.swift in Sources */, + B9C89F3F1F6BF89C00087AF4 /* TestNSTextCheckingResult.swift in Sources */, + B9C89F401F6BF89C00087AF4 /* TestCharacterSet.swift in Sources */, + B9C89F411F6BF89C00087AF4 /* TestCodable.swift in Sources */, + B9C89F421F6BF89C00087AF4 /* TestIndexPath.swift in Sources */, + B9C89F431F6BF89C00087AF4 /* TestMassFormatter.swift in Sources */, + B9C89F441F6BF89C00087AF4 /* TestNSSet.swift in Sources */, + B9C89F451F6BF89C00087AF4 /* TestURLResponse.swift in Sources */, + B9C89F461F6BF89C00087AF4 /* TestDate.swift in Sources */, + B9C89F471F6BF89C00087AF4 /* TestObjCRuntime.swift in Sources */, + B9C89F481F6BF89C00087AF4 /* TestStream.swift in Sources */, + B9C89F491F6BF89C00087AF4 /* TestProgress.swift in Sources */, + B9C89F4A1F6BF89C00087AF4 /* TestCalendar.swift in Sources */, + B9C89F4B1F6BF89C00087AF4 /* TestBundle.swift in Sources */, + B9C89F4C1F6BF89C00087AF4 /* TestDateFormatter.swift in Sources */, + B9C89F4D1F6BF89C00087AF4 /* TestHTTPCookie.swift in Sources */, + B9C89F4E1F6BF89C00087AF4 /* TestNSError.swift in Sources */, + B9C89F4F1F6BF89C00087AF4 /* TestNSString.swift in Sources */, + B9C89F501F6BF89C00087AF4 /* TestNSUUID.swift in Sources */, + B9C89F511F6BF89C00087AF4 /* TestPropertyListSerialization.swift in Sources */, + B9C89F531F6BF89C00087AF4 /* TestNSArray.swift in Sources */, + B9C89F541F6BF89C00087AF4 /* TestFileHandle.swift in Sources */, + B9F326A01FC714DD003C3599 /* DarwinShims.swift in Sources */, + B9C89F551F6BF89C00087AF4 /* TestTimer.swift in Sources */, + B9C89F561F6BF89C00087AF4 /* TestTimeZone.swift in Sources */, + B9C89F571F6BF89C00087AF4 /* TestNSNumber.swift in Sources */, + B9C89F581F6BF89C00087AF4 /* TestNSAttributedString.swift in Sources */, + B9C89F591F6BF89C00087AF4 /* TestByteCountFormatter.swift in Sources */, + B9C89F5A1F6BF89C00087AF4 /* TestUnit.swift in Sources */, + B9C89F5B1F6BF89C00087AF4 /* TestJSONEncoder.swift in Sources */, + B9C89F5C1F6BF89C00087AF4 /* TestOperationQueue.swift in Sources */, + B9C89F5D1F6BF89C00087AF4 /* TestUserDefaults.swift in Sources */, + B9C89F5E1F6BF89C00087AF4 /* TestXMLDocument.swift in Sources */, + B9C89F5F1F6BF89C00087AF4 /* TestNSOrderedSet.swift in Sources */, + B9C89F601F6BF89C00087AF4 /* TestIndexSet.swift in Sources */, + B9C89F611F6BF89C00087AF4 /* TestPipe.swift in Sources */, + B9C89F631F6BF89C00087AF4 /* TestURLRequest.swift in Sources */, + B9C89F641F6BF89C00087AF4 /* TestNSNull.swift in Sources */, + B9C89F651F6BF89C00087AF4 /* TestNSKeyedArchiver.swift in Sources */, + B9C89F661F6BF89C00087AF4 /* TestUnitConverter.swift in Sources */, + B9C89F671F6BF89C00087AF4 /* TestNumberFormatter.swift in Sources */, + B9C89F681F6BF89C00087AF4 /* TestURL.swift in Sources */, + B9C89F6A1F6BF89C00087AF4 /* TestNSRegularExpression.swift in Sources */, + B9C89F6B1F6BF89C00087AF4 /* TestNSPredicate.swift in Sources */, + B9C89F6C1F6BF89C00087AF4 /* TestNSLocale.swift in Sources */, + B9C89F6D1F6BF89C00087AF4 /* TestNSKeyedUnarchiver.swift in Sources */, + B9C89F6E1F6BF89C00087AF4 /* TestPersonNameComponents.swift in Sources */, + B9C89F6F1F6BF89C00087AF4 /* TestFileManager.swift in Sources */, + B9C89F701F6BF89C00087AF4 /* TestDecimal.swift in Sources */, + B9C89F711F6BF89C00087AF4 /* TestNSCache.swift in Sources */, + B9C89F721F6BF89C00087AF4 /* TestNSDictionary.swift in Sources */, + B9C89F731F6BF89C00087AF4 /* TestNotificationCenter.swift in Sources */, + B9C89F741F6BF89C00087AF4 /* TestProcess.swift in Sources */, + B9C89F751F6BF89C00087AF4 /* TestEnergyFormatter.swift in Sources */, + B9C89F761F6BF89C00087AF4 /* TestNSCompoundPredicate.swift in Sources */, + B9C89F771F6BF89C00087AF4 /* TestNotification.swift in Sources */, + B9C89F781F6BF89C00087AF4 /* TestNSData.swift in Sources */, + B9C89F791F6BF89C00087AF4 /* TestNSRange.swift in Sources */, + B9C89F7A1F6BF89C00087AF4 /* TestNSGeometry.swift in Sources */, + B9C89F7B1F6BF89C00087AF4 /* TestNSProgressFraction.swift in Sources */, + B9C89F7C1F6BF89C00087AF4 /* TestURLCredential.swift in Sources */, + B9C89F7D1F6BF89C00087AF4 /* TestRunLoop.swift in Sources */, + B9C89F7E1F6BF89C00087AF4 /* TestThread.swift in Sources */, + B9C89F7F1F6BF89C00087AF4 /* TestNotificationQueue.swift in Sources */, + B9C89F801F6BF89C00087AF4 /* TestJSONSerialization.swift in Sources */, + B9C89F811F6BF89C00087AF4 /* TestAffineTransform.swift in Sources */, + B9C89F821F6BF89C00087AF4 /* TestNSURLRequest.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + B9C89EC61F6BF47D00087AF4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.12; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + B9C89EC71F6BF47D00087AF4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.12; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + }; + name = Release; + }; + B9C89EC91F6BF47D00087AF4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.12; + OTHER_SWIFT_FLAGS = ""; + "OTHER_SWIFT_FLAGS[arch=*]" = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.0; + }; + name = Debug; + }; + B9C89ECA1F6BF47D00087AF4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; + MACOSX_DEPLOYMENT_TARGET = 10.12; + OTHER_SWIFT_FLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.0; + }; + name = Release; + }; + B9C89EDD1F6BF77E00087AF4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = DarwinCompatibilityTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; + "OTHER_SWIFT_FLAGS[arch=*]" = "-DDEPLOYMENT_RUNTIME_OBJC -DDARWIN_COMPATIBILITY_TESTS"; + PRODUCT_BUNDLE_IDENTIFIER = org.swift.DarwinCompatibilityTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.0; + }; + name = Debug; + }; + B9C89EDE1F6BF77E00087AF4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = DarwinCompatibilityTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; + "OTHER_SWIFT_FLAGS[arch=*]" = "-DDEPLOYMENT_RUNTIME_OBJC -DDARWIN_COMPATIBILITY_TESTS"; + PRODUCT_BUNDLE_IDENTIFIER = org.swift.DarwinCompatibilityTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 4.0; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + B9C89EBC1F6BF47D00087AF4 /* Build configuration list for PBXProject "DarwinCompatibilityTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B9C89EC61F6BF47D00087AF4 /* Debug */, + B9C89EC71F6BF47D00087AF4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + B9C89EC81F6BF47D00087AF4 /* Build configuration list for PBXNativeTarget "DarwinCompatibilityTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B9C89EC91F6BF47D00087AF4 /* Debug */, + B9C89ECA1F6BF47D00087AF4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + B9C89EDC1F6BF77E00087AF4 /* Build configuration list for PBXNativeTarget "DarwinCompatibilityTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B9C89EDD1F6BF77E00087AF4 /* Debug */, + B9C89EDE1F6BF77E00087AF4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = B9C89EB91F6BF47D00087AF4 /* Project object */; +} diff --git a/DarwinCompatibilityTests/DarwinShims.swift b/DarwinCompatibilityTests/DarwinShims.swift new file mode 100644 index 0000000000..171f5d3415 --- /dev/null +++ b/DarwinCompatibilityTests/DarwinShims.swift @@ -0,0 +1,87 @@ +// This source file is part of the Swift.org open source project +// +// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors +// Licensed under Apache License v2.0 with Runtime Library Exception +// +// See http://swift.org/LICENSE.txt for license information +// See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +// + +// These shims are used solely by the DarwinCompatibilityTests Xcode project to +// allow the TestFoundation tests to compile and run against Darwin's native +// Foundation. +// It contains wrappers for methods (some experimental) added in +// swift-corelibs-foundation which do not exist in Foundation, and other small +// differences. + +import Foundation + + +public typealias unichar = UInt16 + +extension unichar : ExpressibleByUnicodeScalarLiteral { + public typealias UnicodeScalarLiteralType = UnicodeScalar + + public init(unicodeScalarLiteral scalar: UnicodeScalar) { + self.init(scalar.value) + } +} + +extension NSURL { + func checkResourceIsReachable() throws -> Bool { + var error: NSError? + if checkResourceIsReachableAndReturnError(&error) { + return true + } else { + if let e = error { + throw e + } + } + return false + } +} + +extension Thread { + class var mainThread: Thread { + return Thread.main + } +} + +extension Scanner { + public func scanString(_ searchString: String) -> String? { + var result: NSString? = nil + if scanString(string, into: &result), let str = result { + return str as String + } + return nil + } +} + +extension JSONSerialization { + class func writeJSONObject(_ obj: Any, toStream stream: OutputStream, options opt: WritingOptions) throws -> Int { + var error: NSError? + let ret = writeJSONObject(obj, to: stream, options: opt, error: &error) + guard ret != 0 else { + throw error! + } + return ret + } +} + +extension NSIndexSet { + func _bridgeToSwift() -> NSIndexSet { + return self + } +} + +extension CharacterSet { + func _bridgeToSwift() -> CharacterSet { + return self + } +} + +extension NSCharacterSet { + func _bridgeToSwift() -> CharacterSet { + return self as CharacterSet + } +} diff --git a/DarwinCompatibilityTests/Info.plist b/DarwinCompatibilityTests/Info.plist new file mode 100644 index 0000000000..6c40a6cd0c --- /dev/null +++ b/DarwinCompatibilityTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/TestFoundation/TestBundle.swift b/TestFoundation/TestBundle.swift index c4f08aba86..53ef7a2195 100644 --- a/TestFoundation/TestBundle.swift +++ b/TestFoundation/TestBundle.swift @@ -18,7 +18,16 @@ internal func testBundle() -> Bundle { +#if DARWIN_COMPATIBILITY_TESTS + for bundle in Bundle.allBundles { + if let bundleId = bundle.bundleIdentifier, bundleId == "org.swift.DarwinCompatibilityTests", bundle.resourcePath != nil { + return bundle + } + } + fatalError("Cant find test bundle") +#else return Bundle.main +#endif } class TestBundle : XCTestCase { @@ -88,14 +97,24 @@ class TestBundle : XCTestCase { let bundle = testBundle() // bundleIdentifier +#if DARWIN_COMPATIBILITY_TESTS + XCTAssertEqual("org.swift.DarwinCompatibilityTests", bundle.bundleIdentifier) +#else XCTAssertEqual("org.swift.TestFoundation", bundle.bundleIdentifier) - +#endif + // infoDictionary let info = bundle.infoDictionary XCTAssertNotNil(info) - XCTAssert("org.swift.TestFoundation" == info!["CFBundleIdentifier"] as! String) + +#if DARWIN_COMPATIBILITY_TESTS + XCTAssert("DarwinCompatibilityTests" == info!["CFBundleName"] as! String) + XCTAssert("org.swift.DarwinCompatibilityTests" == info!["CFBundleIdentifier"] as! String) +#else XCTAssert("TestFoundation" == info!["CFBundleName"] as! String) - + XCTAssert("org.swift.TestFoundation" == info!["CFBundleIdentifier"] as! String) +#endif + // localizedInfoDictionary XCTAssertNil(bundle.localizedInfoDictionary) // FIXME: Add a localized Info.plist for testing } @@ -204,6 +223,4 @@ class TestBundle : XCTestCase { XCTAssertThrowsError(try bundle!.preflight()) _cleanupPlayground(playground) } - - } diff --git a/TestFoundation/TestCodable.swift b/TestFoundation/TestCodable.swift index 63d827183d..ce2480c5c3 100644 --- a/TestFoundation/TestCodable.swift +++ b/TestFoundation/TestCodable.swift @@ -561,6 +561,7 @@ class TestCodable : XCTestCase { ] func test_URLComponents_JSON() { +#if !DARWIN_COMPATIBILITY_TESTS // crashes on native Darwin for (components) in urlComponentsValues { do { try expectRoundTripEqualityThroughJSON(for: components) @@ -568,6 +569,7 @@ class TestCodable : XCTestCase { XCTFail("\(error)") } } +#endif } } diff --git a/TestFoundation/TestHTTPCookieStorage.swift b/TestFoundation/TestHTTPCookieStorage.swift index 493098a092..1c607d0196 100644 --- a/TestFoundation/TestHTTPCookieStorage.swift +++ b/TestFoundation/TestHTTPCookieStorage.swift @@ -244,7 +244,7 @@ class TestHTTPCookieStorage: XCTestCase { } func test_cookieInXDGSpecPath() { -#if !os(Android) +#if !os(Android) && !DARWIN_COMPATIBILITY_TESTS //Test without setting the environment variable let testCookie = HTTPCookie(properties: [ .name: "TestCookie0", diff --git a/TestFoundation/TestJSONEncoder.swift b/TestFoundation/TestJSONEncoder.swift index cfb2011045..1af4fbaf1c 100644 --- a/TestFoundation/TestJSONEncoder.swift +++ b/TestFoundation/TestJSONEncoder.swift @@ -105,19 +105,27 @@ class TestJSONEncoder : XCTestCase { } func test_encodingOutputFormattingSortedKeys() { + let expectedJSON = "{\"email\":\"appleseed@apple.com\",\"name\":\"Johnny Appleseed\"}".data(using: .utf8)! + let person = Person.testValue +#if os(OSX) || DARWIN_COMPATIBILITY_TESTS if #available(OSX 10.13, iOS 11.0, watchOS 4.0, tvOS 11.0, *) { - let expectedJSON = "{\"email\":\"appleseed@apple.com\",\"name\":\"Johnny Appleseed\"}".data(using: .utf8)! - let person = Person.testValue _testRoundTrip(of: person, expectedJSON: expectedJSON, outputFormatting: [.sortedKeys]) } +#else + _testRoundTrip(of: person, expectedJSON: expectedJSON, outputFormatting: [.sortedKeys]) +#endif } func test_encodingOutputFormattingPrettyPrintedSortedKeys() { + let expectedJSON = "{\n \"email\" : \"appleseed@apple.com\",\n \"name\" : \"Johnny Appleseed\"\n}".data(using: .utf8)! + let person = Person.testValue +#if os(OSX) || DARWIN_COMPATIBILITY_TESTS if #available(OSX 10.13, iOS 11.0, watchOS 4.0, tvOS 11.0, *) { - let expectedJSON = "{\n \"email\" : \"appleseed@apple.com\",\n \"name\" : \"Johnny Appleseed\"\n}".data(using: .utf8)! - let person = Person.testValue _testRoundTrip(of: person, expectedJSON: expectedJSON, outputFormatting: [.prettyPrinted, .sortedKeys]) } +#else + _testRoundTrip(of: person, expectedJSON: expectedJSON, outputFormatting: [.prettyPrinted, .sortedKeys]) +#endif } // MARK: - Date Strategy Tests @@ -151,19 +159,18 @@ class TestJSONEncoder : XCTestCase { } func test_encodingDateISO8601() { - if #available(OSX 10.12, iOS 10.0, watchOS 3.0, tvOS 10.0, *) { - let formatter = ISO8601DateFormatter() - formatter.formatOptions = .withInternetDateTime - - let timestamp = Date(timeIntervalSince1970: 1000) - let expectedJSON = "[\"\(formatter.string(from: timestamp))\"]".data(using: .utf8)! - - // We can't encode a top-level Date, so it'll be wrapped in an array. - _testRoundTrip(of: TopLevelArrayWrapper(timestamp), - expectedJSON: expectedJSON, - dateEncodingStrategy: .iso8601, - dateDecodingStrategy: .iso8601) - } + let formatter = ISO8601DateFormatter() + formatter.formatOptions = .withInternetDateTime + + let timestamp = Date(timeIntervalSince1970: 1000) + let expectedJSON = "[\"\(formatter.string(from: timestamp))\"]".data(using: .utf8)! + + // We can't encode a top-level Date, so it'll be wrapped in an array. + _testRoundTrip(of: TopLevelArrayWrapper(timestamp), + expectedJSON: expectedJSON, + dateEncodingStrategy: .iso8601, + dateDecodingStrategy: .iso8601) + } func test_encodingDateFormatted() { diff --git a/TestFoundation/TestJSONSerialization.swift b/TestFoundation/TestJSONSerialization.swift index bb96e5db69..2fdceba30e 100644 --- a/TestFoundation/TestJSONSerialization.swift +++ b/TestFoundation/TestJSONSerialization.swift @@ -1415,6 +1415,7 @@ extension TestJSONSerialization { } func test_jsonObjectToOutputStreamInsufficientBuffer() { +#if !DARWIN_COMPATIBILITY_TESTS // Hangs let dict = ["a":["b":1]] let buffer = Array(repeating: 0, count: 10) let outputStream = OutputStream(toBuffer: UnsafeMutablePointer(mutating: buffer), capacity: buffer.count) @@ -1428,6 +1429,7 @@ extension TestJSONSerialization { } catch { XCTFail("Error occurred while writing to stream") } +#endif } func test_booleanJSONObject() { @@ -1469,18 +1471,23 @@ extension TestJSONSerialization { XCTFail("Failed during serialization") } } - - func test_serializeSortedKeys() { - var dict: [String: Any] - - dict = ["z": 1, "y": 1, "x": 1, "w": 1, "v": 1, "u": 1, "t": 1, "s": 1, "r": 1, "q": 1, ] - XCTAssertEqual(try trySerialize(dict, options: .sortedKeys), "{\"q\":1,\"r\":1,\"s\":1,\"t\":1,\"u\":1,\"v\":1,\"w\":1,\"x\":1,\"y\":1,\"z\":1}") - - dict = ["aaaa": 1, "aaa": 1, "aa": 1, "a": 1] - XCTAssertEqual(try trySerialize(dict, options: .sortedKeys), "{\"a\":1,\"aa\":1,\"aaa\":1,\"aaaa\":1}") - dict = ["c": ["c":1,"b":1,"a":1],"b":["c":1,"b":1,"a":1],"a":["c":1,"b":1,"a":1]] - XCTAssertEqual(try trySerialize(dict, options: .sortedKeys), "{\"a\":{\"a\":1,\"b\":1,\"c\":1},\"b\":{\"a\":1,\"b\":1,\"c\":1},\"c\":{\"a\":1,\"b\":1,\"c\":1}}") + func test_serializeSortedKeys() { + let dict1 = ["z": 1, "y": 1, "x": 1, "w": 1, "v": 1, "u": 1, "t": 1, "s": 1, "r": 1, "q": 1, ] + let dict2 = ["aaaa": 1, "aaa": 1, "aa": 1, "a": 1] + let dict3 = ["c": ["c":1,"b":1,"a":1],"b":["c":1,"b":1,"a":1],"a":["c":1,"b":1,"a":1]] + +#if DARWIN_COMPATIBILITY_TESTS + if #available(OSX 10.13, *) { + XCTAssertEqual(try trySerialize(dict1, options: .sortedKeys), "{\"q\":1,\"r\":1,\"s\":1,\"t\":1,\"u\":1,\"v\":1,\"w\":1,\"x\":1,\"y\":1,\"z\":1}") + XCTAssertEqual(try trySerialize(dict2, options: .sortedKeys), "{\"a\":1,\"aa\":1,\"aaa\":1,\"aaaa\":1}") + XCTAssertEqual(try trySerialize(dict3, options: .sortedKeys), "{\"a\":{\"a\":1,\"b\":1,\"c\":1},\"b\":{\"a\":1,\"b\":1,\"c\":1},\"c\":{\"a\":1,\"b\":1,\"c\":1}}") + } +#else + XCTAssertEqual(try trySerialize(dict1, options: .sortedKeys), "{\"q\":1,\"r\":1,\"s\":1,\"t\":1,\"u\":1,\"v\":1,\"w\":1,\"x\":1,\"y\":1,\"z\":1}") + XCTAssertEqual(try trySerialize(dict2, options: .sortedKeys), "{\"a\":1,\"aa\":1,\"aaa\":1,\"aaaa\":1}") + XCTAssertEqual(try trySerialize(dict3, options: .sortedKeys), "{\"a\":{\"a\":1,\"b\":1,\"c\":1},\"b\":{\"a\":1,\"b\":1,\"c\":1},\"c\":{\"a\":1,\"b\":1,\"c\":1}}") +#endif } func test_serializePrettyPrinted() { diff --git a/TestFoundation/TestNSArray.swift b/TestFoundation/TestNSArray.swift index e1dcf01b0d..3a4a416293 100644 --- a/TestFoundation/TestNSArray.swift +++ b/TestFoundation/TestNSArray.swift @@ -559,8 +559,21 @@ class TestNSArray : XCTestCase { try FileManager.default.createDirectory(atPath: tempDir, withIntermediateDirectories: false, attributes: nil) let testFile = tempDir + "/readWriteURL.txt" let url = URL(fileURLWithPath: testFile) + let data2: NSArray +#if DARWIN_COMPATIBILITY_TESTS + if #available(OSX 10.13, *) { + try data.write(to: url) + data2 = try NSArray(contentsOf: url, error: ()) + } else { + guard data.write(toFile: testFile, atomically: true) else { + throw NSError(domain: NSCocoaErrorDomain, code: CocoaError.fileWriteUnknown.rawValue) + } + data2 = NSArray(contentsOfFile: testFile)! + } +#else try data.write(to: url) - let data2 = try NSArray(contentsOf: url, error: ()) + data2 = try NSArray(contentsOf: url, error: ()) +#endif XCTAssertEqual(data, data2) removeTestFile(testFile) } catch let e { diff --git a/TestFoundation/TestNSData.swift b/TestFoundation/TestNSData.swift index 221daa35e8..be708b881c 100644 --- a/TestFoundation/TestNSData.swift +++ b/TestFoundation/TestNSData.swift @@ -3999,8 +3999,9 @@ extension TestNSData { } XCTAssertEqual(data[data.startIndex.advanced(by: 1)], 0xFF) } - + func test_validateMutation_slice_mutableBacking_withUnsafeMutableBytes_lengthLessThanLowerBound() { +#if !DARWIN_COMPATIBILITY_TESTS // Crashes on native Darwin var base = Data(referencing: NSData(bytes: "hello world", length: 11)) base.append(contentsOf: [1, 2, 3, 4, 5, 6]) var data = base[4..<6] @@ -4008,8 +4009,9 @@ extension TestNSData { ptr.advanced(by: 1).pointee = 0xFF } XCTAssertEqual(data[data.startIndex.advanced(by: 1)], 0xFF) +#endif } - + func test_validateMutation_slice_customBacking_withUnsafeMutableBytes_lengthLessThanLowerBound() { var data = Data(referencing: AllOnesImmutableData(length: 10))[4..<6] data.withUnsafeMutableBytes { (ptr: UnsafeMutablePointer) in @@ -4017,8 +4019,9 @@ extension TestNSData { } XCTAssertEqual(data[data.startIndex.advanced(by: 1)], 0xFF) } - + func test_validateMutation_slice_customMutableBacking_withUnsafeMutableBytes_lengthLessThanLowerBound() { +#if !DARWIN_COMPATIBILITY_TESTS // Crashes on native Darwin var base = Data(referencing: AllOnesData(length: 1)) base.count = 10 var data = base[4..<6] @@ -4026,6 +4029,7 @@ extension TestNSData { ptr.advanced(by: 1).pointee = 0xFF } XCTAssertEqual(data[data.startIndex.advanced(by: 1)], 0xFF) +#endif } } diff --git a/TestFoundation/TestNSKeyedArchiver.swift b/TestFoundation/TestNSKeyedArchiver.swift index 92de26099f..8020dffc4c 100644 --- a/TestFoundation/TestNSKeyedArchiver.swift +++ b/TestFoundation/TestNSKeyedArchiver.swift @@ -285,18 +285,21 @@ class TestNSKeyedArchiver : XCTestCase { let s1 = String(cString: charPtr) let s2 = String(cString: expectedCharPtr!) - + +#if !DEPLOYMENT_RUNTIME_OBJC // On Darwin decoded strings would belong to the autorelease pool, but as we don't have // one in SwiftFoundation let's explicitly deallocate it here. expectedCharPtr!.deallocate() - +#endif return s1 == s2 }) } func test_archive_user_class() { +#if !DARWIN_COMPATIBILITY_TESTS // Causes SIGABRT let userClass = UserClass(1234) test_archive(userClass) +#endif } func test_archive_ns_user_class() { diff --git a/TestFoundation/TestNSLock.swift b/TestFoundation/TestNSLock.swift index 06562b3770..5334ff0cd8 100644 --- a/TestFoundation/TestNSLock.swift +++ b/TestFoundation/TestNSLock.swift @@ -15,8 +15,6 @@ import SwiftFoundation import SwiftXCTest #endif -import CoreFoundation - class TestNSLock: XCTestCase { static var allTests: [(String, (TestNSLock) -> () throws -> Void)] { return [ @@ -32,7 +30,7 @@ class TestNSLock: XCTestCase { let condition = NSCondition() let lock = NSLock() - func test(waitTime: CFTimeInterval, shouldLock: Bool) -> Bool { + func test(waitTime: TimeInterval, shouldLock: Bool) -> Bool { let locked = lock.lock(before: Date.init(timeIntervalSinceNow: waitTime)) if locked { lock.unlock() diff --git a/TestFoundation/TestNSProgressFraction.swift b/TestFoundation/TestNSProgressFraction.swift index a1e8435ac5..7dcdd65990 100644 --- a/TestFoundation/TestNSProgressFraction.swift +++ b/TestFoundation/TestNSProgressFraction.swift @@ -15,6 +15,7 @@ import SwiftFoundation import SwiftXCTest #endif +#if !DARWIN_COMPATIBILITY_TESTS class TestProgressFraction : XCTestCase { static var allTests: [(String, (TestProgressFraction) -> () throws -> Void)] { return [ @@ -159,4 +160,5 @@ class TestProgressFraction : XCTestCase { XCTAssertFalse(r.overflowed) } } +#endif diff --git a/TestFoundation/TestThread.swift b/TestFoundation/TestThread.swift index 6f09c8d6ee..ec6b3fc2a8 100644 --- a/TestFoundation/TestThread.swift +++ b/TestFoundation/TestThread.swift @@ -16,7 +16,10 @@ import SwiftXCTest #endif -import CoreFoundation +#if !(os(OSX) || os(iOS)) + import CoreFoundation +#endif + class TestThread : XCTestCase { static var allTests: [(String, (TestThread) -> () throws -> Void)] { diff --git a/TestFoundation/TestUserDefaults.swift b/TestFoundation/TestUserDefaults.swift index 86a2e978bc..d05e68b087 100644 --- a/TestFoundation/TestUserDefaults.swift +++ b/TestFoundation/TestUserDefaults.swift @@ -178,12 +178,14 @@ class TestUserDefaults : XCTestCase { } func test_setValue_String() { +#if !DARWIN_COMPATIBILITY_TESTS // Works if run on its own, hangs if all tests in class are run let defaults = UserDefaults.standard // Register a String value. UserDefaults.string(forKey:) is supposed to return the String defaults.set("hello", forKey: "key1") XCTAssertEqual(defaults.string(forKey: "key1"), "hello") +#endif } func test_setValue_NSURL() { @@ -196,12 +198,14 @@ class TestUserDefaults : XCTestCase { } func test_setValue_URL() { +#if !DARWIN_COMPATIBILITY_TESTS // Works if run on its own, hangs if all tests in class are run let defaults = UserDefaults.standard // Set a URL value. UserDefaults.url(forKey:) is supposed to return the URL defaults.set(URL(fileURLWithPath: "/hello/world"), forKey: "key1") XCTAssertEqual(defaults.url(forKey: "key1"), URL(fileURLWithPath: "/hello/world")) +#endif } func test_setValue_NSData() { diff --git a/TestFoundation/TestXMLParser.swift b/TestFoundation/TestXMLParser.swift index b08f0b3682..07b5d1e21d 100644 --- a/TestFoundation/TestXMLParser.swift +++ b/TestFoundation/TestXMLParser.swift @@ -16,8 +16,6 @@ import SwiftXCTest #endif -class OptionalParserConformance: XMLParserDelegate {} - enum XMLParserDelegateEvent { case startDocument case endDocument @@ -49,7 +47,7 @@ extension XMLParserDelegateEvent: Equatable { } -class XMLParserDelegateEventStream: XMLParserDelegate { +class XMLParserDelegateEventStream: NSObject, XMLParserDelegate { var events: [XMLParserDelegateEvent] = [] func parserDidStartDocument(_ parser: XMLParser) {