@@ -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,69 @@ 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
+ shell : cmd
376
+ 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%
377
+
315
378
asan-lsan-ubsan-integer-no-depends-usdt :
316
379
name : ' ASan + LSan + UBSan + integer, no depends, USDT'
317
380
runs-on : ubuntu-24.04 # has to match container in ci/test/00_setup_env_native_asan.sh for tracing tools
0 commit comments