29
29
- id : rust-version
30
30
# On Windows run happens in a PowerShell, so start bash explicitly
31
31
run : bash -c 'echo "version=$(rustc --version)" >> $GITHUB_OUTPUT'
32
+ - name : Install cargo nextest
33
+ uses : taiki-e/install-action@v2
34
+ with :
35
+
36
+ - name : " Remove nextest CI report"
37
+ shell : bash
38
+ run : rm -rf target/nextest/ci/junit.xml
32
39
- name : Free Disk Space (Ubuntu only)
33
40
if : runner.os == 'Linux' && matrix.platform == 'ubuntu-latest'
34
41
@@ -42,19 +49,23 @@ jobs:
42
49
swap-storage : true
43
50
- name : " [${{ steps.rust-version.outputs.version}}] cargo build --workspace --verbose"
44
51
run : cargo build --workspace --verbose
45
- - name : " [${{ steps.rust-version.outputs.version}}] cargo test --workspace --verbose"
46
- run : cargo test --workspace --verbose
47
- env :
48
- RUST_BACKTRACE : 1
49
- - name : " [${{ steps.rust-version.outputs.version}}] cargo test --workspace --verbose -- --ignored --test-threads=1"
50
- run : cargo test --workspace --verbose -- --ignored --test-threads=1
52
+ - name : " [${{ steps.rust-version.outputs.version}}] cargo nextest run --workspace --profile ci --verbose"
53
+ # Run doc tests with cargo test and run tests with nextest and generate junit.xml
54
+ run : cargo test --workspace --doc --verbose && cargo nextest run --workspace --profile ci --verbose
51
55
env :
52
56
RUST_BACKTRACE : 1
53
- - name : " [${{ steps.rust-version.outputs.version}}] RUSTFLAGS=\" -C prefer-dynamic\" cargo test --package test_spawn_from_lib --features prefer-dynamic -- --ignored "
54
- run : cargo test --package test_spawn_from_lib --features prefer-dynamic -- --ignored
57
+ - name : " [${{ steps.rust-version.outputs.version}}] RUSTFLAGS=\" -C prefer-dynamic\" cargo nextest run --package test_spawn_from_lib --features prefer-dynamic"
58
+ run : cargo nextest run --package test_spawn_from_lib --features prefer-dynamic
55
59
env :
56
60
RUSTFLAGS : " -C prefer-dynamic"
57
61
RUST_BACKTRACE : 1
62
+ - name : Report Test Results
63
+ if : success() || failure()
64
+ uses : mikepenz/action-junit-report@v4
65
+ with :
66
+ report_paths : " target/nextest/ci/junit.xml"
67
+ check_name : " [${{ matrix.platform }}:${{ matrix.rust_version }}] test report"
68
+ include_passed : true
58
69
59
70
ffi :
60
71
name : " FFI #${{ matrix.platform }} ${{ matrix.rust_version }}"
94
105
run : rustup install ${{ matrix.rust_version }} && rustup default ${{ matrix.rust_version }}
95
106
96
107
- id : rust-version
97
- run : echo "version=$(rustc --version)" >> $GITHUB_OUTPUT
108
+ # On Windows run happens in a PowerShell, so start bash explicitly
109
+ run : bash -c 'echo "version=$(rustc --version)" >> $GITHUB_OUTPUT'
98
110
99
111
- name : " Generate profiling FFI"
100
112
shell : bash
@@ -168,8 +180,9 @@ jobs:
168
180
with :
169
181
rust_version : cross-centos7
170
182
- run : cargo install cross || true
171
- - run : cross build --all
172
- - run : cross test --all
183
+ - run : cross build --workspace --target x86_64-unknown-linux-gnu
184
+ - run : cross test --workspace --target x86_64-unknown-linux-gnu -- --skip "::single_threaded_tests::"
185
+ - run : cross test --workspace --target x86_64-unknown-linux-gnu --exclude bin_tests -- --skip "::tests::" --skip "::api_tests::" --test-threads 1
173
186
174
187
ffi_bake :
175
188
strategy :
0 commit comments