Commits

Brian Gesiak committed 28f73058c1c
[tests] Use XCTMain() for Linux tests `XCTMain()` is the canonical entry point for XCTest on Linux. The continued development of swift-corelibs-xctest would be made simpler if each consumer used this entry point to run their unit tests. - Split XCTestCaseProvider out into its own package, which the tests depend upon. Each test makes explicit reference to XCTestCaseProvider, which means it must be defined on both (1) Linux and (2) OS X, and it must be defined on OS X whether running the tests via (2a) `Utilities/bootstrap` or via (2b) the Xcode project. Test dependencies defined in `Utilities/bootstrap` take care of 1, 2, and 2a. - Add an XCTestCaseProvider target to the Xcode project, which takes care of item 2b from the bullet point above. - Also define XCTMain() on OS X in XCTestCaseProvider. This is because `Utilities/bootstrap` compiles test packages' main.swift files, regardless of whether they are ever executed. These files refer to `XCTMain()` (so we need to define it), but it is never run (so its implementation raises a fatal error).