reload_cfg::test::watch_single_file can be flaky?
I was working on some other branch, and got a test failure that I'm sure is spurious.
My laptop was heavily loaded at the time. I suspect !2387 (merged) may be implicated.
zealot:arti> nailing-cargo -C nextest run --locked --workspace --all-features
nailing-cargo: out-of-tree, git, building in: `/home/ian/Rustup/Arti/Build/arti'
nailing-cargo: using really to run as user `rustcargo'
nailing-cargo: *WARNING* cwd is not in Cargo.nail thbough it has Cargo.toml!
nailing-cargo: nailed (0 manifests, 0 packages)
nailing-cargo: invoking: cargo nextest run --locked --workspace --all-features
Compiling tor-bytes v0.22.0 (/volatile/rustcargo/Rustup/Arti/arti/crates/tor-bytes)
...
Compiling arti-testing v0.17.0 (/volatile/rustcargo/Rustup/Arti/arti/crates/arti-testing)
Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 53s
Starting 1331 tests across 85 binaries (4 skipped)
PASS [ 0.007s] arti cfg::test::articonfig_proxy
...
PASS [ 0.010s] arti-bench::bin/arti-bench test::test_iso_tracker
FAIL [ 0.021s] arti reload_cfg::test::watch_single_file
--- STDOUT: arti reload_cfg::test::watch_single_file ---
running 1 test
test arti::reload_cfg::test::watch_single_file: TEST_TEMP_RETAIN not enabled, using ephemeral temp dir
test reload_cfg::test::watch_single_file ... FAILED
failures:
failures:
reload_cfg::test::watch_single_file
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 25 filtered out; finished in 0.01s
--- STDERR: arti reload_cfg::test::watch_single_file ---
thread 'reload_cfg::test::watch_single_file' panicked at crates/arti/src/reload_cfg.rs:418:13:
assertion `left == right` failed
left: ArtiConfig { application: ApplicationConfig { watch_configuration: true, permit_debugging: false, allow_running_as_root: false }, proxy: ProxyConfig { socks_listen: Listen([Localhost(9150)]), socks_port: (), dns_listen: Listen([]), dns_port: () }, logging: LoggingConfig { console: Some("info"), journald: None, files: [], log_sensitive_information: false, time_granularity: 1s }, rpc: RpcConfig { rpc_listen: Some(CfgPath(Shell("~/.local/run/arti/SOCKET"))) }, system: SystemConfig { max_files: 16384 }, onion_services: {} }
right: ArtiConfig { application: ApplicationConfig { watch_configuration: true, permit_debugging: false, allow_running_as_root: false }, proxy: ProxyConfig { socks_listen: Listen([Localhost(9150)]), socks_port: (), dns_listen: Listen([]), dns_port: () }, logging: LoggingConfig { console: Some("info"), journald: None, files: [], log_sensitive_information: true, time_granularity: 1s }, rpc: RpcConfig { rpc_listen: Some(CfgPath(Shell("~/.local/run/arti/SOCKET"))) }, system: SystemConfig { max_files: 16384 }, onion_services: {} }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Canceling due to test failure: 7 tests still running
PASS [ 0.022s] arti-client address::test::bad_ports
PASS [ 0.023s] arti-client address::test::convert_dangerous
PASS [ 0.021s] arti-client address::test::convert_safe
PASS [ 0.073s] arti cfg::test::exhaustive
PASS [ 0.023s] arti-client address::test::is_ip_address
PASS [ 0.061s] arti::cli_tests cli_tests
PASS [ 0.103s] arti cfg::test::default_config
PASS [ 0.069s] arti reload_cfg::test::watch_multiple
------------
Summary [ 0.109s] 32/1331 tests run: 31 passed, 1 failed, 0 skipped
FAIL [ 0.021s] arti reload_cfg::test::watch_single_file
error: test run failed
nailing-cargo: really failed (exit status 25600)
nailing-cargo: unnailed. status 100.