462 Commits

Author SHA1 Message Date
Eric
5e009e310e
clean up 2025-02-07 15:20:16 +11:00
Eric
5c35d88e45
increase port gap by 1000 to avoid clashes in windows 2025-02-07 15:20:16 +11:00
Eric
3a80560e54
lock codex port selection in multinodesuites
Codex api/disc ports were clashing in windows because `lastUsedCodexApiPort` and `lastUsedCodeexDiscPort` were not locked when read and written, while client and provider nodes were started concurrently (async).
2025-02-07 15:20:16 +11:00
Eric
32c347b1d8
add test name to datadir path
avoids reusing datadirs between tests
2025-02-07 15:20:15 +11:00
Eric
7922f2e03b
update Make flag to simply debug
DEBUG -> enables DebugCodexNodes, DebugTestHarness, and ShowContinuousStatusUpdates
DEBUG_HARDHAT -> enables DebugHardhat
PARALLEL -> enables EnableParallelTests

Additionally, when DEBUG is enabled, all integration tests debug configs are enabled for Codex nodes, the Codex node output is printed with the test output (not interleaved), and the Codex node output is logged to file in `tests/integrations/logs/<starttime>__IntegrationTests/<integration_test_name>/<suite_name>/<testname>/<role>_<idx>.log`.
When DEBUG_HARDHAT is enabled, all hardhat output is printed with the test output (not interleaved), and the output is also written to a log file in `tests/integrations/logs/<starttime>__IntegrationTests/<integration_test_name>/hardhat.log
2025-02-07 15:20:15 +11:00
Eric
3ba79b8008
cancel processes soon
Windows really does not like to terminate processes, so if we try to cancel the process, we will hang in Windows.
2025-02-07 15:20:15 +11:00
Eric
27adfc21cf
fix: hardhot not being stopped when test times out 2025-02-07 15:20:15 +11:00
Eric
42152773ce
Allow parallel integration tests to be disabled
Disable with `make ENABLE_PARALLEL_TESTS=0 testIntegration`
2025-02-07 15:20:15 +11:00
Eric
9b1584d2aa
fix: use the last used port instead of the globally defined port 2025-02-07 15:20:14 +11:00
Eric
30a39130c8
Increase hardhat, codex api, and codex discovery ports for each subsequent test
Previously, each test would start with a port specified by a global const and overwritable using `define` cli flag. This seems to be causing some port clashes that `nextFreePort` is not picking up. Instead of relying on `nextFreePort`, do not reuse port numbers for any of the tests.
2025-02-07 15:20:14 +11:00
Eric
ecae5b0904
enable debug logs for testpurchasing since the failure in ci 2025-02-07 15:20:14 +11:00
Eric
a2b3fa525a
fix waiting for hardhat node process exit on windows 2025-02-07 15:20:14 +11:00
Eric
16e8fa8da9
handle cancellations for race and allFutures 2025-02-07 15:20:13 +11:00
Eric
3b09dee5e0
fix hardhat running on windows
Solution was two-fold:
1. Run the hardhat.cmd script instead of hardhat
2. Use the absolute path to the script executable instead of relative to the working directory
2025-02-07 15:20:13 +11:00
Eric
3b7e1b9fe7
Bubble errors from hardhat start
- bubble errors from hardhatprocess.start (instead of just logging)
- push raises: [] in all nodeprocess procs/methods to avoid leaking `Exception` exception types in method overrides
2025-02-07 15:20:13 +11:00
Eric
69f7b95629
nil check hardhat process before stopping 2025-02-07 15:20:13 +11:00
Eric
c4f045f103
fix exit status 2025-02-07 15:20:12 +11:00
Eric
2e8043c7a5
indicate with exit code 1 if the tests failed 2025-02-07 15:20:12 +11:00
Eric
45b74dc678
fix: pass show continuous updates into test manager instance 2025-02-07 15:20:12 +11:00
Eric
fa9b3a2c68
undo changes done for CI debugging 2025-02-07 15:20:10 +11:00
Eric
5e78f298be
temporarily remove testecbug as CI appears to be terminating after starting this process ( could just be that it's the last test) 2025-02-07 15:20:10 +11:00
Eric
52b42c76d9
Back off port inc in the hopes that this is causing issues with CI 2025-02-07 15:20:10 +11:00
Eric
b49bc0e2a1
formatting
trying to make nph happy
2025-02-07 15:20:09 +11:00
Eric
fb31c30113
formatting 2025-02-07 15:20:09 +11:00
Eric
7d3ef80255
clean up 2025-02-07 15:20:08 +11:00
Eric
78d8aca032
use tracked futures for showContinuousStatusUpdates 2025-02-07 15:20:08 +11:00
Eric
75bad0b741
formatting 2025-02-07 15:20:08 +11:00
Eric
1ed09bbd2e
format info blurbs 2025-02-07 15:20:07 +11:00
Eric
ac5b26218a
allow test parameters to be set from make testIntegration command 2025-02-07 15:20:07 +11:00
Eric
ba29beaab4
DIsable continuous updates by default (for CI) 2025-02-07 15:20:07 +11:00
Eric
7af807bb6c
fix rebase, formatting 2025-02-07 15:20:07 +11:00
Eric
14deded37c
fix rebase 2025-02-07 15:20:06 +11:00
Eric
9084871447
Use absolute path for binary when checking for existence 2025-02-07 15:20:06 +11:00
Eric
4ab145e554
fail early with message when hardhat binary not found
# Conflicts:
#	tests/integration/hardhatprocess.nim
2025-02-07 15:20:06 +11:00
Eric
a592df7398
remove unneeded sleep 2025-02-07 15:20:06 +11:00
Eric
860e9acb84
make onoutputline callback gcsafe 2025-02-07 15:20:06 +11:00
Eric
c0a63514b5
increase port distance per test run 2025-02-07 15:20:05 +11:00
Eric
77eed6ba72
add constructor param for continuous status update in terminal
# Conflicts:
#	tests/testIntegration.nim
2025-02-07 15:20:05 +11:00
Eric
dfefce68d1
fix nodeprocess not exiting 2025-02-07 15:20:05 +11:00
Eric
78956b1b50
ensure timeouts work
Work around the AsyncProcess timeout not working correctly
2025-02-07 15:20:05 +11:00
Eric
0751d76610
continually show test status updates
allows user to know which tests are still running
2025-02-07 15:20:05 +11:00
Eric
b29ee9efb7
cleanup
# Conflicts:
#	tests/testIntegration.nim
2025-02-07 15:20:04 +11:00
Eric
ef72240c9b
lock hardhat start to avoid intermittent start failures 2025-02-07 15:20:04 +11:00
Eric
3a2438b3ff
clean up 2025-02-07 15:20:04 +11:00
Eric
e32d5197af
print hardhat testmanager errors and hardhat stdout when there is an error starting hardhat 2025-02-07 15:20:04 +11:00
Eric
2e2f355471
hang manager off IntegrationTest, cleanup
- add a TestManager property to IntegrationTest, so manager does not need to be passed into all functions
- cleanup:
  - remove unneeded stopHardhat function
  - add hardhat instance to manager outside of startHardhat
2025-02-07 15:20:03 +11:00
Eric
66b5928017
pass hardhat port to ethersuite
# Conflicts:
#	tests/ethertest.nim
2025-02-07 15:20:03 +11:00
Eric
8e90a7836c
reinstate removed types 2025-02-07 15:20:03 +11:00
Eric
858980da77
Add additional logging info print outs
# Conflicts:
#	tests/integration/testcli.nim
2025-02-07 15:20:03 +11:00
Eric
2a215d5e19
expect process exit code
prevents showing error in the logs when an expected process exit code is encountered

# Conflicts:
#	tests/integration/testcli.nim
2025-02-07 15:20:03 +11:00