@@ -269,7 +269,7 @@ jobs:
269
269
py -3 test\\fuzz\\test_runner.py --par $NUMBER_OF_PROCESSORS --loglevel DEBUG "${RUNNER_TEMP}\qa-assets\fuzz_corpora"
270
270
271
271
windows-cross :
272
- name : ' Linux->Windows cross, unit tests, no gui tests, no functional tests'
272
+ name : ' Linux->Windows cross, no tests'
273
273
runs-on : ubuntu-latest
274
274
if : ${{ vars.SKIP_BRANCH_PUSH != 'true' || github.event_name == 'pull_request' }}
275
275
@@ -312,6 +312,68 @@ jobs:
312
312
path : ${{ env.CCACHE_DIR }}
313
313
key : ${{ github.job }}-ccache-${{ github.run_id }}
314
314
315
+ - name : Upload built executables
316
+ uses : actions/upload-artifact@v4
317
+ with :
318
+ name : x86_64-w64-mingw32-executables-${{ github.run_id }}
319
+ path : |
320
+ ${{ env.BASE_BUILD_DIR }}/bin/*.exe
321
+ ${{ env.BASE_BUILD_DIR }}/src/secp256k1/bin/*.exe
322
+ ${{ env.BASE_BUILD_DIR }}/src/univalue/*.exe
323
+ ${{ env.BASE_BUILD_DIR }}/test/config.ini
324
+
325
+ windows-native-test :
326
+ name : ' Windows, test cross-built'
327
+ runs-on : windows-2022
328
+ needs : windows-cross
329
+
330
+ env :
331
+ PYTHONUTF8 : 1
332
+ TEST_RUNNER_TIMEOUT_FACTOR : 40
333
+
334
+ steps :
335
+ - name : Checkout
336
+ uses : actions/checkout@v4
337
+
338
+ - name : Download built executables
339
+ uses : actions/download-artifact@v4
340
+ with :
341
+ name : x86_64-w64-mingw32-executables-${{ github.run_id }}
342
+
343
+ - name : Run bitcoind.exe
344
+ run : ./bin/bitcoind.exe -version
345
+
346
+ - name : Run unit tests
347
+ run : |
348
+ ./bin/test_bitcoin.exe -l test_suite
349
+ ./src/secp256k1/bin/exhaustive_tests.exe
350
+ ./src/secp256k1/bin/noverify_tests.exe
351
+ ./src/secp256k1/bin/tests.exe
352
+ ./src/univalue/object.exe
353
+ ./src/univalue/unitester.exe
354
+
355
+ - name : Run benchmarks
356
+ run : ./bin/bench_bitcoin.exe -sanity-check -priority-level=high
357
+
358
+ - name : Adjust paths in test/config.ini
359
+ shell : pwsh
360
+ run : |
361
+ (Get-Content "test/config.ini") -replace '(?<=^SRCDIR=).*', '${{ github.workspace }}' -replace '(?<=^BUILDDIR=).*', '${{ github.workspace }}' -replace '(?<=^RPCAUTH=).*', '${{ github.workspace }}/share/rpcauth/rpcauth.py' | Set-Content "test/config.ini"
362
+ Get-Content "test/config.ini"
363
+
364
+ - name : Run util tests
365
+ run : py -3 test/util/test_runner.py
366
+
367
+ - name : Run rpcauth test
368
+ run : py -3 test/util/rpcauth-test.py
369
+
370
+ - name : Run functional tests
371
+ env :
372
+ # TODO: Fix the excluded tests and re-enable them.
373
+ EXCLUDE : ' --exclude wallet_migration.py,wallet_multiwallet.py'
374
+ TEST_RUNNER_EXTRA : ${{ github.event_name != 'pull_request' && '--extended' || '' }}
375
+ run : py -3 test/functional/test_runner.py --jobs $NUMBER_OF_PROCESSORS --ci --quiet --tmpdirprefix="$RUNNER_TEMP" --combinedlogslen=99999999 --timeout-factor=$TEST_RUNNER_TIMEOUT_FACTOR $EXCLUDE $TEST_RUNNER_EXTRA
376
+
315
377
asan-lsan-ubsan-integer-no-depends-usdt :
316
378
name : ' ASan + LSan + UBSan + integer, no depends, USDT'
317
379
runs-on : ubuntu-24.04 # has to match container in ci/test/00_setup_env_native_asan.sh for tracing tools
0 commit comments