Skip to content

Commit 47282fa

Browse files
ci: try using nextest
1 parent 8ba54d4 commit 47282fa

2 files changed

Lines changed: 24 additions & 13 deletions

File tree

.config/nextest.toml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[test-groups]
2-
run-in-isolation = { max-threads = 32 }
2+
run-in-isolation = { max-threads = 32 }
33
# these are tests that must not run with other tests concurrently. All tests in
44
# this group can take up at most 32 threads among them, but each one requiring
55
# 16 threads also. The effect should be that tests run isolated.
@@ -16,3 +16,15 @@ threads-required = 32
1616

1717
[profile.default]
1818
slow-timeout = { period = "10s", terminate-after = 3 }
19+
20+
# Wine tests run under Wine emulation which is significantly slower than native.
21+
# Give tests more time to complete.
22+
[profile.wine]
23+
slow-timeout = { period = "60s", terminate-after = 5 }
24+
# Run tests sequentially - Wine networking can be flaky with concurrent tests.
25+
test-threads = 1
26+
27+
[[profile.wine.overrides]]
28+
filter = 'test(::run_in_isolation::)'
29+
test-group = 'run-in-isolation'
30+
threads-required = 32

.github/workflows/wine.yaml

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -42,20 +42,19 @@ jobs:
4242
- name: Install mingw-w64
4343
run: sudo apt-get install -y mingw-w64
4444

45+
- name: Install cargo-nextest
46+
uses: taiki-e/install-action@nextest
47+
4548
- name: Build tests
4649
# Release mode required - debug builds exceed mingw's export ordinal limit (~65k symbols)
4750
run: cargo build --target x86_64-pc-windows-gnu --tests -p iroh --release
4851

49-
- name: List available tests
50-
run: |
51-
for exe in target/x86_64-pc-windows-gnu/release/deps/iroh-*.exe; do
52-
echo "=== Tests in $exe ==="
53-
wine "$exe" --list
54-
done
55-
5652
- name: Run tests under Wine
57-
run: |
58-
for exe in target/x86_64-pc-windows-gnu/release/deps/iroh-*.exe; do
59-
echo "=== Running $exe ==="
60-
wine "$exe" --test-threads=1
61-
done
53+
env:
54+
CARGO_TARGET_X86_64_PC_WINDOWS_GNU_RUNNER: wine
55+
run: >
56+
cargo nextest run
57+
--target x86_64-pc-windows-gnu
58+
--profile wine
59+
--release
60+
-p iroh

0 commit comments

Comments
 (0)