-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Integration with swift-testing #7047
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@swift-ci please test |
@swift-ci please test |
@swift-ci please test Linux |
@swift-ci please test |
@swift-ci please test Windows |
170b023
to
2fe0bbb
Compare
@swift-ci please test |
@swift-ci please test windows |
@swift-ci please test |
@swift-ci please test Windows |
@swift-ci please test |
@swift-ci please test Windows |
@swift-ci please test |
@swift-ci please test Windows |
1 similar comment
@swift-ci please test Windows |
@swift-ci please test |
@swift-ci please test Windows |
3 similar comments
@swift-ci please test Windows |
@swift-ci please test Windows |
@swift-ci please test Windows |
ccda01c
to
b480d3c
Compare
@swift-ci please test |
@swift-ci please test Windows |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
971f0d5
to
f0e2a05
Compare
@swift-ci please test |
@swift-ci test windows |
f0e2a05
to
014d8be
Compare
@swift-ci please test |
@swift-ci please test Windows |
@swift-ci please test |
@swift-ci please test Windows |
014d8be
to
07fdd30
Compare
This PR sets up initial integration with swift-testing. It plumbs through the concept of "testing library" from `SwiftTestTool` down to `BuildOperationBuildSystemDelegateHandler`. Developers can opt into support for swift-testing by passing `--enable-experimental-swift-testing`. This causes the package manager to perform a _separate_ build of applicable test targets using swift-testing instead of XCTest. If XCTest remains enabled (i.e. by not also explicitly passing `--disable-xctest`), then tests from both libraries can be run. At build time, the package manager will now (when opted in) synthesize a main function for the binary that calls a known entry point function in swift-testing. On Darwin, the build flow for XCTest-based tests differs from that on Linux (corelibs-xctest); swift-testing's build flow is very similar to the corelibs-xctest flow and uses most of the same circuitry. A future area of exploration for us may be to adopt this flow even when using XCTest on Darwin, but it's not in the scope of our work right now. swift-testing is responsible for interpreting any additional arguments passed to it such as `--filter`; this support has not been implemented yet and will be built up over time.
07fdd30
to
00f0359
Compare
@swift-ci please test |
@swift-ci please test Windows |
@swift-ci please test windows |
@swift-ci please test macOS |
1 similar comment
@swift-ci please test macOS |
We now have functional support for swift-testing in Swift Package Manager (as of swiftlang/swift-package-manager#7047). We should update our documentation: - Point developers to the main branch instead of 5.10 again; - Show developers how to invoke `swift test` in a way that triggers swift-testing; and - Show developers how to use `XCTestScaffold` _only_ when using an older toolchain (with the appropriate caveats and nuances emphasized.) Resolves #126.
* Update Getting Started docs to use Swift main branch features We now have functional support for swift-testing in Swift Package Manager (as of swiftlang/swift-package-manager#7047). We should update our documentation: - Point developers to the main branch instead of 5.10 again; - Show developers how to invoke `swift test` in a way that triggers swift-testing; and - Show developers how to use `XCTestScaffold` _only_ when using an older toolchain (with the appropriate caveats and nuances emphasized.) Resolves #126.
This PR sets up initial integration with swift-testing. It plumbs through the concept of "testing library" from
SwiftTestTool
down toBuildOperationBuildSystemDelegateHandler
.Developers can opt into support for swift-testing by passing
--enable-experimental-swift-testing
. This causes the package manager to perform a separate build of applicable test targets using swift-testing instead of XCTest. If XCTest remains enabled (i.e. by not also explicitly passing--disable-xctest
), then tests from both libraries can be run.At build time, the package manager will now (when opted in) synthesize a main function for the binary that calls a known entry point function in swift-testing. On Darwin, the build flow for XCTest-based tests differs from that on Linux (corelibs-xctest); swift-testing's build flow is very similar to the corelibs-xctest flow and uses most of the same circuitry. A future area of exploration for us may be to adopt this flow even when using XCTest on Darwin, but it's not in the scope of our work right now.
swift-testing is responsible for interpreting any additional arguments passed to it such as
--filter
; this support has not been implemented yet and will be built up over time.Example command to trigger running swift-testing's self-hosted tests (prior to an updated toolchain):
Resolves #7027.
Resolves rdar://114997435.