[INFO] fetching crate vpn-shroud 2.7.0...
[INFO] testing vpn-shroud-2.7.0 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate vpn-shroud 2.7.0 into /workspace/builds/worker-0-tc1/source
[INFO] removed /workspace/builds/worker-0-tc1/source/.cargo/config.toml
[INFO] started tweaking crates.io crate vpn-shroud 2.7.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate vpn-shroud 2.7.0
[INFO] tweaked toml for crates.io crate vpn-shroud 2.7.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate vpn-shroud 2.7.0 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate vpn-shroud 2.7.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zvariant_utils v4.0.0
[INFO] [stderr]   Downloaded zvariant_derive v5.14.0
[INFO] [stderr]   Downloaded zvariant v5.14.0
[INFO] [stderr]   Downloaded notify-rust v4.17.0
[INFO] [stderr]   Downloaded ksni v0.3.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192
[INFO] running `Command { std: "docker" "start" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling futures-core v0.3.33
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling futures-io v0.3.33
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling find-msvc-tools v0.1.10
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling nix v0.31.3
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling piper v0.2.5
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling cc v1.4.2
[INFO] [stderr]    Compiling rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling async-broadcast v0.7.2
[INFO] [stderr]    Compiling ordered-stream v0.2.0
[INFO] [stderr]    Compiling http v1.5.0
[INFO] [stderr]    Compiling uuid v1.24.0
[INFO] [stderr]    Compiling futures-task v0.3.33
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling base64 v0.23.1
[INFO] [stderr]    Compiling webpki-roots v1.0.9
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling ureq-proto v0.6.1
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling async-executor v1.14.0
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling mio v1.2.2
[INFO] [stderr]    Compiling socket2 v0.6.5
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling dbus v0.9.12
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling ctrlc v3.5.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling notify-rust v4.17.0
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.5
[INFO] [stderr]    Compiling async-signal v0.2.14
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling futures-macro v0.3.33
[INFO] [stderr]    Compiling futures-util v0.3.33
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling ureq v3.4.0
[INFO] [stderr]    Compiling zvariant_utils v4.0.0
[INFO] [stderr]    Compiling zcheapstr v1.1.0
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling zvariant_derive v5.14.0
[INFO] [stderr]    Compiling zvariant v5.14.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling zbus_names v4.3.4
[INFO] [stderr]    Compiling zbus_macros v5.19.0
[INFO] [stderr]    Compiling zbus v5.19.0
[INFO] [stderr]    Compiling ksni v0.3.6
[INFO] [stderr]    Compiling vpn-shroud v2.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 33s
[INFO] running `Command { std: "docker" "inspect" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling async-signal v0.2.14
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling zbus v5.19.0
[INFO] [stderr]    Compiling tokio-stream v0.1.19
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling ksni v0.3.6
[INFO] [stderr]    Compiling vpn-shroud v2.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 55.75s
[INFO] running `Command { std: "docker" "inspect" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.28s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/shroud-479535fc38e9600f)
[INFO] [stdout] 
[INFO] [stdout] running 383 tests
[INFO] [stdout] test cli::validation::tests::test_looks_like_injection ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_null_bytes_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_empty_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_valid ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_injection_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_case_insensitive ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_non_numeric_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_contains_shell_metacharacters ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_empty_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_shell_chars_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_zero_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_newlines_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_trims_whitespace ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_null_bytes_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_negative_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_real_world_names_accepted ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_too_long_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_valid ... ok
[INFO] [stdout] test config::settings::tests::test_headless_config_default ... ok
[INFO] [stdout] test config::settings::tests::test_dns_mode_default ... ok
[INFO] [stdout] test config::settings::tests::test_dns_mode_display ... ok
[INFO] [stdout] test config::settings::tests::test_killswitch_config_default ... ok
[INFO] [stdout] test config::settings::tests::test_config_default ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_too_long_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_sanitize_for_display ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_valid ... ok
[INFO] [stdout] test config::settings::tests::test_config_error_display ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_invalid ... ok
[INFO] [stdout] test config::settings::tests::test_dns_mode_serialize ... ok
[INFO] [stdout] test config::settings::tests::test_ipv6_mode_serialize ... ok
[INFO] [stdout] test config::settings::tests::test_load_returns_defaults_when_file_missing ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_too_large_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_config_partial_parse ... ok
[INFO] [stdout] test config::settings::tests::test_killswitch_config_roundtrip ... ok
[INFO] [stdout] test config::settings::tests::test_unknown_fields_ignored ... ok
[INFO] [stdout] test config::settings::tests::test_headless_config_serialize_roundtrip ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_injection ... ok
[INFO] [stdout] test config::settings::tests::test_validate_degraded_threshold_bounds ... ok
[INFO] [stdout] test config::settings::tests::test_save_atomic_no_temp_file_remains ... ok
[INFO] [stdout] test config::settings::tests::test_load_validated_rejects_invalid_config ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_endpoint_http_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_endpoint_https_ok ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_interval_too_high ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_endpoints_too_many ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_interval_too_low ... ok
[INFO] [stdout] test config::settings::tests::test_load_validated_returns_defaults_for_missing_file ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_valid ... ok
[INFO] [stdout] test config::settings::tests::test_validate_custom_doh_blocklist_valid ... ok
[INFO] [stdout] test config::settings::tests::test_validate_custom_doh_blocklist_non_ip_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_validate_custom_doh_blocklist_injection_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_config_serialize_deserialize ... ok
[INFO] [stdout] test config::settings::tests::test_validate_no_last_server ... ok
[INFO] [stdout] test config::settings::tests::test_validate_valid_last_server ... ok
[INFO] [stdout] test config::settings::tests::test_validate_reconnect_attempts_too_high ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_hostname_endpoints_are_never_flagged ... ok
[INFO] [stdout] test config::settings::tests::test_validate_valid_config ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_default_endpoints_contain_no_doh_provider_literal ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_detects_custom_blocklist_endpoint ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_detects_known_doh_provider_endpoint ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_bare_ipv6_is_not_truncated_at_colon ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_ipv4_literal_with_path ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_host_without_path ... ok
[INFO] [stdout] test config::settings::tests::test_validate_empty_last_server ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_interval_zero_ok ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_default_endpoints_are_not_doh_blocked ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_query_and_fragment_stripped ... ok
[INFO] [stdout] test health::checker::tests::test_config_with_single_endpoint ... ok
[INFO] [stdout] test health::checker::tests::test_config_clone ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_strips_port ... ok
[INFO] [stdout] test health::checker::tests::test_default_config_has_multiple_endpoints ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_strips_userinfo ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_missing_scheme_returns_none ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_plain_host ... ok
[INFO] [stdout] test health::checker::tests::test_degraded_threshold_boundary ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_cloudflare_trace ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_mixed ... ok
[INFO] [stdout] test health::checker::tests::test_default_impl ... ok
[INFO] [stdout] test health::checker::tests::test_degraded_counter_increments ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_cloudflare_trace_missing_ip ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_cloudflare_trace_ipv6 ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_garbage ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_bracketed_ipv6_with_port ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_empty_body ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_no_nameservers_unknown ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_public_leaks ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_private_secure ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_localhost_secure ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_html ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_result_equality ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_empty_unknown ... ok
[INFO] [stdout] test config::settings::tests::test_save_then_load_roundtrip ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_plain_text_ipv4 ... ok
[INFO] [stdout] test config::settings::tests::test_migration_from_version_0_adds_defaults ... ok
[INFO] [stdout] test config::settings::tests::test_load_with_invalid_toml_returns_defaults ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_plain_text_ipv6 ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_plain_text_trimmed ... ok
[INFO] [stdout] test health::checker::tests::test_health_checker_reset ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_custom ... ok
[INFO] [stdout] test config::settings::tests::test_save_creates_directory_and_writes_config ... ok
[INFO] [stdout] test health::checker::tests::test_failure_counter_increments ... ok
[INFO] [stdout] test health::checker::tests::test_failure_threshold_boundary ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_default_no_exit_ip ... ok
[INFO] [stdout] test health::checker::tests::test_health_result_equality ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_172_boundary ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_loopback ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_private ... ok
[INFO] [stdout] test health::checker::tests::test_health_result_clone ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_public_unsafe ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_multiple ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_default ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_with_exit_ip ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_dns_leak_check_default ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_no_nameservers ... ok
[INFO] [stdout] test config::settings::tests::test_save_sets_secure_permissions ... ok
[INFO] [stdout] test health::checker::tests::test_health_result_debug ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_with_comments ... ok
[INFO] [stdout] test health::checker::tests::test_reset_is_idempotent ... ok
[INFO] [stdout] test health::checker::tests::test_reset_clears_all_counters ... ok
[INFO] [stdout] test health::checker::tests::test_resume_clears_suspension ... ok
[INFO] [stdout] test health::checker::tests::test_suspend_expired_not_suspended ... ok
[INFO] [stdout] test health::checker::tests::test_suspend_sets_until ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_basic ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_empty ... ok
[INFO] [stdout] test health::tests::health_tests::test_custom_config ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_result_clone ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_result_variants ... ok
[INFO] [stdout] test health::tests::health_tests::test_default_config_values ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_checker_new ... ok
[INFO] [stdout] test health::checker::tests::test_resume_when_not_suspended ... ok
[INFO] [stdout] test health::tests::health_tests::test_latency_edge_cases ... ok
[INFO] [stdout] test health::checker::tests::test_suspend_preserves_counters ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_ipv6_private ... ok
[INFO] [stdout] test ipc::protocol::tests::test_command_serialize_connect ... ok
[INFO] [stdout] test health::tests::health_tests::test_degraded_threshold_logic ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_checker_with_config ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_error ... ok
[INFO] [stdout] test ipc::protocol::tests::test_command_descriptions ... ok
[INFO] [stdout] test ipc::protocol::tests::test_deserialize_empty_object ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_not_an_ip ... ok
[INFO] [stdout] test ipc::protocol::tests::test_deserialize_invalid_json ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_is_ok ... ok
[INFO] [stdout] test ipc::protocol::tests::test_command_deserialize_connect ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_is_not_ok_for_error ... ok
[INFO] [stdout] test ipc::protocol::tests::test_error_message_none_for_ok ... ok
[INFO] [stdout] test ipc::protocol::tests::test_error_message ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_ok ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_version_mismatch ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_hello_ok ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_disconnect ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_hello ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_killswitch_disable ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_list_with_filter ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_killswitch_enable ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_reconnect ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_ping ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_response_status ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_list_no_filter ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_response_connections ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_switch ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_pong ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_version_info ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_connect_empty ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_status ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_quit ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_version ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_list_invalid_type ... ok
[INFO] [stdout] test ipc::protocol::tests::test_socket_path_uses_xdg ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_connect_valid ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_list_no_type ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_other_commands ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_list_valid_type ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validation_hello_zero ... ok
[INFO] [stdout] test ipc::protocol::tests::test_vpn_connection_info_serialize ... ok
[INFO] [stdout] test ipc::protocol::tests::test_vpn_connection_info_roundtrip ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_switch_valid ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_switch_empty ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validation_hello_valid ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_fallback_constants_are_valid ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::masking::test_host_bits_are_cleared ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_accepts_link_local ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_accepts_unique_local_addresses ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_embedded_rule_fragments ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_ipv4_validator_does_not_accept_ipv6 ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_global_unicast ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::masking::test_full_prefix_is_identity ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_catch_all_and_overbroad_prefixes ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::masking::test_zero_prefix_yields_unspecified ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_malformed_input ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_valid_chain_names ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_max_length_chain ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_empty_chain ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_too_long_chain ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_ipv6_loopback ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_loopback ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_ipv6_public ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_link_local ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_chain_injection ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_public ... ok
[INFO] [stdout] test killswitch::rules::tests::constants_tests::test_lan_subnets_are_private ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_private_lan ... ok
[INFO] [stdout] test killswitch::rules::tests::constants_tests::test_doh_providers_are_public ... ok
[INFO] [stdout] test killswitch::rules::tests::constants_tests::test_vpn_prefixes_non_empty ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_custom_doh_blocking_empty ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_custom_doh_blocking ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_any_mode_accepts_all_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_localhost_mode_blocks_other_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_localhost_mode_allows_loopback_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_doh_blocking ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_tunnel_mode_blocks_other_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_tunnel_mode_accept_before_drop ... ok
[INFO] [stdout] test killswitch::rules::tests::doh_tests::test_unknown_provider ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_tunnel_mode_allows_vpn_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_block_allows_loopback ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_block_drops_rest ... ok
[INFO] [stdout] test killswitch::rules::tests::doh_tests::test_known_providers ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_tunnel_allows_vpn ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_loopback_rule ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_tunnel_drops_rest ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_default_drop_rule ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_rules_use_ip6tables ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_lan_rules ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_ipv4_accepts_valid ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_never_returns_empty ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_link_local_always_included ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_detected_subnets_are_all_private ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_ipv4_rejects_injection ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_server_allow_rule ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_private_cidr_accepts_rfc1918 ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_empty_classified_as_hostname ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_vpn_interface_rules ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_ipv4_classified_as_ip ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_hostname_classified_as_hostname ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_private_cidr_rejects_public ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_ipv6_classified_as_ip ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_hostname_with_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv4_with_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_hostname_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv4_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv6_bracketed_with_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv6_bare_no_port_kept_intact ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_non_numeric_port_kept ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_malformed_bracket ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv6_bracketed_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::is_vpn_type_tests::test_non_vpn_types ... ok
[INFO] [stdout] test nm::parsing::tests::is_vpn_type_tests::test_vpn_types ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_whitespace_trimmed ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_hostname_remote_rejected_as_non_ip ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_realistic_vpn_data_format ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_basic ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_colons_in_name ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_remote_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_deactivating ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_basic_remote ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_empty_output ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_ignores_remote_lookalike_keys ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_empty_output ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_filters_non_vpn ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_unknown_state_ignored ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_non_vpn_data_lines_ignored ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_multiple_states ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_attribute_order_independent ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_ipv6_bracketed_peer ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_empty ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_spaces_in_name ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_empty ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_basic ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_colons_in_name ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_wireguard ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_basic ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_ignores_non_vpn ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_no_vpns ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_empty_output ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_real_uuid ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_hostname_peer_rejected_as_non_ip ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_not_found ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_peer_without_endpoint_skipped ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_non_wireguard_lines_ignored ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_multiple_peers_v4_and_v6 ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_prefers_activated ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_sound_critical ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_disconnection_disable ... ok
[INFO] [stdout] test notifications::manager::tests::config_update_tests::test_update_throttle ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_first_run_disable ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_health_disable ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_single_ipv4_peer ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_master_disable ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_killswitch_disable ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_deactivating_only ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_enabled_by_default ... ok
[INFO] [stdout] test notifications::manager::tests::config_update_tests::test_update_config ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_suppressed_count_initial ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_disabled_category ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_sound_critical_default_false ... ok
[INFO] [stdout] test notifications::manager::tests::config_tests::test_defaults ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_per_category_disable ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_prefers_activating_over_deactivating ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_error_disable ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_enabled_and_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_first_event_not_throttled ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_action_inequality ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_dismiss_action ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_new_action ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_reconnect_action ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_all_categories_have_config_key ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_after_window_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_timeout_ms ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_reconnection_disable ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_empty ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_no_throttle_when_disabled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_different_category_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_same_category_throttled ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_action_equality ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_throttled_increments_suppressed ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_icons_are_symbolic ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_critical_timeout_longer ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_config_keys ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_icons_contain_expected_keywords ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_with_action ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_with_timeout_override ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_clone ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_manual_reconnect_after_forced_disconnect_starts_fresh ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_debug ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_user_enable_from_disconnected_resets_retries ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_urgency_low ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_category_preserved ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_supports_actions ... ok
[INFO] [stdout] test state::machine::tests::test_connected_health_ok_no_transition ... ok
[INFO] [stdout] test state::machine::tests::test_connected_vpn_changed ... ok
[INFO] [stdout] test state::machine::tests::test_connecting_connection_failed ... ok
[INFO] [stdout] test state::machine::tests::test_connecting_nm_vpn_down ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_urgency_critical ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_new_inherits_category_defaults ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_with_urgency_override ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_full_retry_budget_available_after_reset ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_set_state_to_other_states_preserves_retries ... ok
[INFO] [stdout] test state::machine::tests::test_connected_vpn_down_triggers_reconnect ... ok
[INFO] [stdout] test state::machine::tests::test_connecting_to_connected ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_title_and_body ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_inequality ... ok
[INFO] [stdout] test state::machine::tests::test_connected_to_degraded ... ok
[INFO] [stdout] test state::machine::tests::test_degraded_to_reconnecting ... ok
[INFO] [stdout] test state::machine::tests::test_degraded_vpn_down ... ok
[INFO] [stdout] test state::machine::tests::test_failed_external_recovery ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_equality ... ok
[INFO] [stdout] test state::machine::tests::test_failed_user_enable_restarts ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_urgency_normal ... ok
[INFO] [stdout] test state::machine::tests::test_disconnected_to_connecting ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_should_play_sound ... ok
[INFO] [stdout] test state::machine::tests::test_full_lifecycle ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_connection_failed ... ok
[INFO] [stdout] test state::machine::tests::test_max_retries_accessor ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_success ... ok
[INFO] [stdout] test state::machine::tests::test_default_config_values ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_timeout_exhausted ... ok
[INFO] [stdout] test state::machine::tests::test_external_connection_detected ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_timeout_increments ... ok
[INFO] [stdout] test state::machine::tests::test_default_impl ... ok
[INFO] [stdout] test state::machine::tests::test_retries_accessor ... ok
[INFO] [stdout] test state::machine::tests::test_degraded_health_ok_recovery ... ok
[INFO] [stdout] test state::machine::tests::test_retry_exhaustion ... ok
[INFO] [stdout] test state::machine::tests::test_set_state_logs_transition ... ok
[INFO] [stdout] test state::machine::tests::test_sleep_event_no_transition ... ok
[INFO] [stdout] test state::machine::tests::test_user_disable_from_any_state ... ok
[INFO] [stdout] test state::machine::tests::test_set_state_same_state_no_log ... ok
[INFO] [stdout] test state::machine::tests::test_user_disable_resets_retries ... ok
[INFO] [stdout] test state::machine::tests::test_unhandled_events_return_none ... ok
[INFO] [stdout] test state::types::tests::test_active_vpn_info ... ok
[INFO] [stdout] test state::types::tests::test_event_clone ... ok
[INFO] [stdout] test state::types::tests::test_all_event_variants ... ok
[INFO] [stdout] test state::machine::tests::test_wake_event_returns_none ... ok
[INFO] [stdout] test state::types::tests::test_nm_vpn_state_equality ... ok
[INFO] [stdout] test state::types::tests::test_all_transition_reasons ... ok
[INFO] [stdout] test state::types::tests::test_nm_vpn_state_display ... ok
[INFO] [stdout] test state::types::tests::test_event_display ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_display ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_equality ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_is_active ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_clone ... ok
[INFO] [stdout] test state::types::tests::test_transition_reason_display ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_name ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_server_name ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_is_busy ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/shroud-42eabdb9db8a6100)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 383 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 898 tests
[INFO] [stdout] test autostart::restart_policy_tests::test_dropin_bounds_restart_storms ... ok
[INFO] [stdout] test autostart::tests::test_disable_removes_desktop_file ... ignored, requires XDG desktop environment - run with: cargo test -- --ignored
[INFO] [stdout] test autostart::tests::test_enable_creates_desktop_file ... ignored, requires XDG desktop environment - run with: cargo test -- --ignored
[INFO] [stdout] test autostart::tests::test_toggle_disables_when_enabled ... ignored, requires XDG desktop environment - run with: cargo test -- --ignored
[INFO] [stdout] test autostart::tests::test_toggle_enables_when_disabled ... ignored, requires XDG desktop environment - run with: cargo test -- --ignored
[INFO] [stdout] test autostart::tests::test_cleanup_old_systemd_succeeds_when_no_service ... ok
[INFO] [stdout] test autostart::restart_policy_tests::test_start_limit_directives_are_in_unit_section ... ok
[INFO] [stdout] test autostart::restart_policy_tests::test_dropin_declares_on_failure_restart ... ok
[INFO] [stdout] test cli::args::security_tests::test_log_level_case_insensitive ... ok
[INFO] [stdout] test autostart::tests::test_is_enabled_does_not_panic ... ok
[INFO] [stdout] test autostart::tests::test_desktop_file_path_returns_valid_path ... ok
[INFO] [stdout] test cli::args::security_tests::test_log_level_injection_rejected ... ok
[INFO] [stdout] test autostart::restart_policy_tests::test_dropin_path_is_under_systemd_user_dropin_dir ... ok
[INFO] [stdout] test autostart::restart_policy_tests::test_generated_unit_name_matches_desktop_file_stem ... ok
[INFO] [stdout] test autostart::tests::test_find_binary_returns_existing_path ... ok
[INFO] [stdout] test autostart::tests::test_generate_desktop_entry_contains_required_fields ... ok
[INFO] [stdout] test autostart::tests::test_status_returns_valid_struct ... ok
[INFO] [stdout] test autostart::tests::test_enable_creates_parent_directory ... ok
[INFO] [stdout] test cli::args::security_tests::test_timeout_valid_accepted ... ok
[INFO] [stdout] test cli::args::security_tests::test_timeout_zero_rejected ... ok
[INFO] [stdout] test cli::args::security_tests::test_log_path_empty_rejected ... ok
[INFO] [stdout] test cli::args::security_tests::test_log_path_null_bytes_rejected ... ok
[INFO] [stdout] test cli::args::tests::test_command_help_flag ... ok
[INFO] [stdout] test cli::args::security_tests::test_log_level_valid_accepted ... ok
[INFO] [stdout] test cli::args::tests::test_connect_command ... ok
[INFO] [stdout] test autostart::tests::test_disable_succeeds_when_not_enabled ... ok
[INFO] [stdout] test cli::args::security_tests::test_log_level_invalid_rejected ... ok
[INFO] [stdout] test cli::args::security_tests::test_timeout_max_accepted ... ok
[INFO] [stdout] test cli::args::security_tests::test_vpn_name_newlines_rejected ... ok
[INFO] [stdout] test cli::args::security_tests::test_timeout_too_large_rejected ... ok
[INFO] [stdout] test cli::args::tests::test_daemon_mode_no_command ... ok
[INFO] [stdout] test cli::args::security_tests::test_vpn_name_empty_rejected ... ok
[INFO] [stdout] test cli::args::tests::test_explicit_timeout_overrides_command_default ... ok
[INFO] [stdout] test cli::args::tests::test_doctor_command ... ok
[INFO] [stdout] test cli::args::security_tests::test_vpn_name_null_bytes_rejected ... ok
[INFO] [stdout] test cli::args::security_tests::test_vpn_name_shell_chars_rejected ... ok
[INFO] [stdout] test cli::args::tests::test_combined_verbose_flags ... ok
[INFO] [stdout] test cli::args::tests::test_killswitch_toggle ... ok
[INFO] [stdout] test cli::args::tests::test_list_alias ... ok
[INFO] [stdout] test cli::args::tests::test_list_json_flag ... ok
[INFO] [stdout] test cli::args::tests::test_debug_on ... ok
[INFO] [stdout] test cli::args::tests::test_quit_aliases ... ok
[INFO] [stdout] test cli::args::security_tests::test_verbosity_clamped ... ok
[INFO] [stdout] test cli::args::security_tests::test_vpn_name_too_long_rejected ... ok
[INFO] [stdout] test cli::args::tests::test_verbose_flags ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_auto_reconnect_off ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_auto_reconnect_on ... ok
[INFO] [stdout] test cli::args::tests::test_fast_commands_keep_short_default_timeout ... ok
[INFO] [stdout] test cli::args::tests::test_list_with_type_filter ... ok
[INFO] [stdout] test cli::args::tests::test_verify_killswitch_command ... ok
[INFO] [stdout] test cli::args::tests::test_verify_ks_alias ... ok
[INFO] [stdout] test cli::args::tests::test_quiet_flag ... ok
[INFO] [stdout] test cli::args::tests::test_help_command ... ok
[INFO] [stdout] test cli::args::tests::test_status_command ... ok
[INFO] [stdout] test cli::args::tests::test_slow_commands_get_extended_default_timeout ... ok
[INFO] [stdout] test cli::args::tests::test_import_command ... ok
[INFO] [stdout] test cli::args::security_tests::test_timeout_negative_rejected ... ok
[INFO] [stdout] test cli::args::tests::test_killswitch_default_status ... ok
[INFO] [stdout] test cli::args::tests::test_invalid_command ... ok
[INFO] [stdout] test cli::args::tests::test_status_json ... ok
[INFO] [stdout] test cli::args::tests::test_timeout_flag ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_auto_reconnect_status ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_local_commands_return_none ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_auto_reconnect_toggle ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_debug_off ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_killswitch_on ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_killswitch_status ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_killswitch_toggle ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_killswitch_off ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_refresh ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_reload ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_restart ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_status ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_quit ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_disconnect ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_ar_status_response ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_debug_log_path ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_switch ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_list_no_filter ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_debug_dump ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_reconnect ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_ok_message_response ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_connections_response ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_error_response ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_json_output_ok ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_list_with_filter ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_debug_on ... ok
[INFO] [stdout] test cli::handlers::tests::test_handle_autostart_on_off ... ignored, requires XDG desktop environment - run with: cargo test -- --ignored
[INFO] [stdout] test cli::handlers::tests::test_handle_autostart_toggle ... ignored, requires XDG desktop environment - run with: cargo test -- --ignored
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_debug_tail_is_local ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_ping ... ok
[INFO] [stdout] test cli::handlers::tests::test_handle_autostart_json_output ... ok
[INFO] [stdout] test cli::handlers::tests::test_handle_autostart_status ... ok
[INFO] [stdout] test cli::handlers::tests::test_is_daemon_running_returns_bool ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_debug_info_response ... ok
[INFO] [stdout] test cli::validation::tests::test_contains_shell_metacharacters ... ok
[INFO] [stdout] test cli::handlers::tests::test_handle_version_returns_zero ... ok
[INFO] [stdout] test cli::handlers::tests::test_help_connect ... ok
[INFO] [stdout] test cli::validation::tests::test_sanitize_for_display ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_injection ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_valid ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_ks_status_response ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_empty_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_null_bytes_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_too_long_rejected ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_quiet_ok ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_ok_response ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_path_valid ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_injection_rejected ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_pong_response ... ok
[INFO] [stdout] test cli::handlers::tests::test_help_invalid_command ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_status_response_connected ... ok
[INFO] [stdout] test cli::handlers::tests::test_handle_cleanup_returns_zero ... ok
[INFO] [stdout] test cli::validation::tests::test_looks_like_injection ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_case_insensitive ... ok
[INFO] [stdout] test cli::handlers::tests::test_help_main ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_valid ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_negative_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_empty_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_newlines_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_too_large_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_log_level_invalid ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_real_world_names_accepted ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_json_output_error ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_valid ... ok
[INFO] [stdout] test config::settings::tests::test_config_error_display ... ok
[INFO] [stdout] test cli::handlers::tests::handle_response_tests::test_status_response_disconnected ... ok
[INFO] [stdout] test config::settings::tests::test_headless_config_default ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_zero_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_killswitch_config_default ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_timeout_non_numeric_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_trims_whitespace ... ok
[INFO] [stdout] test config::settings::tests::test_dns_mode_serialize ... ok
[INFO] [stdout] test config::settings::tests::test_config_default ... ok
[INFO] [stdout] test config::settings::tests::test_killswitch_config_roundtrip ... ok
[INFO] [stdout] test config::settings::tests::test_headless_config_serialize_roundtrip ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_null_bytes_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_shell_chars_rejected ... ok
[INFO] [stdout] test cli::validation::tests::test_validate_vpn_name_too_long_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_ipv6_mode_serialize ... ok
[INFO] [stdout] test config::settings::tests::test_dns_mode_display ... ok
[INFO] [stdout] test config::settings::tests::test_dns_mode_default ... ok
[INFO] [stdout] test config::settings::tests::test_config_partial_parse ... ok
[INFO] [stdout] test config::settings::tests::test_validate_custom_doh_blocklist_injection_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_load_validated_rejects_invalid_config ... ok
[INFO] [stdout] test config::settings::tests::test_load_validated_returns_defaults_for_missing_file ... ok
[INFO] [stdout] test config::settings::tests::test_config_serialize_deserialize ... ok
[INFO] [stdout] test config::settings::tests::test_load_returns_defaults_when_file_missing ... ok
[INFO] [stdout] test config::settings::tests::test_unknown_fields_ignored ... ok
[INFO] [stdout] test config::settings::tests::test_migration_from_version_0_adds_defaults ... ok
[INFO] [stdout] test config::settings::tests::test_validate_custom_doh_blocklist_non_ip_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_endpoints_too_many ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_interval_too_high ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_interval_too_low ... ok
[INFO] [stdout] test config::settings::tests::test_validate_reconnect_attempts_too_high ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_endpoint_https_ok ... ok
[INFO] [stdout] test config::settings::tests::test_validate_valid_last_server ... ok
[INFO] [stdout] test config::settings::tests::test_validate_no_last_server ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_endpoint_http_rejected ... ok
[INFO] [stdout] test config::settings::tests::test_validate_custom_doh_blocklist_valid ... ok
[INFO] [stdout] test config::settings::tests::test_validate_valid_config ... ok
[INFO] [stdout] test config::settings::tests::test_validate_health_interval_zero_ok ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_after_window_accepted ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_different_event_type_accepted ... ok
[INFO] [stdout] test config::settings::tests::test_save_creates_directory_and_writes_config ... ok
[INFO] [stdout] test config::settings::tests::test_load_with_invalid_toml_returns_defaults ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_first_event_accepted ... ok
[INFO] [stdout] test config::settings::tests::test_save_atomic_no_temp_file_remains ... ok
[INFO] [stdout] test dbus::monitor::tests::test_nm_event_clone ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_window_reasonable ... ok
[INFO] [stdout] test daemon::lock::tests::test_lock_file_path_uses_runtime_dir ... ok
[INFO] [stdout] test config::settings::tests::test_validate_degraded_threshold_bounds ... ok
[INFO] [stdout] test config::settings::tests::test_validate_empty_last_server ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_same_event_within_window_rejected ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_unknown_vpn_filtered ... ok
[INFO] [stdout] test config::settings::tests::test_save_sets_secure_permissions ... ok
[INFO] [stdout] test dbus::monitor::tests::test_vpn_failure_reason ... ok
[INFO] [stdout] test dbus::monitor::tests::test_nm_monitor_new ... ok
[INFO] [stdout] test dbus::monitor::tests::test_dedup_different_vpn_accepted ... ok
[INFO] [stdout] test dbus::monitor::tests::test_nm_event_debug ... ok
[INFO] [stdout] test config::settings::tests::test_save_then_load_roundtrip ... ok
[INFO] [stdout] test daemon::lock::tests::test_acquire_lock_writes_pid ... ok
[INFO] [stdout] test dbus::monitor::tests::test_vpn_failure_reason_basic_codes ... ok
[INFO] [stdout] test dbus::monitor::tests::test_vpn_failure_reason_unknown_includes_code ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_dbus_path_parsing ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_nm_event_clone ... ok
[INFO] [stdout] test dbus::monitor::tests::test_vpn_failure_reason_all_known ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_nm_event_variants ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_vpn_state_parsing ... ok
[INFO] [stdout] test cli::handlers::tests::args_to_command_tests::test_connect ... ok
[INFO] [stdout] test dbus::types::tests::nm_active_state::test_from_u32 ... ok
[INFO] [stdout] test dbus::types::tests::failure_reasons::test_all_known_reasons_non_empty ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_connection_type_detection ... ok
[INFO] [stdout] test dbus::types::tests::failure_reasons::test_known_reasons ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_from_u32_known ... ok
[INFO] [stdout] test dbus::types::tests::nm_device_state::test_from_u32 ... ok
[INFO] [stdout] test daemon::lock::tests::test_lock_file_permissions ... ok
[INFO] [stdout] test dbus::types::tests::nm_active_state::test_is_connected ... ok
[INFO] [stdout] test dbus::types::tests::nm_active_state::test_is_transitioning ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_event_channel_capacity ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_descriptions ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_is_failed ... ok
[INFO] [stdout] test dbus::types::tests::path_parsing::test_parse_path_id ... ok
[INFO] [stdout] test dbus::types::tests::path_parsing::test_build_active_path ... ok
[INFO] [stdout] test dbus::types::tests::path_parsing::test_parse_path_id_no_slash ... ok
[INFO] [stdout] test dbus::types::tests::path_parsing::test_build_settings_path ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_is_active ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_from_u32_unknown ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_is_disconnected ... ok
[INFO] [stdout] test dbus::types::tests::nm_vpn_state::test_is_activating ... ok
[INFO] [stdout] test daemon::lock::tests::test_release_lock_idempotent ... ok
[INFO] [stdout] test dbus::types::tests::type_detection::test_non_vpn_types ... ok
[INFO] [stdout] test headless::config::tests::log_level::test_from_str_unknown_defaults_to_info ... ok
[INFO] [stdout] test headless::config::tests::log_level::test_from_str_case_insensitive ... ok
[INFO] [stdout] test dbus::types::tests::path_parsing::test_parse_path_id_simple ... ok
[INFO] [stdout] test headless::config::tests::log_level::test_from_str_known ... ok
[INFO] [stdout] test dbus::tests::dbus_tests::test_vpn_state_to_event ... ok
[INFO] [stdout] test headless::config::tests::auto_connect_validation::test_too_long_server ... ok
[INFO] [stdout] test headless::config::tests::log_level::test_roundtrip ... ok
[INFO] [stdout] test dbus::types::tests::nm_device_state::test_is_connected ... ok
[INFO] [stdout] test dbus::types::tests::failure_reasons::test_unknown_reason ... ok
[INFO] [stdout] test dbus::types::tests::type_detection::test_vpn_types ... ok
[INFO] [stdout] test headless::config::tests::auto_connect_validation::test_empty_server ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_connect_shortcut ... ok
[INFO] [stdout] test headless::config::tests::auto_connect_validation::test_valid_server ... ok
[INFO] [stdout] test dbus::types::tests::path_parsing::test_parse_path_id_root ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_connect ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_list ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_quit_variants ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_status ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_unknown ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_whitespace_handling ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_killswitch_on ... ok
[INFO] [stdout] test headless::config::tests::log_level::test_as_str ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_empty_input ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_whitespace_only ... ok
[INFO] [stdout] test headless::config::tests::systemd_messages::test_constants ... ok
[INFO] [stdout] test headless::config::tests::watchdog_validation::test_empty_watchdog ... ok
[INFO] [stdout] test headless::config::tests::watchdog_validation::test_non_numeric_watchdog ... ok
[INFO] [stdout] test headless::config::tests::systemd_messages::test_errno ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_disconnect ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_connect_missing_arg ... ok
[INFO] [stdout] test headless::config::tests::systemd_messages::test_mainpid ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::paths::test_default_socket_path ... ok
[INFO] [stdout] test headless::config::tests::systemd_messages::test_status ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_help_variants ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::paths::test_default_pid_path ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::phase::test_running_can_accept ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_killswitch_off ... ok
[INFO] [stdout] test headless::config::tests::watchdog_validation::test_valid_watchdog ... ok
[INFO] [stdout] test headless::config::tests::watchdog_validation::test_valid_watchdog_small ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_help_text_contains_commands ... ok
[INFO] [stdout] test daemon::lock::tests::test_release_lock_keeps_file_for_flock_owner ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::phase::test_stopping_cannot_accept ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_format_pid ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::phase::test_running_is_not_terminal ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_roundtrip ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::phase::test_starting_cannot_accept ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_validate_pid_path_valid ... ok
[INFO] [stdout] test headless::config::tests::stdin_command::test_case_insensitive ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_validate_pid_path_empty ... ok
[INFO] [stdout] test headless::config::tests::watchdog_validation::test_zero_watchdog ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_parse_pid_invalid ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_parse_pid_valid ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::pid::test_validate_pid_path_null ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::phase::test_stopped_is_terminal ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::validate::test_empty_socket ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::signals::test_sighup_reload ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::watchdog::test_parse_small ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::watchdog::test_parse_valid ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::signals::test_sigint_shutdown ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::signals::test_sigquit_shutdown ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::signals::test_sigterm_shutdown ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::signals::test_sigusr1_log_status ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::validate::test_empty_auto_connect ... ok
[INFO] [stdout] test headless::systemd::tests::test_no_socket_returns_false ... ok
[INFO] [stdout] test headless::systemd::tests::test_watchdog_interval_none ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::signals::test_unknown_signal_ignore ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_ipc_socket_path ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_signal_mapping ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_systemd_notify_messages ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_watchdog_interval_calculation ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_default_endpoints_are_not_doh_blocked ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_default_endpoints_contain_no_doh_provider_literal ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::validate::test_valid_config ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::validate::test_multiple_errors ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_auto_connect_server_selection ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_hostname_endpoints_are_never_flagged ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::validate::test_short_watchdog ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::watchdog::test_parse_invalid ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_headless_config_defaults ... ok
[INFO] [stdout] test headless::runtime_helpers::tests::watchdog::test_parse_zero ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_bracketed_ipv6_with_port ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_host_without_path ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_ipv4_literal_with_path ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_detects_known_doh_provider_endpoint ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_query_and_fragment_stripped ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_bare_ipv6_is_not_truncated_at_colon ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_plain_host ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_strips_port ... ok
[INFO] [stdout] test health::checker::tests::test_default_config_has_multiple_endpoints ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_missing_scheme_returns_none ... ok
[INFO] [stdout] test health::checker::tests::endpoint_host_tests::test_strips_userinfo ... ok
[INFO] [stdout] test health::checker::tests::doh_conflict_tests::test_detects_custom_blocklist_endpoint ... ok
[INFO] [stdout] test health::checker::tests::test_config_clone ... ok
[INFO] [stdout] test headless::tests::headless_tests::test_headless_config_startup_server ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_empty_unknown ... ok
[INFO] [stdout] test health::checker::tests::test_default_impl ... ok
[INFO] [stdout] test health::checker::tests::test_degraded_counter_increments ... ok
[INFO] [stdout] test health::checker::tests::test_degraded_threshold_boundary ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_localhost_secure ... ok
[INFO] [stdout] test health::checker::tests::test_config_with_single_endpoint ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_no_nameservers_unknown ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_public_leaks ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_private_secure ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_cloudflare_trace_missing_ip ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_cloudflare_trace ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_cloudflare_trace_ipv6 ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_result_equality ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_empty_body ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_plain_text_ipv4 ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_plain_text_trimmed ... ok
[INFO] [stdout] test health::checker::tests::test_failure_counter_increments ... ok
[INFO] [stdout] test health::checker::tests::test_failure_threshold_boundary ... ok
[INFO] [stdout] test health::checker::tests::test_health_checker_reset ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_default_no_exit_ip ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_custom ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_default ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_with_exit_ip ... ok
[INFO] [stdout] test health::checker::tests::test_health_result_debug ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_plain_text_ipv6 ... ok
[INFO] [stdout] test health::checker::tests::test_health_result_equality ... ok
[INFO] [stdout] test health::checker::tests::test_health_result_clone ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_172_boundary ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_ipv6_private ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_loopback ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_not_an_ip ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_private ... ok
[INFO] [stdout] test health::checker::tests::test_is_safe_resolver_public_unsafe ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_empty ... ok
[INFO] [stdout] test health::checker::tests::test_health_config_dns_leak_check_default ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_multiple ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_basic ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_no_nameservers ... ok
[INFO] [stdout] test health::checker::tests::test_reset_clears_all_counters ... ok
[INFO] [stdout] test health::checker::tests::test_parse_resolv_conf_with_comments ... ok
[INFO] [stdout] test health::checker::tests::test_dns_leak_check_mixed ... ok
[INFO] [stdout] test health::checker::tests::test_resume_clears_suspension ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_garbage ... ok
[INFO] [stdout] test health::checker::tests::test_extract_ip_from_html ... ok
[INFO] [stdout] test health::checker::tests::test_suspend_expired_not_suspended ... ok
[INFO] [stdout] test health::checker::tests::test_reset_is_idempotent ... ok
[INFO] [stdout] test health::checker::tests::test_suspend_preserves_counters ... ok
[INFO] [stdout] test health::checker::tests::test_suspend_sets_until ... ok
[INFO] [stdout] test health::tests::health_tests::test_custom_config ... ok
[INFO] [stdout] test health::tests::health_tests::test_default_config_values ... ok
[INFO] [stdout] test health::tests::health_tests::test_degraded_threshold_logic ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_checker_new ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_result_variants ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_checker_with_config ... ok
[INFO] [stdout] test health::tests::health_tests::test_health_result_clone ... ok
[INFO] [stdout] test health::tests::health_tests::test_latency_edge_cases ... ok
[INFO] [stdout] test import::detector::tests::test_detect_openvpn_extension ... ok
[INFO] [stdout] test import::detector::tests::test_detect_unknown_conf ... ok
[INFO] [stdout] test import::detector::tests::test_detect_unknown_extension ... ok
[INFO] [stdout] test import::detector::tests::test_detect_wireguard_from_conf ... ok
[INFO] [stdout] test import::validator::tests::test_openvpn_missing_remote ... ok
[INFO] [stdout] test import::validator::tests::test_wireguard_missing_interface ... ok
[INFO] [stdout] test import::validator::tests::test_wireguard_valid ... ok
[INFO] [stdout] test ipc::client::tests::test_all_client_error_variants_display ... ok
[INFO] [stdout] test ipc::client::tests::test_client_error_connection ... ok
[INFO] [stdout] test ipc::client::tests::test_client_error_parse_display ... ok
[INFO] [stdout] test ipc::client::tests::test_client_error_display ... ok
[INFO] [stdout] test ipc::client::tests::test_client_error_receive_display ... ok
[INFO] [stdout] test ipc::client::tests::test_send_command_when_daemon_not_running ... ok
[INFO] [stdout] test ipc::protocol::tests::test_deserialize_invalid_json ... ok
[INFO] [stdout] test ipc::protocol::tests::test_command_serialize_connect ... ok
[INFO] [stdout] test ipc::protocol::tests::test_error_message ... ok
[INFO] [stdout] test ipc::protocol::tests::test_deserialize_empty_object ... ok
[INFO] [stdout] test ipc::protocol::tests::test_error_message_none_for_ok ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_is_not_ok_for_error ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_error ... ok
[INFO] [stdout] test health::checker::tests::test_resume_when_not_suspended ... ok
[INFO] [stdout] test ipc::client::tests::test_connect_to_daemon_error ... ok
[INFO] [stdout] test ipc::protocol::tests::test_command_descriptions ... ok
[INFO] [stdout] test ipc::client::tests::test_send_command_status_when_not_running ... ok
[INFO] [stdout] test import::validator::tests::test_openvpn_valid ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_hello_ok ... ok
[INFO] [stdout] test ipc::client::tests::test_client_error_send_display ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_ok ... ok
[INFO] [stdout] test import::validator::tests::test_wireguard_missing_private_key ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_is_ok ... ok
[INFO] [stdout] test ipc::client::tests::test_daemon_not_running ... ok
[INFO] [stdout] test ipc::protocol::tests::test_command_deserialize_connect ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_ping ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_pong ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_response_status ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_list_no_filter ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_quit ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_disconnect ... ok
[INFO] [stdout] test ipc::protocol::tests::test_response_serialize_version_mismatch ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_status ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_version ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_connect_valid ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_list_no_type ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_other_commands ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_switch_empty ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_list_invalid_type ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_switch_valid ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_version_info ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_list_valid_type ... ok
[INFO] [stdout] test ipc::protocol::tests::test_socket_path_uses_xdg ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_response_connections ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validation_hello_valid ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_hello ... ok
[INFO] [stdout] test ipc::protocol::tests::test_vpn_connection_info_roundtrip ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_killswitch_disable ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_switch ... ok
[INFO] [stdout] test ipc::server::tests::dropping_unbound_server_leaves_socket_alone ... ok
[INFO] [stdout] test ipc::server::tests::read_only_commands_answered_without_supervisor ... ok
[INFO] [stdout] test ipc::protocol::tests::test_vpn_connection_info_serialize ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_killswitch_enable ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validation_hello_zero ... ok
[INFO] [stdout] test ipc::server::tests::test_get_peer_pid_returns_some ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_list_with_filter ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_invalid_json ... ok
[INFO] [stdout] test ipc::protocol::tests::test_roundtrip_reconnect ... ok
[INFO] [stdout] test ipc::server::tests::state_changing_commands_still_go_to_supervisor ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_empty_line ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_status_command ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_valid_command ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_handshake_then_ping ... ok
[INFO] [stdout] test ipc::protocol::tests::test_validate_connect_empty ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_version_mismatch ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_invalid_command_validation ... ok
[INFO] [stdout] test ipc::server::tests::test_server_error_display_bind ... ok
[INFO] [stdout] test ipc::server::tests::test_server_error_display_cleanup ... ok
[INFO] [stdout] test killswitch::boot::tests::test_boot_chain_name_is_different ... ok
[INFO] [stdout] test ipc::server::tests::test_handle_connection_multiple_commands ... ok
[INFO] [stdout] test ipc::server::tests::test_symlink_socket_rejected ... ok
[INFO] [stdout] test killswitch::cleanup::deadline_tests::test_missing_binary_is_a_command_failure ... ok
[INFO] [stdout] test killswitch::cleanup::tests::test_cleanup_result_variants ... ok
[INFO] [stdout] test ipc::server::tests::test_server_creation ... ok
[INFO] [stdout] test killswitch::cleanup::deadline_tests::test_already_expired_deadline_returns_promptly ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_build_chain_cleanup_order ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_build_delete_chain ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_build_remove_jump ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_cleanup_order ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_find_shroud_rules ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_chain_exists_in_output_not_found ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_build_flush_chain ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_find_shroud_rules_empty ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_manual_cleanup_custom_binaries ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_manual_cleanup_instructions ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_chain_exists_in_output_found ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_shroud_chains_non_empty ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_chain_name_constant ... ok
[INFO] [stdout] test killswitch::cleanup_logic::tests::test_chain_exists_partial_no_match ... ok
[INFO] [stdout] test killswitch::cleanup::deadline_tests::test_failing_command_reports_status_not_error ... ok
[INFO] [stdout] test killswitch::cleanup::deadline_tests::test_fast_command_completes_normally ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_doh_providers_are_valid_ips ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_kill_switch_error_display ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_kill_switch_new_defaults ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_nft_table_constant ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_kill_switch_status_variants ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_doh_providers_list_not_empty ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_toggle_cooldown_constant ... ok
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_allows_lan ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_allows_localhost ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_allows_vpn_interface ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_allows_vpn_server ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_blocks_ipv6 ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_creates_drop_rules ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_disable_removes_rules ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_idempotent_disable ... ignored
[INFO] [stdout] test killswitch::firewall::leak_tests::test_killswitch_idempotent_enable ... ignored
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_set_vpn_server_and_clear ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_lan_allowed ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_ipv6_block ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_ipv6_off ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_dhcp ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_with_vpn_ips ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_custom_doh_in_iptables ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_strict_mode_doh_rules ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_set_config_updates_all_fields ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_doh_blocking ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_custom_doh_blocklist ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_configured_vpn_server_ip ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_input_chain ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_doh_blocking_disabled ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_dns_localhost_without_ipv6 ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_logging ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_dhcp ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_dns_tunnel_mode ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_dns_localhost_mode ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_ipv6_off ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_dns_any_mode ... ok
[INFO] [stdout] test killswitch::firewall::probe_order_tests::test_both_backends_always_probed ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_vpn_server_ipv6 ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_vpn_server_ips ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_basic_structure ... ok
[INFO] [stdout] test killswitch::firewall::security_tests::test_ip_address_validation ... ok
[INFO] [stdout] test killswitch::firewall::security_tests::test_iptables_command_escaping ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_vpn_server_ipv6_blocked_when_block_mode ... ok
[INFO] [stdout] test killswitch::firewall::probe_order_tests::test_iptables_host_probes_iptables_first ... ok
[INFO] [stdout] test killswitch::firewall::probe_order_tests::test_nftables_host_probes_nftables_first ... ok
[INFO] [stdout] test killswitch::firewall::security_tests::test_interface_name_validation ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_log_prefix ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_ipv6_block ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_kill_switch_set_server ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_kill_switch_status ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_kill_switch_with_config ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_vpn_interfaces ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_ipv6_tunnel ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_ruleset_local_network ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_kill_switch_configuration_update ... ok
[INFO] [stdout] test killswitch::paths::tests::test_ip6tables_path_contains_ip6tables ... ok
[INFO] [stdout] test killswitch::paths::tests::test_iptables_path_contains_iptables ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_any_mode_dns_rules ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_build_complete_script ... ok
[INFO] [stdout] test killswitch::paths::tests::test_log_detected_paths_does_not_panic ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_wireguard_ipv4_endpoint_whitelisted_both_backends ... ok
[INFO] [stdout] test killswitch::paths::tests::test_path_strings_are_absolute ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_tunnel_mode_dns_rules ... ok
[INFO] [stdout] test killswitch::paths::tests::test_nft_path_contains_nft ... ok
[INFO] [stdout] test killswitch::paths::tests::test_paths_are_absolute ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::masking::test_full_prefix_is_identity ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::masking::test_host_bits_are_cleared ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_fallback_constants_are_valid ... ok
[INFO] [stdout] test killswitch::paths::tests::test_paths_not_empty ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::masking::test_zero_prefix_yields_unspecified ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_accepts_link_local ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_accepts_unique_local_addresses ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_catch_all_and_overbroad_prefixes ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_ipv4_validator_does_not_accept_ipv6 ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_malformed_input ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_embedded_rule_fragments ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::validation::test_rejects_global_unicast ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_empty_chain ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_max_length_chain ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_chain_injection ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_too_long_chain ... ok
[INFO] [stdout] test killswitch::rules::tests::chain_validation_tests::test_valid_chain_names ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_ipv6_loopback ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_ipv6_public ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_link_local ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_loopback ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_public ... ok
[INFO] [stdout] test killswitch::rules::tests::constants_tests::test_lan_subnets_are_private ... ok
[INFO] [stdout] test killswitch::rules::tests::constants_tests::test_vpn_prefixes_non_empty ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_any_mode_accepts_all_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_custom_doh_blocking ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_custom_doh_blocking_empty ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_doh_blocking ... ok
[INFO] [stdout] test killswitch::rules::tests::classify_tests::test_private_lan ... ok
[INFO] [stdout] test killswitch::rules::tests::constants_tests::test_doh_providers_are_public ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_localhost_mode_allows_loopback_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_localhost_mode_blocks_other_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_tunnel_mode_blocks_other_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::doh_tests::test_known_providers ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_tunnel_mode_accept_before_drop ... ok
[INFO] [stdout] test killswitch::rules::tests::dns_rule_tests::test_tunnel_mode_allows_vpn_dns ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_block_allows_loopback ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_block_drops_rest ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_rules_use_ip6tables ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_tunnel_allows_vpn ... ok
[INFO] [stdout] test killswitch::rules::tests::ipv6_rule_tests::test_ipv6_tunnel_drops_rest ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_default_drop_rule ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_lan_rules ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_loopback_rule ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_server_allow_rule ... ok
[INFO] [stdout] test killswitch::rules::tests::rule_building_tests::test_vpn_interface_rules ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_ipv4_accepts_valid ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_ipv4_rejects_injection ... ok
[INFO] [stdout] test killswitch::rules::tests::doh_tests::test_unknown_provider ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_private_cidr_accepts_rfc1918 ... ok
[INFO] [stdout] test killswitch::rules::tests::test_is_valid_private_cidr_rejects_public ... ok
[INFO] [stdout] test killswitch::sudo_check::tests::test_sudo_access_status_clone ... ok
[INFO] [stdout] test killswitch::sudo_check::tests::test_sudo_access_status_debug ... ok
[INFO] [stdout] test killswitch::sudo_check::tests::test_sudo_access_status_equality ... ok
[INFO] [stdout] test killswitch::sudo_check::tests::test_sudo_access_status_inequality ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_boot_killswitch_concept ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_chain_name_constant ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_cleanup_concept ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_dns_mode_security_ranking ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_dns_mode_variants ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_doh_ports ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_doh_provider_ips ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_ipv6_mode_security ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_ipv6_mode_variants ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_killswitch_default ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_link_local_always_included ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_killswitch_error_is_error_trait ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_killswitch_new ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_killswitch_status_copy ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_doh_blocking_rules ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_killswitch_status_variants ... ok
[INFO] [stdout] test killswitch::firewall::nftables::nft_tests::test_nft_dns_localhost_with_ipv6 ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_dns_rule_ordering ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_killswitch_error_display ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_localhost_mode_dns_rules ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_lan_ranges ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_loopback_always_allowed ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_nft_table_name ... ok
[INFO] [stdout] test killswitch::tests::privileged_tests::test_full_killswitch_enable_disable_cycle ... ignored, Requires root privileges
[INFO] [stdout] test killswitch::tests::privileged_tests::test_iptables_chain_creation ... ignored, Requires root privileges
[INFO] [stdout] test killswitch::tests::privileged_tests::test_iptables_rule_insertion ... ignored, Requires root privileges
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_rule_order_concept ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_stale_rules_detection_concept ... ok
[INFO] [stdout] test killswitch::verify::tests::test_aggregate_verdict ... ok
[INFO] [stdout] test killswitch::verify::tests::test_iptables_checks_pass ... ok
[INFO] [stdout] test killswitch::verify::tests::test_iptables_chain_missing ... ok
[INFO] [stdout] test killswitch::verify::tests::test_nft_checks_pass ... ok
[INFO] [stdout] test killswitch::verify::tests::test_summary_generation ... ok
[INFO] [stdout] test logging::tests::test_log_directory_not_empty ... ok
[INFO] [stdout] test logging::tests::test_debug_logging_toggle ... ok
[INFO] [stdout] test logging::tests::test_verbose_to_level ... ok
[INFO] [stdout] test killswitch::tests::killswitch_tests::test_vpn_interface_patterns_accepted ... ok
[INFO] [stdout] test mode::tests::test_display_trait ... ok
[INFO] [stdout] test logging::tests::test_get_log_file_path ... ok
[INFO] [stdout] test logging::tests::test_parse_level ... ok
[INFO] [stdout] test mode::tests::test_default_is_always_desktop ... ok
[INFO] [stdout] test mode::tests::test_explicit_desktop_flag ... ok
[INFO] [stdout] test killswitch::verify::tests::test_report_serialization ... ok
[INFO] [stdout] test killswitch::firewall::tests::test_wireguard_ipv6_endpoint_nft_only ... ok
[INFO] [stdout] test mode::tests::test_headless_takes_priority ... ok
[INFO] [stdout] test nm::client::tests::security_tests::test_parse_active_vpns_invalid_states ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns ... ok
[INFO] [stdout] test nm::client::tests::security_tests::test_vpn_name_with_shell_metacharacters ... ok
[INFO] [stdout] test mode::tests::test_explicit_headless_flag ... ok
[INFO] [stdout] test nm::client::tests::security_tests::test_parse_vpn_connections_malicious_output ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_unknown_state_ignored ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_connections_basic ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_activating_over_deactivating ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_priority_activated_over_activating ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_empty_output ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_only_deactivating ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_connections_no_vpns ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_connections_with_colons_in_name ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_uuid_empty_output ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_connections_empty_output ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_uuid_ignores_non_vpn ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_uuid_not_found ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_empty_input ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_multiple ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_connections_with_spaces_in_name ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_uuid_with_single_colon_in_uuid ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_connection_without_endpoints_ignored ... ok
[INFO] [stdout] test nm::client::tests::test_parse_vpn_uuid_basic ... ok
[INFO] [stdout] test nm::client::tests::test_parse_active_vpns_with_colons_in_name ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_detected_subnets_are_all_private ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_mixed_ip_and_hostname_not_flagged ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_ipv6_kept ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_multi_tunnel_dedup ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_connection_struct ... ok
[INFO] [stdout] test killswitch::rules::ipv6_lan_tests::detection::test_never_returns_empty ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_multiple_hostname_only_vpns ... ok
[INFO] [stdout] test nm::connections::tests::test_nmcli_command_returns_string ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_type_debug ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_single_wireguard_ipv4 ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_type_equality ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_empty_classified_as_hostname ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_ipv4_classified_as_ip ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_hostname_classified_as_hostname ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_connection_clone ... ok
[INFO] [stdout] test nm::parsing::tests::classify_endpoint_host_tests::test_ipv6_classified_as_ip ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_type_display_wireguard ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_hostname_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv4_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv4_with_port ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_type_display_openvpn ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_hostname_with_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv6_bare_no_port_kept_intact ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv6_bracketed_with_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_ipv6_bracketed_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_malformed_bracket ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_type_display_unknown ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_non_numeric_port_kept ... ok
[INFO] [stdout] test nm::parsing::tests::is_vpn_type_tests::test_non_vpn_types ... ok
[INFO] [stdout] test nm::parsing::tests::is_vpn_type_tests::test_vpn_types ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_basic ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_deactivating ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_colons_in_name ... ok
[INFO] [stdout] test nm::parsing::tests::endpoint_host_tests::test_whitespace_trimmed ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_empty_output ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_filters_non_vpn ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_multiple_states ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_basic_remote ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_empty_output ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_hostname_remote_rejected_as_non_ip ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_ignores_remote_lookalike_keys ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_non_vpn_data_lines_ignored ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_realistic_vpn_data_format ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_basic ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_colons_in_name ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_empty ... ok
[INFO] [stdout] test nm::parsing::tests::parse_active_vpns_tests::test_unknown_state_ignored ... ok
[INFO] [stdout] test nm::parsing::tests::parse_openvpn_endpoints_tests::test_remote_without_port ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_no_vpns ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_not_found ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_ignores_non_vpn ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_connections_tests::test_spaces_in_name ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_real_uuid ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_wireguard ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_attribute_order_independent ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_basic ... ok
[INFO] [stdout] test nm::parsing::tests::parse_vpn_uuid_tests::test_empty ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_ipv6_bracketed_peer ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_multiple_peers_v4_and_v6 ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_peer_without_endpoint_skipped ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_deactivating_only ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_empty ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_prefers_activated ... ok
[INFO] [stdout] test nm::parsing::tests::select_best_vpn_tests::test_prefers_activating_over_deactivating ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_sound_critical ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_sound_critical_default_false ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_suppressed_count_initial ... ok
[INFO] [stdout] test notifications::manager::tests::accessor_tests::test_timeout_ms ... ok
[INFO] [stdout] test notifications::manager::tests::config_tests::test_defaults ... ok
[INFO] [stdout] test notifications::manager::tests::config_update_tests::test_update_config ... ok
[INFO] [stdout] test notifications::manager::tests::config_update_tests::test_update_throttle ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_disconnection_disable ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_enabled_by_default ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_empty_output ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_error_disable ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_hostname_peer_rejected_as_non_ip ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_first_run_disable ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_health_disable ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_killswitch_disable ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_reconnection_disable ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_enabled_and_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_per_category_disable ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_disabled_category ... ok
[INFO] [stdout] test notifications::manager::tests::is_enabled_tests::test_master_disable ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::should_display_tests::test_throttled_increments_suppressed ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_after_window_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_different_category_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_first_event_not_throttled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_no_throttle_when_disabled ... ok
[INFO] [stdout] test notifications::manager::tests::throttle_tests::test_same_category_throttled ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_dismiss_action ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_action_equality ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_action_inequality ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_all_categories_have_config_key ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_config_keys ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_new_action ... ok
[INFO] [stdout] test notifications::types::tests::action_tests::test_reconnect_action ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_critical_timeout_longer ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_should_play_sound ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_non_wireguard_lines_ignored ... ok
[INFO] [stdout] test nm::parsing::tests::parse_wireguard_endpoints_tests::test_single_ipv4_peer ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_supports_actions ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_icons_are_symbolic ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_urgency_critical ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_icons_contain_expected_keywords ... ok
[INFO] [stdout] test nm::connections::tests::aggregate_endpoint_scan_tests::test_hostname_only_flagged ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_urgency_low ... ok
[INFO] [stdout] test notifications::types::tests::category_tests::test_urgency_normal ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_category_preserved ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_new_inherits_category_defaults ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_with_action ... ok
[INFO] [stdout] test nm::connections::tests::test_vpn_type_clone ... ok
[INFO] [stdout] test killswitch::firewall::ks_expanded_tests::test_build_complete_script_ipv6_tunnel ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_full_retry_budget_available_after_reset ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_manual_reconnect_after_forced_disconnect_starts_fresh ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_clone ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_debug ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_title_and_body ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_with_timeout_override ... ok
[INFO] [stdout] test notifications::types::tests::notification_tests::test_with_urgency_override ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_equality ... ok
[INFO] [stdout] test notifications::types::tests::urgency_tests::test_urgency_inequality ... ok
[INFO] [stdout] test state::machine::tests::test_connecting_connection_failed ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_user_enable_from_disconnected_resets_retries ... ok
[INFO] [stdout] test state::machine::tests::test_connected_health_ok_no_transition ... ok
[INFO] [stdout] test state::machine::tests::test_connected_to_degraded ... ok
[INFO] [stdout] test state::machine::tests::test_connected_vpn_changed ... ok
[INFO] [stdout] test state::machine::tests::test_connected_vpn_down_triggers_reconnect ... ok
[INFO] [stdout] test state::machine::tests::test_default_impl ... ok
[INFO] [stdout] test state::machine::tests::test_disconnected_to_connecting ... ok
[INFO] [stdout] test state::machine::tests::test_degraded_vpn_down ... ok
[INFO] [stdout] test state::machine::tests::test_connecting_nm_vpn_down ... ok
[INFO] [stdout] test state::machine::tests::test_connecting_to_connected ... ok
[INFO] [stdout] test state::machine::tests::test_degraded_health_ok_recovery ... ok
[INFO] [stdout] test state::machine::tests::test_default_config_values ... ok
[INFO] [stdout] test state::machine::tests::test_degraded_to_reconnecting ... ok
[INFO] [stdout] test state::machine::tests::test_failed_external_recovery ... ok
[INFO] [stdout] test state::machine::tests::test_failed_user_enable_restarts ... ok
[INFO] [stdout] test state::machine::tests::test_external_connection_detected ... ok
[INFO] [stdout] test state::machine::tests::test_max_retries_accessor ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_success ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_timeout_exhausted ... ok
[INFO] [stdout] test state::machine::tests::test_retries_accessor ... ok
[INFO] [stdout] test state::machine::tests::test_retry_exhaustion ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_connection_failed ... ok
[INFO] [stdout] test state::machine::tests::test_reconnecting_timeout_increments ... ok
[INFO] [stdout] test state::machine::retry_budget_tests::test_set_state_to_other_states_preserves_retries ... ok
[INFO] [stdout] test state::machine::tests::test_full_lifecycle ... ok
[INFO] [stdout] test state::machine::tests::test_set_state_logs_transition ... ok
[INFO] [stdout] test state::machine::tests::test_set_state_same_state_no_log ... ok
[INFO] [stdout] test state::machine::tests::test_sleep_event_no_transition ... ok
[INFO] [stdout] test state::machine::tests::test_unhandled_events_return_none ... ok
[INFO] [stdout] test state::machine::tests::test_user_disable_from_any_state ... ok
[INFO] [stdout] test state::machine::tests::test_user_disable_resets_retries ... ok
[INFO] [stdout] test state::machine::tests::test_wake_event_returns_none ... ok
[INFO] [stdout] test state::types::tests::test_all_event_variants ... ok
[INFO] [stdout] test state::types::tests::test_all_transition_reasons ... ok
[INFO] [stdout] test state::types::tests::test_active_vpn_info ... ok
[INFO] [stdout] test state::types::tests::test_event_display ... ok
[INFO] [stdout] test state::types::tests::test_nm_vpn_state_display ... ok
[INFO] [stdout] test state::types::tests::test_event_clone ... ok
[INFO] [stdout] test state::types::tests::test_transition_reason_display ... ok
[INFO] [stdout] test state::types::tests::test_nm_vpn_state_equality ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_equality ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_display ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_is_busy ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_clone ... ok
[INFO] [stdout] test supervisor::event_loop::time_jump_tests::test_backwards_clock_step_does_not_panic ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_is_active ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_name ... ok
[INFO] [stdout] test state::types::tests::test_vpn_state_server_name ... ok
[INFO] [stdout] test supervisor::event_loop::time_jump_tests::test_blocked_event_loop_is_not_a_time_jump ... ok
[INFO] [stdout] test supervisor::event_loop::time_jump_tests::test_skew_just_past_threshold_is_a_jump ... ok
[INFO] [stdout] test supervisor::event_loop::time_jump_tests::test_slow_loop_far_beyond_threshold_is_still_not_a_jump ... ok
[INFO] [stdout] test supervisor::event_loop::time_jump_tests::test_suspend_is_detected ... ok
[INFO] [stdout] test supervisor::handlers::user::tests::connect_first_stays_connect_first ... ok
[INFO] [stdout] test supervisor::event_loop::time_jump_tests::test_skew_at_threshold_is_not_a_jump ... ok
[INFO] [stdout] test supervisor::handlers::user::tests::pre_connect_falls_back_for_hostname_target ... ok
[INFO] [stdout] test supervisor::handlers::user::tests::pre_connect_preserved_for_ip_endpoint ... ok
[INFO] [stdout] test killswitch::sudo_check::tests::test_sudo_access_check_returns_valid_status ... ok
[INFO] [stdout] test supervisor::handlers::user::tests::pre_connect_unaffected_by_other_hostname_vpn ... ok
[INFO] [stdout] test killswitch::sudo_check::tests::test_check_sudo_access_with_message_returns_result ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_response_ar_status ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_response_ks_status ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_command_response_types ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_all_ipc_command_variants_constructable ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_response_debug_info ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_response_ok_message ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_response_pong ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_ipc_response_status ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_vpn_command_serialization ... ok
[INFO] [stdout] test supervisor::tests::handler_tests::test_all_vpn_command_variants ... ok
[INFO] [stdout] test supervisor::tests::reconnect_tests::test_exponential_backoff_sequence ... ok
[INFO] [stdout] test supervisor::tests::reconnect_tests::test_retry_reset_on_success ... ok
[INFO] [stdout] test supervisor::tests::supervisor_tests::test_grace_period_logic ... ok
[INFO] [stdout] test supervisor::tests::supervisor_tests::test_reconnect_timing_calculations ... ok
[INFO] [stdout] test supervisor::tests::supervisor_tests::test_supervisor_constants_reasonable ... ok
[INFO] [stdout] test import::importer::tests::test_import_file_with_force ... FAILED
[INFO] [stdout] test tests::test_vpn_state_server_name ... ok
[INFO] [stdout] test tray::service::tests::test_extract_short_name ... ok
[INFO] [stdout] test import::importer::tests::test_connection_exists ... FAILED
[INFO] [stdout] test tray::service::tests::test_extract_short_name_multiple_hyphens ... ok
[INFO] [stdout] test tray::service::tests::test_extract_short_name_no_hyphen ... ok
[INFO] [stdout] test tray::service::tests::test_extract_short_name_numbers_only ... ok
[INFO] [stdout] test tray::service::tests::test_extract_short_name_trailing_hyphen ... ok
[INFO] [stdout] test tray::service::tests::test_extract_short_name_unicode ... ok
[INFO] [stdout] test tray::service::tests::test_shared_state_clone ... ok
[INFO] [stdout] test tray::service::tests::test_shared_state_default ... ok
[INFO] [stdout] test tray::service::tests::test_shared_state_modify_connections ... ok
[INFO] [stdout] test tray::service::tests::test_shared_state_modify_vpn_state ... ok
[INFO] [stdout] test tray::service::tests::test_extract_short_name_leading_hyphen ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_all_variants ... ok
[INFO] [stdout] test tray::service::tests::test_shared_state_toggle_flags ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_debug ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_disconnect ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_toggle_auto_reconnect ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_toggle_autostart ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_connect ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_command_channel ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_extract_short_name ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_menu_item_enabled_state ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_shared_state_clone ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_shared_state_default ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_shared_state_modification ... ok
[INFO] [stdout] test tray::tests::tray_tests::test_vpn_command_variants ... ok
[INFO] [stdout] test util::backoff::tests::test_capped_at_max ... ok
[INFO] [stdout] test util::backoff::tests::test_first_attempt_no_delay ... ok
[INFO] [stdout] test util::backoff::tests::test_jitter_bounded ... ok
[INFO] [stdout] test util::backoff::tests::test_jitter_zero ... ok
[INFO] [stdout] test util::backoff::tests::test_linear_growth ... ok
[INFO] [stdout] test tray::service::tests::test_vpn_command_toggle_killswitch ... ok
[INFO] [stdout] test util::backoff::tests::test_saturating_mul_no_panic ... ok
[INFO] [stdout] test util::backoff::tests::test_zero_base ... ok
[INFO] [stdout] test supervisor::tests::disconnect_calls_nm_disconnect_and_transitions_to_disconnected ... ok
[INFO] [stdout] test supervisor::tests::state_sync_detects_external_vpn_connection ... ok
[INFO] [stdout] test supervisor::tests::disconnect_disables_kill_switch_config ... ok
[INFO] [stdout] test supervisor::tests::reconnect_stops_if_vpn_already_connected ... ok
[INFO] [stdout] test supervisor::tests::state_sync_detects_external_disconnect ... ok
[INFO] [stdout] test supervisor::tests::dbus_failure_handled_once_wake_grace_expires ... ok
[INFO] [stdout] test killswitch::cleanup::deadline_tests::test_hanging_command_is_killed_at_deadline ... ok
[INFO] [stdout] test supervisor::tests::state_sync_detects_external_vpn_switch ... ok
[INFO] [stdout] test supervisor::tests::wake_resync_grace_ignores_replayed_failure ... ok
[INFO] [stdout] test supervisor::tests::connect_calls_nm_connect_and_transitions_to_connected ... ok
[INFO] [stdout] test daemon::lock::tests::test_lock_conflict_detection ... ok
[INFO] [stdout] test supervisor::tests::connect_failure_leaves_state_machine_not_connected ... ok
[INFO] [stdout] test supervisor::tests::connect_to_nonexistent_vpn_stays_disconnected ... ok
[INFO] [stdout] test supervisor::tests::reconnect_retries_on_failure_up_to_max_attempts ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- import::importer::tests::test_import_file_with_force stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'import::importer::tests::test_import_file_with_force' (3076) panicked at src/import/importer.rs:267:44:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x65348663ff61 - std[70759c8f55707aa4]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x65348663ff61 - std[70759c8f55707aa4]::backtrace_rs::backtrace::trace_unsynchronized::<std[70759c8f55707aa4]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x65348663ff61 - std[70759c8f55707aa4]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x65348663ff61 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x653486657c1a - <core[df12db4294e9bfd3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x653486657c1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    6:     0x653486644ccc - core[df12db4294e9bfd3]::io::write::default_write_fmt::<alloc[2182bb758b4b3781]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:402:11
[INFO] [stdout]    7:     0x653486644ccc - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:335:13
[INFO] [stdout]    8:     0x653486617f06 - <std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x653486617f06 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x653486636249 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x6534864b8820 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   12:     0x6534864b8820 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x653486636572 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   14:     0x653486636572 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x653486617fb2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x653486610809 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x65348661906d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x65348665843c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x653486658192 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1871:5
[INFO] [stdout]   20:     0x6534862cdb79 - <core[df12db4294e9bfd3]::result::Result<(), core[df12db4294e9bfd3]::io::error::Error>>::unwrap
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1232:23
[INFO] [stdout]   21:     0x6534862cdb79 - shroud[722112bc2cf6de61]::import::importer::tests::make_nmcli_stub
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:267:44
[INFO] [stdout]   22:     0x6534862c6759 - shroud[722112bc2cf6de61]::import::importer::tests::test_import_file_with_force::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:297:20
[INFO] [stdout]   23:     0x6534862ab952 - <core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x6534862aba0d - <core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/future/future.rs:133:9
[INFO] [stdout]   25:     0x6534861a285d - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:830:70
[INFO] [stdout]   26:     0x6534861a2675 - tokio[f58dd9425d1bdcee]::task::coop::with_budget::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   27:     0x6534861a2675 - tokio[f58dd9425d1bdcee]::task::coop::budget::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   28:     0x6534861a2675 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:830:25
[INFO] [stdout]   29:     0x6534861920f2 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:488:19
[INFO] [stdout]   30:     0x6534861a0bfd - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:829:44
[INFO] [stdout]   31:     0x65348619f374 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:906:68
[INFO] [stdout]   32:     0x653486286ecb - <tokio[f58dd9425d1bdcee]::runtime::context::scoped::Scoped<tokio[f58dd9425d1bdcee]::runtime::scheduler::Context>>::set::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   33:     0x6534861eb949 - tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler::<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context.rs:187:38
[INFO] [stdout]   34:     0x6534863227af - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[f58dd9425d1bdcee]::runtime::context::Context>>::try_with::<tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/local.rs:463:12
[INFO] [stdout]   35:     0x653486321efe - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[f58dd9425d1bdcee]::runtime::context::Context>>::with::<tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/local.rs:427:20
[INFO] [stdout]   36:     0x6534861cd8dd - tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler::<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context.rs:187:17
[INFO] [stdout]   37:     0x6534861984f0 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:906:27
[INFO] [stdout]   38:     0x653486198c86 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:817:24
[INFO] [stdout]   39:     0x65348619ec80 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:218:33
[INFO] [stdout]   40:     0x6534860a31d8 - tokio[f58dd9425d1bdcee]::runtime::context::runtime::enter_runtime::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CurrentThread>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   41:     0x653486191664 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:206:9
[INFO] [stdout]   42:     0x65348616b10f - <tokio[f58dd9425d1bdcee]::runtime::runtime::Runtime>::block_on_inner::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/runtime.rs:374:52
[INFO] [stdout]   43:     0x65348616b42b - <tokio[f58dd9425d1bdcee]::runtime::runtime::Runtime>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/runtime.rs:343:18
[INFO] [stdout]   44:     0x6534862ce502 - shroud[722112bc2cf6de61]::import::importer::tests::test_import_file_with_force
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:307:45
[INFO] [stdout]   45:     0x6534862c5fb7 - shroud[722112bc2cf6de61]::import::importer::tests::test_import_file_with_force::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:294:43
[INFO] [stdout]   46:     0x653486167676 - <shroud[722112bc2cf6de61]::import::importer::tests::test_import_file_with_force::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x6534864abb0b - <fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   48:     0x6534864abb0b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:733:18
[INFO] [stdout]   49:     0x6534864b9175 - test[9d35eded1c95d3be]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:74
[INFO] [stdout]   50:     0x6534864b9175 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   51:     0x6534864b9175 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   52:     0x6534864b9175 - std[70759c8f55707aa4]::panicking::catch_unwind::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   53:     0x6534864b9175 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   54:     0x6534864b9175 - test[9d35eded1c95d3be]::run_test_in_process
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:27
[INFO] [stdout]   55:     0x6534864b9175 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:677:43
[INFO] [stdout]   56:     0x6534864b2a34 - test[9d35eded1c95d3be]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:707:41
[INFO] [stdout]   57:     0x6534864b2a34 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   58:     0x6534864bc2d2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   59:     0x6534864bc2d2 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   60:     0x6534864bc2d2 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   61:     0x6534864bc2d2 - std[70759c8f55707aa4]::panicking::catch_unwind::<(), core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   62:     0x6534864bc2d2 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   63:     0x6534864bc2d2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   64:     0x6534864bc2d2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   65:     0x65348663ee69 - <alloc[2182bb758b4b3781]::boxed::Box<dyn core[df12db4294e9bfd3]::ops::function::FnOnce<(), Output = ()> + core[df12db4294e9bfd3]::marker::Send> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2320:9
[INFO] [stdout]   66:     0x65348663ee69 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   67:     0x712a86c80dfa - <unknown>
[INFO] [stdout]   68:     0x712a86d143d4 - clone
[INFO] [stdout]   69:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- import::importer::tests::test_connection_exists stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'import::importer::tests::test_connection_exists' (3075) panicked at src/import/importer.rs:267:44:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x65348663ff61 - std[70759c8f55707aa4]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x65348663ff61 - std[70759c8f55707aa4]::backtrace_rs::backtrace::trace_unsynchronized::<std[70759c8f55707aa4]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x65348663ff61 - std[70759c8f55707aa4]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x65348663ff61 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x653486657c1a - <core[df12db4294e9bfd3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x653486657c1a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    6:     0x653486644ccc - core[df12db4294e9bfd3]::io::write::default_write_fmt::<alloc[2182bb758b4b3781]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:402:11
[INFO] [stdout]    7:     0x653486644ccc - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:335:13
[INFO] [stdout]    8:     0x653486617f06 - <std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x653486617f06 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x653486636249 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x6534864b8820 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   12:     0x6534864b8820 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x653486636572 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   14:     0x653486636572 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x653486617fb2 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x653486610809 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x65348661906d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x65348665843c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x653486658192 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1871:5
[INFO] [stdout]   20:     0x6534862cdb79 - <core[df12db4294e9bfd3]::result::Result<(), core[df12db4294e9bfd3]::io::error::Error>>::unwrap
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1232:23
[INFO] [stdout]   21:     0x6534862cdb79 - shroud[722112bc2cf6de61]::import::importer::tests::make_nmcli_stub
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:267:44
[INFO] [stdout]   22:     0x6534862c6203 - shroud[722112bc2cf6de61]::import::importer::tests::test_connection_exists::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:286:20
[INFO] [stdout]   23:     0x6534862ab952 - <core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/future/future.rs:133:9
[INFO] [stdout]   24:     0x6534862aba0d - <core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>> as core[df12db4294e9bfd3]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/future/future.rs:133:9
[INFO] [stdout]   25:     0x6534861a285d - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:830:70
[INFO] [stdout]   26:     0x6534861a2675 - tokio[f58dd9425d1bdcee]::task::coop::with_budget::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/task/coop/mod.rs:167:5
[INFO] [stdout]   27:     0x6534861a2675 - tokio[f58dd9425d1bdcee]::task::coop::budget::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/task/coop/mod.rs:133:5
[INFO] [stdout]   28:     0x6534861a2675 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:830:25
[INFO] [stdout]   29:     0x6534861920f2 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Context>::enter::<core[df12db4294e9bfd3]::task::poll::Poll<()>, <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:488:19
[INFO] [stdout]   30:     0x6534861a0bfd - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:829:44
[INFO] [stdout]   31:     0x65348619f374 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:906:68
[INFO] [stdout]   32:     0x653486286ecb - <tokio[f58dd9425d1bdcee]::runtime::context::scoped::Scoped<tokio[f58dd9425d1bdcee]::runtime::scheduler::Context>>::set::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   33:     0x6534861eb949 - tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler::<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context.rs:187:38
[INFO] [stdout]   34:     0x6534863227af - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[f58dd9425d1bdcee]::runtime::context::Context>>::try_with::<tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/local.rs:463:12
[INFO] [stdout]   35:     0x653486321efe - <std[70759c8f55707aa4]::thread::local::LocalKey<tokio[f58dd9425d1bdcee]::runtime::context::Context>>::with::<tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/local.rs:427:20
[INFO] [stdout]   36:     0x6534861cd8dd - tokio[f58dd9425d1bdcee]::runtime::context::set_scheduler::<(alloc[2182bb758b4b3781]::boxed::Box<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::Core>, core[df12db4294e9bfd3]::option::Option<()>), <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context.rs:187:17
[INFO] [stdout]   37:     0x6534861984f0 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>::{closure#0}, core[df12db4294e9bfd3]::option::Option<()>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:906:27
[INFO] [stdout]   38:     0x653486198c86 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:817:24
[INFO] [stdout]   39:     0x65348619ec80 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:218:33
[INFO] [stdout]   40:     0x6534860a31d8 - tokio[f58dd9425d1bdcee]::runtime::context::runtime::enter_runtime::<<tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CurrentThread>::block_on<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   41:     0x653486191664 - <tokio[f58dd9425d1bdcee]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/scheduler/current_thread/mod.rs:206:9
[INFO] [stdout]   42:     0x65348616b10f - <tokio[f58dd9425d1bdcee]::runtime::runtime::Runtime>::block_on_inner::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/runtime.rs:374:52
[INFO] [stdout]   43:     0x65348616b42b - <tokio[f58dd9425d1bdcee]::runtime::runtime::Runtime>::block_on::<core[df12db4294e9bfd3]::pin::Pin<&mut dyn core[df12db4294e9bfd3]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.53.1/src/runtime/runtime.rs:343:18
[INFO] [stdout]   44:     0x6534862ce342 - shroud[722112bc2cf6de61]::import::importer::tests::test_connection_exists
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:290:45
[INFO] [stdout]   45:     0x6534862c5f87 - shroud[722112bc2cf6de61]::import::importer::tests::test_connection_exists::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/import/importer.rs:283:38
[INFO] [stdout]   46:     0x653486167656 - <shroud[722112bc2cf6de61]::import::importer::tests::test_connection_exists::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   47:     0x6534864abb0b - <fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   48:     0x6534864abb0b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:733:18
[INFO] [stdout]   49:     0x6534864b9175 - test[9d35eded1c95d3be]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:74
[INFO] [stdout]   50:     0x6534864b9175 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   51:     0x6534864b9175 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   52:     0x6534864b9175 - std[70759c8f55707aa4]::panicking::catch_unwind::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   53:     0x6534864b9175 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   54:     0x6534864b9175 - test[9d35eded1c95d3be]::run_test_in_process
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:27
[INFO] [stdout]   55:     0x6534864b9175 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:677:43
[INFO] [stdout]   56:     0x6534864b2a34 - test[9d35eded1c95d3be]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:707:41
[INFO] [stdout]   57:     0x6534864b2a34 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   58:     0x6534864bc2d2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   59:     0x6534864bc2d2 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   60:     0x6534864bc2d2 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   61:     0x6534864bc2d2 - std[70759c8f55707aa4]::panicking::catch_unwind::<(), core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   62:     0x6534864bc2d2 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   63:     0x6534864bc2d2 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   64:     0x6534864bc2d2 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   65:     0x65348663ee69 - <alloc[2182bb758b4b3781]::boxed::Box<dyn core[df12db4294e9bfd3]::ops::function::FnOnce<(), Output = ()> + core[df12db4294e9bfd3]::marker::Send> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2320:9
[INFO] [stdout]   66:     0x65348663ee69 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   67:     0x712a86c80dfa - <unknown>
[INFO] [stdout]   68:     0x712a86d143d4 - clone
[INFO] [stdout]   69:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     import::importer::tests::test_connection_exists
[INFO] [stdout]     import::importer::tests::test_import_file_with_force
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 878 passed; 2 failed; 18 ignored; 0 measured; 0 filtered out; finished in 47.39s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin shroud`
[INFO] running `Command { std: "docker" "inspect" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192", kill_on_drop: false }`
[INFO] [stdout] df6c00dda94bc37525822d7b67bf998a20ca5dd079ded521a0e2461535f6a192
