Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
a487b50
feat(xcresult): resolve test files from declarations, not failures
dfrankland Aug 29, 2026
dfbe20b
fix(xcresult): stop dropping nested test suites
dfrankland Aug 29, 2026
8b2e6ab
test(xcresult): cover a nested suite and passing tests with a real bu…
dfrankland Aug 29, 2026
f9776f7
test(xcresult): run every bundle through the declaration path as a re…
dfrankland Aug 29, 2026
780afb2
fix(xcresult): read a copy of the bundle instead of migrating the cal…
dfrankland Aug 29, 2026
b2a5e55
feat(xcresult): break a declaration collision with the target that ra…
dfrankland Aug 31, 2026
e95a0e9
fix(xcresult): attribute an inherited test to the suite that ran it
dfrankland Sep 3, 2026
6194484
test(xcresult): test the public surface, and delete what fixtures alr…
dfrankland Sep 3, 2026
64ee56d
test(xcresult): move the new fixtures' parity cases out of xcresult.rs
dfrankland Sep 3, 2026
8d26989
fix(xcresult): read the caller's bundle instead of copying every one
dfrankland Sep 4, 2026
064ae1c
test(xcresult): move this PR's declaration tests out of xcresult.rs
dfrankland Sep 4, 2026
215a6dd
test(xcresult): collapse the declaration tests that were the same test
dfrankland Sep 4, 2026
4695f84
fix(xcresult): gate the macOS-only test imports off other platforms
dfrankland Sep 9, 2026
43dabdd
fix(xcresult): attribute an inherited test to the class that declares it
dfrankland Sep 10, 2026
9013dbf
perf(xcresult): stream each source file to the server instead of hold…
dfrankland Sep 10, 2026
f581e0c
refactor(xcresult): find a language server without requiring xcrun
dfrankland Aug 31, 2026
2a30a49
feat(xcresult): resolve declarations from `swift test --xunit-output`
dfrankland Aug 31, 2026
a903cbf
test(xcresult): pin parity between the xcresult and swift test inputs
dfrankland Aug 31, 2026
2444234
test(xcresult): pin that argument labels are part of a test's identity
dfrankland Aug 31, 2026
5097be1
test(xcresult): cover an inherited XCTest method, which has no labels…
dfrankland Aug 31, 2026
a00c5af
test(xcresult): give CI the Swift toolchain these tests actually need
dfrankland Sep 9, 2026
fcc718c
feat(cli): add --swift-test-xunit-paths and fill in declared files
dfrankland Aug 31, 2026
318336d
fix(cli): keep the xcresult gate on the xcresult handler
dfrankland Sep 9, 2026
4d53401
fix(xcresult): fence the id-comparison block like every other one in …
dfrankland Sep 9, 2026
4dd0b2d
Merging 4d534018e6018b47e2502244a783e63d1f5e36dc into trunk-temp/pr-1…
trunk-io[bot] Sep 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -198,10 +198,29 @@ jobs:
exit 1
fi

# The declaration path finds `sourcekit-lsp` on `PATH`, which is where every documented
# Linux install puts it. The Ubuntu runner image is the exception: it symlinks only
# `swift` and `swiftc` into /usr/local/bin and leaves the rest of the toolchain reachable
# only through $SWIFT_PATH. Without this the swift-test-xunit tests find no server.
- name: Put the Swift toolchain on PATH
if: ${{ startsWith(matrix.platform.os-name, 'linux-') }}
shell: bash
run: |
if [[ -z "${SWIFT_PATH:-}" ]]; then
echo "SWIFT_PATH is unset - the runner image no longer ships Swift where expected" >&2
exit 1
fi
echo "$SWIFT_PATH" >> "$GITHUB_PATH"

- name: Run tests
uses: ./.github/actions/run_tests
id: tests
continue-on-error: true
env:
# macOS finds the server through `xcrun`, and the step above puts it on `PATH` for
# Linux -- so anywhere but the self-hosted Windows runner, which has no Swift at all,
# a missing server means the environment broke rather than that these should skip.
REQUIRE_LANGUAGE_SERVER: ${{ matrix.platform.os-name != 'windows-x86_64' && '1' || '' }}
with:
target: ${{ matrix.platform.target }}
codecov-token: ${{ secrets.CODECOV_TOKEN }}
Expand Down
97 changes: 95 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ more-asserts = "0.3.1"
predicates = "3.0.3"
pretty_assertions = "0.6"
prost-wkt-types = { version = "0.5.1", features = ["vendored-protox"] }
rstest = "0.26.1"

[build-dependencies]
vergen = { version = "8.3.1", features = [
Expand Down
Loading
Loading