[INFO] fetching crate ttyforce 0.6.2...
[INFO] testing ttyforce-0.6.2 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate ttyforce 0.6.2 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate ttyforce 0.6.2
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ttyforce 0.6.2
[INFO] tweaked toml for crates.io crate ttyforce 0.6.2 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate ttyforce 0.6.2 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ttyforce 0.6.2 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:87:12
[INFO] [stderr]    |
[INFO] [stderr] 87 | homepage = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 93 | repository = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ttyforce` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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] eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5
[INFO] running `Command { std: "docker" "start" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", 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" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", 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" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:87:12
[INFO] [stderr]    |
[INFO] [stderr] 87 | homepage = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 93 | repository = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ttyforce` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling libc v0.2.189
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling event-listener v5.4.2
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling nix v0.31.3
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling uuid v1.24.1
[INFO] [stderr]    Compiling either v1.17.0
[INFO] [stderr]    Compiling moxcms v0.8.1
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling mio v1.2.2
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling inotify-sys v0.1.8
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling inotify v0.11.5
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling async-signal v0.2.14
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling gilrs v0.11.2
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling nix v0.23.2
[INFO] [stderr]    Compiling bitvec v1.1.1
[INFO] [stderr]    Compiling clap_builder v4.6.6
[INFO] [stderr]    Compiling darling_core v0.24.0
[INFO] [stderr]    Compiling image v0.25.10
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling darling_macro v0.24.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling darling v0.24.0
[INFO] [stderr]    Compiling instability v0.3.13
[INFO] [stderr]    Compiling clap_derive v4.6.4
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling gilrs-core v0.6.8
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling async-executor v1.14.0
[INFO] [stderr]    Compiling async-broadcast v0.7.2
[INFO] [stderr]    Compiling ordered-stream v0.2.0
[INFO] [stderr]    Compiling zvariant_utils v4.0.0
[INFO] [stderr]    Compiling enumflags2 v0.7.12
[INFO] [stderr]    Compiling zcheapstr v1.1.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling clap v4.6.6
[INFO] [stderr]    Compiling zvariant_derive v5.14.0
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling evdev v0.12.2
[INFO] [stderr]    Compiling qrcode v0.14.1
[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 ttyforce v0.6.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 20s
[INFO] running `Command { std: "docker" "inspect" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", 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" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:87:12
[INFO] [stderr]    |
[INFO] [stderr] 87 | homepage = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 93 | repository = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ttyforce` (manifest) generated 1 warning
[INFO] [stderr]    Compiling ttyforce v0.6.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 20.86s
[INFO] running `Command { std: "docker" "inspect" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", 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" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:87:12
[INFO] [stderr]    |
[INFO] [stderr] 87 | homepage = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 93 | repository = "https://github.com/erikh/ttyforce"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ttyforce` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.42s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/ttyforce/5620fe0bba82de40/out/ttyforce-5620fe0bba82de40)
[INFO] [stdout] 
[INFO] [stdout] running 376 tests
[INFO] [stdout] test detect::disk::tests::test_boot_disk_from_cmdline_literal_dev ... ok
[INFO] [stdout] test detect::disk::tests::test_boot_disks_excludes_whole_disk_with_free_space ... ok
[INFO] [stdout] test detect::disk::tests::test_boot_disks_from_mounts ... ok
[INFO] [stdout] test detect::disk::tests::test_prefer_fixed_disks_drops_removable_sd_keeps_emmc ... ok
[INFO] [stdout] test detect::disk::tests::test_boot_disks_empty_mounts ... ok
[INFO] [stdout] test detect::disk::tests::test_parent_disk_of_dev ... ok
[INFO] [stdout] test detect::disk::tests::test_prefer_fixed_disks_keeps_sd_when_only_removable ... ok
[INFO] [stdout] test detect::disk::tests::test_prefer_fixed_disks_keeps_usb_when_only_usb ... ok
[INFO] [stdout] test detect::disk::tests::test_detect_sysfs_excludes_boot_disk_keeps_usb ... ok
[INFO] [stdout] test detect::disk::tests::test_is_real_disk ... ok
[INFO] [stdout] test detect::disk::tests::test_usb_drives_are_real_disks ... ok
[INFO] [stdout] test detect::network::tests::test_parse_iw_scan_empty ... ok
[INFO] [stdout] test detect::disk::tests::test_root_spec_from_cmdline ... ok
[INFO] [stdout] test detect::network::tests::test_parse_iw_scan_hidden_ssid ... ok
[INFO] [stdout] test detect::disk::tests::test_strip_partition_suffix ... ok
[INFO] [stdout] test detect::network::tests::test_parse_iw_scan_output ... ok
[INFO] [stdout] test detect::network::tests::test_should_skip_interface ... ok
[INFO] [stdout] test detect::disk::tests::test_extract_vendor_from_model ... ok
[INFO] [stdout] test disk::group::tests::test_device_paths ... ok
[INFO] [stdout] test detect::disk::tests::test_removable_from_dir ... ok
[INFO] [stdout] test disk::group::tests::test_group_mixed_display_name ... ok
[INFO] [stdout] test disk::group::tests::test_group_empty ... ok
[INFO] [stdout] test disk::group::tests::test_group_mixed_disks_different_size ... ok
[INFO] [stdout] test disk::group::tests::test_group_same_disks ... ok
[INFO] [stdout] test disk::group::tests::test_group_similar_size_different_transport_stays_separate ... ok
[INFO] [stdout] test detect::network::tests::test_parse_iwlist_scan_output ... ok
[INFO] [stdout] test disk::group::tests::test_group_similar_size_same_transport_merges ... ok
[INFO] [stdout] test disk::group::tests::test_total_human_gb ... ok
[INFO] [stdout] test disk::group::tests::test_group_usb_isolated_from_sata ... ok
[INFO] [stdout] test disk::group::tests::test_group_three_different_makes_similar_size_merges ... ok
[INFO] [stdout] test disk::group::tests::test_group_size_just_over_threshold_stays_separate ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_combine_resolv_fragments_keeps_search_and_domain ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_combine_resolv_fragments_none_without_nameserver ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_combine_resolv_fragments_single ... ok
[INFO] [stdout] test disk::group::tests::test_total_human_tb ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_all_nameservers_collects_in_order ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_build_dns_query ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_all_nameservers_none_when_empty ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_dns_still_leads_gateway ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_combine_resolv_fragments_dedups_across_files ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_lease_nameservers_lead_candidate_order ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_trigger_failure_skips_polling ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_polling_immediate_ip ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_gateway_resolver_tried_before_public_fallback ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_polling_timeout ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_polling_ip_on_third_attempt ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_persist_network_config_handles_ipv6 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_persist_network_config_no_mac_fallback ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_persist_network_config_with_mac ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_succeeds_even_if_route_never_installs ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_persist_network_config_is_valid_networkd ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_persist_network_config_name_fallback_handles_ipv6 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_persist_network_config_zero_mac_fallback ... ok
[INFO] [stdout] test detect::disk::tests::test_detect_sysfs_no_boot_disk_keeps_all ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_generate_wpa_config ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_order_nameservers_dhcp_first_fallback_last ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_order_nameservers_skips_blank_entries ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_dhcp_waits_for_default_route ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_domain_with_quotes ... ok
[INFO] [stdout] test detect::disk::tests::test_prefer_fixed_disks_drops_usb_when_fixed_present ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_icmp_checksum ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_nameserver_line_parsing ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_empty ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_with_other_fields ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dns_response ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dns_response_no_answers ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_ipv4_default_route_found ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_ipv4_default_route_wrong_interface ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_full ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_multiple_nameservers ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_no_domain ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_ipv6_default_route_skips_non_default_and_other_iface ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_nameserver_socket_ipv6 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_nameserver_socket_rejects_garbage ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_nameserver_socket_ipv4 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_ipv6_default_route_global_gateway ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_nameserver_socket_ipv6_zoned_numeric ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_ipv4_default_route_none_when_no_default ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_ipv6_default_route_found ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_proc_hex_ipv6_roundtrip ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_regulatory_domain_no_country_line ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_regulatory_domain_rejects_non_two_letter_code ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_regulatory_domain_takes_first_block ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_regulatory_domain_set ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_regulatory_domain_world ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_wifi_qr_empty ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_wifi_qr_full ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_wifi_qr_garbage ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_read_resolv_fragments_from_dirs_missing_dir_is_empty ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_wifi_qr_no_password ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_ipv4_reachable_skips_ipv6 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_ipv6_used_when_present_and_ipv4_fails ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_read_resolv_fragments_from_dirs_matches_interface ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_wifi_qr_no_ssid ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_wifi_qr_wpa3 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_all_tiers_filtered_is_no_internet ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_tcp443_reachable_skips_icmp_and_ipv6 ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_tcp443_v6_reachable_when_v4_filtered ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_select_working_resolvers_empty_current_skips_probe_and_repairs ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_select_working_resolvers_keeps_current_when_it_resolves ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_select_working_resolvers_never_retains_blocked_only ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_select_working_resolvers_repairs_with_gateway_when_current_fails ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_global_unicast_accepts_2000_slash_3 ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_global_unicast_empty ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_global_unicast_rejects_link_local_only ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_global_unicast_rejects_ula ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_global_unicast_rejects_ula_plus_link_local ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_global_unicast_true_when_real_address_present ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_ipv6_present_but_unreachable_is_no_internet ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_parse_ipv6_addr_output_global ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_routability_no_ipv6_in_stack_skips_ipv6_probe ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_parse_ipv6_addr_output_empty ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_btrfs_metadata_profile_parity_raid_uses_mirror ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_parse_ipv6_addr_output_skips_link_local ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_btrfs_metadata_profile_non_parity_matches_data ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_parse_ipv6_addr_output_none_when_only_link_local ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_partition_path_mmcblk ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_partition_path_nvme ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_partition_path_scsi ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_partition_path_virtio ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_generate_fstab_creates_service ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_generate_mount_service_content ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_polling_zero_attempts_is_timeout ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_polling_immediate_ip ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_trigger_failure_skips_polling ... ok
[INFO] [stdout] test engine::real_ops::disk::tests::test_generate_fstab_idempotent ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_polling_ip_on_third_attempt ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_polling_timeout ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_generate_dhcp_config_content ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_merge_primary_does_not_duplicate_dhcpv4_section ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_merge_primary_empty_config ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_generate_dhcp_config_interface_name_substitution ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_merge_primary_existing_dhcpv4_without_route_metric ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_merge_primary_existing_dhcpv4_with_route_metric ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_merge_primary_preserves_match_section_for_correct_interface ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_merge_primary_existing_without_dhcpv4 ... ok
[INFO] [stdout] test engine::real_ops::tests::test_kmsg_log_does_not_panic ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_order_nameservers_dedups_keeping_first_position ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_networkd_unit_path ... ok
[INFO] [stdout] test engine::real_ops::tests::test_cmd_log_append_and_read ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_succeeds_even_if_route_never_installs ... ok
[INFO] [stdout] test getty::api::tests::test_api_client_new ... ok
[INFO] [stdout] test getty::api::tests::test_api_client_no_token ... ok
[INFO] [stdout] test getty::api::tests::test_format_detail_json_empty ... ok
[INFO] [stdout] test engine::real_ops::tests::test_run_cmd_logs_nonexistent_command ... ok
[INFO] [stdout] test getty::api::tests::test_format_detail_json_nested_object ... ok
[INFO] [stdout] test engine::real_ops::network::tests::test_dhcp_waits_for_default_route ... ok
[INFO] [stdout] test getty::api::tests::test_format_detail_json_null_value ... ok
[INFO] [stdout] test getty::api::tests::test_format_detail_json_number_value ... ok
[INFO] [stdout] test getty::api::tests::test_format_detail_json_object ... ok
[INFO] [stdout] test getty::api::tests::test_format_detail_json_plain_string ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_basic ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_empty_array ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_failure_no_error_msg ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_failure_with_error ... ok
[INFO] [stdout] test engine::initrd_ops::network::tests::test_parse_dhcpcd_lease_dns_no_nameservers ... ok
[INFO] [stdout] test engine::real_ops::tests::test_run_cmd_logs_failure ... ok
[INFO] [stdout] test engine::initrd_ops::syscall::tests::test_parse_ipv6_addr_output_unique_local ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_json_detail_multiple_fields ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_not_array ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_malformed ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_timestamp_with_negative_timezone_offset ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_paginated ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_no_timestamp ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_timestamp_with_timezone_offset ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_chunked ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_chunked_multibyte ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_skips_empty_action ... ok
[INFO] [stdout] test getty::api::tests::test_parse_audit_log_with_path_field ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_chunked_multiple_chunks ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_content_length ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_error_status ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_lowercase_fields ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_malformed ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_truncated_chunk ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_basic ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_empty_array ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_chunked_case_and_extensions ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_missing_fields ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_no_header_terminator ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_not_array ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_paginated ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_skips_empty_name ... ok
[INFO] [stdout] test getty::api::tests::test_parse_units_json_paginated_empty_entries ... ok
[INFO] [stdout] test getty::api::tests::test_parse_http_response_bad_chunk_size ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_disk_usage_nonexistent ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_mdns_url ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_cpuinfo ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_cpuinfo_empty ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_cpuinfo_no_model ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_hex_ip ... ok
[INFO] [stdout] test engine::real_ops::tests::test_run_cmd_logs_success ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_hex_ip_zeros ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_loadavg ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_proc_route ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_proc_route_no_default ... ok
[INFO] [stdout] test network::country::tests::codes_are_two_upper_letters_and_unique ... ok
[INFO] [stdout] test network::country::tests::filter_matches_code_and_name_case_insensitively ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_meminfo ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_loadavg_empty ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_proc_route_empty ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_read_town_os_version_missing ... ok
[INFO] [stdout] test network::country::tests::non_us_tail_is_alphabetical_by_name ... ok
[INFO] [stdout] test network::country::tests::us_is_first ... ok
[INFO] [stdout] test ssh::tests::test_execute_import_invalid_username ... ok
[INFO] [stdout] test network::state::tests::test_terminal_states ... ok
[INFO] [stdout] test network::state::tests::test_wifi_state_progression ... ok
[INFO] [stdout] test getty::sysinfo::tests::test_parse_meminfo_empty ... ok
[INFO] [stdout] test network::state::tests::test_error_state_no_next ... ok
[INFO] [stdout] test network::state::tests::test_ethernet_state_progression ... ok
[INFO] [stdout] test ssh::tests::test_is_valid_github_username ... ok
[INFO] [stdout] test ssh::tests::test_is_valid_github_username_invalid ... ok
[INFO] [stdout] test ssh::tests::test_write_authorized_keys_creates_dir_and_file ... ok
[INFO] [stdout] test tui::app::tests::bumpers_page_character_sets ... ok
[INFO] [stdout] test ssh::tests::test_write_authorized_keys_deduplicates ... ok
[INFO] [stdout] test tui::app::tests::cross_confirms_selection_on_country_picker ... ok
[INFO] [stdout] test tui::app::tests::grid_enter_submits_and_closes ... ok
[INFO] [stdout] test tui::app::tests::cross_on_empty_field_does_not_open_the_osk ... ok
[INFO] [stdout] test tui::app::tests::holding_l2_shifts_case ... ok
[INFO] [stdout] test tui::app::tests::l2_edges_do_not_open_the_osk ... ok
[INFO] [stdout] test tui::app::tests::osk_accept_types_into_password ... ok
[INFO] [stdout] test tui::app::tests::nav_moves_selection_on_list_screens ... ok
[INFO] [stdout] test tui::app::tests::osk_backspace_action_removes_char ... ok
[INFO] [stdout] test tui::app::tests::osk_field_shows_plain_text_for_non_secret_fields ... ok
[INFO] [stdout] test tui::app::tests::osk_cancel_closes_without_leaving_screen ... ok
[INFO] [stdout] test tui::app::tests::osk_navigation_selects_different_key ... ok
[INFO] [stdout] test tui::app::tests::osk_field_masks_the_password ... ok
[INFO] [stdout] test tui::app::tests::osk_types_into_country_filter ... ok
[INFO] [stdout] test tui::app::tests::start_opens_osk_without_typing ... ok
[INFO] [stdout] test tui::app::tests::other_buttons_still_open_the_osk ... ok
[INFO] [stdout] stdout still works after restore
[INFO] [stdout] test tui::app::tests::test_redirect_and_restore_with_devnull ... ok
[INFO] [stdout] test tui::app::tests::stale_osk_flag_cleared_on_non_text_screen ... ok
[INFO] [stdout] test tui::app::tests::square_types_a_space_into_the_field ... ok
[INFO] [stdout] test tui::evdev_input::tests::test_modifier_key_classification ... ok
[INFO] [stdout] test tui::evdev_input::tests::test_non_modifier_keys ... ok
[INFO] [stdout] test tui::gamepad::tests::analog_only_trigger_still_shifts ... ok
[INFO] [stdout] test tui::gamepad::tests::axis_zone_has_dead_zone ... ok
[INFO] [stdout] test tui::gamepad::tests::analog_trigger_fires_once_per_crossing ... ok
[INFO] [stdout] test tui::gamepad::tests::bumpers_page_and_l2_shifts ... ok
[INFO] [stdout] test tui::gamepad::tests::dpad_axes_map_like_sticks ... ok
[INFO] [stdout] test tui::gamepad::tests::dpad_buttons_map_to_navigation ... ok
[INFO] [stdout] test tui::gamepad::tests::non_directional_axes_ignored ... ok
[INFO] [stdout] test tui::gamepad::tests::only_l2_reports_a_release ... ok
[INFO] [stdout] test tui::gamepad::tests::stick_x_maps_left_right ... ok
[INFO] [stdout] test tui::gamepad::tests::stick_y_up_is_positive ... ok
[INFO] [stdout] test tui::gamepad::tests::unmapped_buttons_are_ignored ... ok
[INFO] [stdout] test tui::gamepad::tests::west_types_a_space ... ok
[INFO] [stdout] test tui::gamepad::tests::zone_slots_cover_directional_axes ... ok
[INFO] [stdout] test tui::getty::tests::test_activity_resets_on_unblank ... ok
[INFO] [stdout] test tui::getty::tests::test_all_services_active_all_active ... ok
[INFO] [stdout] test tui::getty::tests::test_all_services_active_api_error ... ok
[INFO] [stdout] test tui::gamepad::tests::face_buttons_map_to_intents ... ok
[INFO] [stdout] test tui::getty::tests::test_all_services_active_empty ... ok
[INFO] [stdout] test tui::app::tests::test_redirect_to_tty_nonexistent_device ... ok
[INFO] [stdout] test tui::getty::tests::test_all_services_active_some_activating ... ok
[INFO] [stdout] test tui::getty::tests::test_append_log_line_clamps_scroll_to_buffer_size ... ok
[INFO] [stdout] test tui::getty::tests::test_append_log_line_locks_view_when_scrolled ... ok
[INFO] [stdout] test tui::getty::tests::test_audit_entries_can_be_populated ... ok
[INFO] [stdout] test tui::getty::tests::test_audit_entries_initially_empty ... ok
[INFO] [stdout] test tui::getty::tests::test_append_log_line_trims_when_over_max ... ok
[INFO] [stdout] test tui::evdev_input::tests::test_empty_watcher_no_activity ... ok
[INFO] [stdout] test tui::getty::tests::test_append_log_line_basic ... ok
[INFO] [stdout] test tui::getty::tests::test_discard_next_key_not_set_for_modifier_only ... ok
[INFO] [stdout] test tui::getty::tests::test_discard_next_key_set_on_non_modifier_wake ... ok
[INFO] [stdout] test tui::getty::tests::test_discard_next_key_starts_false ... ok
[INFO] [stdout] test tui::getty::tests::test_end_key_returns_to_tail ... ok
[INFO] [stdout] test tui::getty::tests::test_execute_poweroff ... ok
[INFO] [stdout] test tui::getty::tests::test_down_arrow_scrolls_one_line_forward ... ok
[INFO] [stdout] test tui::getty::tests::test_execute_reboot ... ok
[INFO] [stdout] test tui::getty::tests::test_drain_evdev_none_returns_no_activity ... ok
[INFO] [stdout] test tui::getty::tests::test_drain_xe_journal_lines_no_child ... ok
[INFO] [stdout] test tui::getty::tests::test_execute_sledgehammer_no_grub_entry ... ok
[INFO] [stdout] test tui::getty::tests::test_execute_sledgehammer_tryboot_mock ... ok
[INFO] [stdout] test tui::getty::tests::test_format_unix_timestamp_known_date ... ok
[INFO] [stdout] test tui::getty::tests::test_format_unix_timestamp_epoch ... ok
[INFO] [stdout] test tui::getty::tests::test_format_unix_timestamp_leap_year ... ok
[INFO] [stdout] test tui::getty::tests::test_highlight_key_value_pairs_multiple ... ok
[INFO] [stdout] test tui::getty::tests::test_highlight_key_value_pairs_basic ... ok
[INFO] [stdout] test tui::getty::tests::test_execute_sledgehammer_with_grub_entry ... ok
[INFO] [stdout] test tui::getty::tests::test_home_key_jumps_to_top ... ok
[INFO] [stdout] test tui::getty::tests::test_journal_scroll_initially_zero ... ok
[INFO] [stdout] test tui::getty::tests::test_journal_window_at_tail ... ok
[INFO] [stdout] test tui::getty::tests::test_journal_window_scroll_past_top_clamps ... ok
[INFO] [stdout] test tui::getty::tests::test_journal_window_scrolled_back ... ok
[INFO] [stdout] test tui::getty::tests::test_key_ctrl_c_quits ... ok
[INFO] [stdout] test tui::getty::tests::test_key_l_switches_to_log ... ok
[INFO] [stdout] test tui::getty::tests::test_key_l_then_s_round_trip ... ok
[INFO] [stdout] test tui::getty::tests::test_key_login ... ok
[INFO] [stdout] test tui::getty::tests::test_key_poweroff ... ok
[INFO] [stdout] test tui::getty::tests::test_key_quit_disabled_by_default ... ok
[INFO] [stdout] test tui::getty::tests::test_key_quit_enabled ... ok
[INFO] [stdout] test tui::getty::tests::test_key_reboot ... ok
[INFO] [stdout] test tui::getty::tests::test_key_reconfigure_menu ... ok
[INFO] [stdout] test tui::getty::tests::test_key_s_switches_to_status ... ok
[INFO] [stdout] test tui::getty::tests::test_key_sledgehammer_backspace ... ok
[INFO] [stdout] test tui::getty::tests::test_key_sledgehammer_cancel ... ok
[INFO] [stdout] test tui::getty::tests::test_key_sledgehammer_enter_mode ... ok
[INFO] [stdout] test tui::getty::tests::test_journal_window_smaller_than_height ... ok
[INFO] [stdout] test tui::getty::tests::test_key_sledgehammer_type_and_confirm ... ok
[INFO] [stdout] test tui::getty::tests::test_key_unknown ... ok
[INFO] [stdout] test tui::getty::tests::test_manage_xe_journal_starts_child ... ok
[INFO] [stdout] test tui::getty::tests::test_key_sledgehammer_wrong_text ... ok
[INFO] [stdout] test tui::getty::tests::test_old_r_key_does_nothing ... ok
[INFO] [stdout] test tui::getty::tests::test_panel_auto_to_status_when_all_active ... ok
[INFO] [stdout] test tui::getty::tests::test_highlight_key_value_pairs_no_equals ... ok
[INFO] [stdout] test tui::getty::tests::test_is_leap_year ... ok
[INFO] [stdout] test tui::getty::tests::test_pgdn_returns_toward_tail ... ok
[INFO] [stdout] test tui::getty::tests::test_pgup_clamps_at_buffer_top ... ok
[INFO] [stdout] test tui::app::tests::osk_overlay_renders_field_and_playstation_legend ... ok
[INFO] [stdout] test tui::getty::tests::test_quit_action_not_executed_by_execute_action ... ok
[INFO] [stdout] test tui::getty::tests::test_pgdn_clamps_at_zero ... ok
[INFO] [stdout] test tui::getty::tests::test_pgup_scrolls_journal_f_in_full_log_view ... ok
[INFO] [stdout] test tui::getty::tests::test_pgup_scrolls_xe_journal_in_quad_view ... ok
[INFO] [stdout] test tui::getty::tests::test_reconfigure_menu_blocks_normal_keys ... ok
[INFO] [stdout] test tui::getty::tests::test_reconfigure_menu_sledgehammer ... ok
[INFO] [stdout] test tui::getty::tests::test_reconfigure_menu_ssh_keys ... ok
[INFO] [stdout] test tui::getty::tests::test_reconfigure_menu_esc ... ok
[INFO] [stdout] test tui::getty::tests::test_reconfigure_menu_network ... ok
[INFO] [stdout] test tui::getty::tests::test_screen_does_not_blank_before_timeout ... ok
[INFO] [stdout] test tui::getty::tests::test_screen_does_not_blank_when_already_blanked ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_import_failure_stays_on_same_user ... ok
[INFO] [stdout] test tui::getty::tests::test_panel_auto_stays_when_not_all_active ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_input_enter_empty_last_user_exits ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_input_enter_empty_skips_user ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_input_enter_with_username_returns_action ... ok
[INFO] [stdout] test tui::getty::tests::test_screen_blanks_after_timeout ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_input_esc_exits ... ok
[INFO] [stdout] test tui::getty::tests::test_reconfigure_menu_ssh_keys_disabled_by_no_ssh_keys ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_input_typing ... ok
[INFO] [stdout] test tui::getty::tests::test_stop_xe_journal_when_no_child ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_date_time ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_hostname ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_machine ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_no_escapes ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_os_name ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_trailing_backslash ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_import_success_advances_to_next_user ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_backslash ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_tty ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_kernel_release ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_unknown_escape ... ok
[INFO] [stdout] test tui::getty::tests::test_substitute_issue_escapes_tty_default ... ok
[INFO] [stdout] test tui::getty::tests::test_truncate_str_truncated ... ok
[INFO] [stdout] test tui::getty::tests::test_truncate_str_exact_fit ... ok
[INFO] [stdout] test tui::getty::tests::test_truncate_str_no_truncation ... ok
[INFO] [stdout] test tui::getty::tests::test_truncate_str_zero_width ... ok
[INFO] [stdout] test tui::getty::tests::test_unblank_clears_blanked_state ... ok
[INFO] [stdout] test tui::getty::tests::test_up_arrow_scrolls_one_line ... ok
[INFO] [stdout] test tui::getty::tests::test_xe_journal_buffer_cap ... ok
[INFO] [stdout] test tui::getty::tests::test_xe_journal_child_initially_none ... ok
[INFO] [stdout] test tui::getty::tests::test_xe_journal_lines_initially_empty ... ok
[INFO] [stdout] test tui::getty::tests::test_xe_journal_max_lines_default ... ok
[INFO] [stdout] test tui::kmsg::tests::test_open_does_not_panic_without_permission ... ok
[INFO] [stdout] test tui::kmsg::tests::test_drain_empty_source_reports_no_output ... ok
[INFO] [stdout] test tui::kmsg::tests::test_drain_reports_output_once_per_batch ... ok
[INFO] [stdout] test tui::kmsg::tests::test_drain_picks_up_messages_appended_after_the_first_drain ... ok
[INFO] [stdout] test tui::getty::tests::test_ssh_import_success_last_user_exits ... ok
[INFO] [stdout] test tui::osk::tests::action_row_is_identical_on_every_page ... ok
[INFO] [stdout] test tui::osk::tests::action_row_keys_resolve ... ok
[INFO] [stdout] test tui::osk::tests::bumpers_page_forward_and_back_with_wrap ... ok
[INFO] [stdout] test tui::osk::tests::column_clamps_on_shorter_action_row ... ok
[INFO] [stdout] test tui::osk::tests::horizontal_movement_and_typing ... ok
[INFO] [stdout] test tui::osk::tests::hyphen_key_shifts_to_underscore ... ok
[INFO] [stdout] test tui::osk::tests::move_left_clamps_at_zero ... ok
[INFO] [stdout] test tui::osk::tests::move_right_clamps_at_row_end ... ok
[INFO] [stdout] test tui::osk::tests::multi_char_uppercase_falls_back_to_the_base_character ... ok
[INFO] [stdout] test tui::osk::tests::pages_type_their_own_characters ... ok
[INFO] [stdout] test tui::osk::tests::shift_does_not_turn_digits_into_symbols ... ok
[INFO] [stdout] test tui::osk::tests::shift_uppercases_letters ... ok
[INFO] [stdout] test tui::osk::tests::starts_on_letter_row ... ok
[INFO] [stdout] test tui::osk::tests::vertical_movement_reaches_number_and_action_rows ... ok
[INFO] [stdout] test tui::osk::tests::action_row_has_no_shift_key ... ok
[INFO] [stdout] test tui::osk::tests::accented_letters_shift_to_uppercase ... ok
[INFO] [stdout] test tui::app::tests::controller_hint_shown_on_every_text_entry_screen ... ok
[INFO] [stdout] test tui::app::tests::controller_hint_hidden_without_a_controller ... ok
[INFO] [stdout] test ssh::tests::test_fetch_github_keys_nonexistent_user ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/ttyforce/88703bacc0c92a87/out/ttyforce-88703bacc0c92a87)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli_tests.rs (/opt/rustwide/target/debug/build/ttyforce/02faf4807af6b123/out/cli_tests-02faf4807af6b123)
[INFO] [stdout] test result: ok. 376 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.25s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test cli_detect_help ... ok
[INFO] [stdout] test cli_detect_fixture_missing_file ... ok
[INFO] [stdout] test cli_getty_help ... ok
[INFO] [stdout] test cli_dry_run_subcommands_have_installer_ssh_flags ... ok
[INFO] [stdout] test cli_help_flag ... ok
[INFO] [stdout] test cli_detect_missing_input_file ... ok
[INFO] [stdout] test cli_initrd_help ... ok
[INFO] [stdout] test cli_help_shows_initrd_subcommand ... ok
[INFO] [stdout] test cli_global_flags_after_subcommand ... ok
[INFO] [stdout] test cli_detect_with_input_file ... ok
[INFO] [stdout] test cli_global_flags_before_subcommand ... ok
[INFO] [stdout] test cli_detect_with_output_file ... ok
[INFO] [stdout] test cli_detect_fixture_with_output_file ... ok
[INFO] [stdout] test cli_detect_fixture_runs_scenario ... ok
[INFO] [stdout] test cli_initrd_tty_nonexistent_device ... ok
[INFO] [stdout] test cli_no_args_shows_help ... ok
[INFO] [stdout] test cli_output_help ... ok
[INFO] [stdout] test cli_run_help ... ok
[INFO] [stdout] test cli_run_accepts_ssh_flags ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/controller_tests.rs (/opt/rustwide/target/debug/build/ttyforce/f5d58bf67fddd89e/out/controller_tests-f5d58bf67fddd89e)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test controller_search_country ... ok
[INFO] [stdout] test unknown_button_is_an_error ... ok
[INFO] [stdout] test controller_type_password ... ok
[INFO] [stdout] test controller_hold_l2_uppercases ... ok
[INFO] [stdout] test controller_close_keyboard_keeps_text ... ok
[INFO] [stdout] test controller_page_to_accented_characters ... ok
[INFO] [stdout] test controller_shift_and_backspace ... ok
[INFO] [stdout] test controller_cross_submits_empty_field ... ok
[INFO] [stdout] test all_controller_scripts_run ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/fixture_tests.rs (/opt/rustwide/target/debug/build/ttyforce/ba0cb4cf8665216e/out/fixture_tests-ba0cb4cf8665216e)
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test test_disk_size_display ... ok
[INFO] [stdout] test test_country_selection_goes_through_the_executor ... ok
[INFO] [stdout] test test_ethernet_auto_detect ... ok
[INFO] [stdout] test test_back_from_country_picker_returns_to_wifi_select ... ok
[INFO] [stdout] test test_dead_ethernet_falls_back_to_wifi ... ok
[INFO] [stdout] test test_disk_grouping_single ... ok
[INFO] [stdout] test test_disk_grouping_all_same ... ok
[INFO] [stdout] test test_load_ethernet_1disk ... ok
[INFO] [stdout] test test_filesystem_default_is_btrfs ... ok
[INFO] [stdout] test test_initial_state_mixed ... ok
[INFO] [stdout] test test_ethernet_preferred_over_wifi ... ok
[INFO] [stdout] test test_initial_state_wifi ... ok
[INFO] [stdout] test test_load_ethernet_4disk_same ... ok
[INFO] [stdout] test test_load_wifi_1disk ... ok
[INFO] [stdout] test test_load_wifi_dead_ethernet_1disk ... ok
[INFO] [stdout] test test_raid_options_2disk ... ok
[INFO] [stdout] test test_load_wifi_ethernet_1disk ... ok
[INFO] [stdout] test test_initial_state_ethernet ... ok
[INFO] [stdout] test test_raid_usable_capacity ... ok
[INFO] [stdout] test test_set_regulatory_domain_skipped_when_domain_already_set ... ok
[INFO] [stdout] test test_raid_recommended ... ok
[INFO] [stdout] test test_load_wifi_crowded_1disk ... ok
[INFO] [stdout] test test_load_wifi_ethernet_4disk ... ok
[INFO] [stdout] test test_raid_options_4disk ... ok
[INFO] [stdout] test test_raid_options_1disk ... ok
[INFO] [stdout] test test_load_wifi_dead_ethernet_4disk ... ok
[INFO] [stdout] test test_unset_regulatory_domain_detours_to_country_picker ... ok
[INFO] [stdout] test test_unknown_regulatory_domain_skips_country_picker ... ok
[INFO] [stdout] test test_wifi_auto_detect_goes_to_wifi_select ... ok
[INFO] [stdout] test test_all_hardware_fixtures_are_simulator_ready ... ok
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/build/ttyforce/4e91678425b2a7b5/out/integration_tests-4e91678425b2a7b5)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 41 tests
[INFO] [stdout] test integration_btrfs_subvolume ... ok
[INFO] [stdout] test integration_check_dns_resolution ... ok
[INFO] [stdout] test integration_check_link_availability ... ok
[INFO] [stdout] test integration_check_link_nonexistent_interface ... ok
[INFO] [stdout] test integration_configure_dhcp_no_server ... ignored
[INFO] [stdout] test integration_btrfs_raid_setup ... ok
[INFO] [stdout] test integration_check_upstream_router_no_route ... ok
[INFO] [stdout] test integration_check_ip_address ... ok
[INFO] [stdout] test integration_enable_nonexistent_interface ... ok
[INFO] [stdout] test integration_disable_and_reenable_interface ... ok
[INFO] [stdout] test integration_initrd_check_dns_resolution ... ok
[INFO] [stdout] test integration_initrd_check_ip_address_prefers_ipv4 ... ok
[INFO] [stdout] test integration_initrd_check_upstream_router_no_route ... ok
[INFO] [stdout] test integration_initrd_detects_global_ipv6 ... ok
[INFO] [stdout] test integration_install_base_system_placeholder ... ok
[INFO] [stdout] test integration_partition_disk ... ok
[INFO] [stdout] test integration_network_operation_sequence ... ok
[INFO] [stdout] test integration_mkfs_btrfs_single ... ok
[INFO] [stdout] test integration_partition_nonexistent_device ... ok
[INFO] [stdout] test integration_abort_is_noop ... ok
[INFO] [stdout] test integration_prepare_dhcpcd_dirs_creates_run_and_lease_dirs ... ok
[INFO] [stdout] test integration_configure_dhcp_with_static_ip ... ok
[INFO] [stdout] test integration_resolve_via_uses_first_working_server ... ok
[INFO] [stdout] test integration_prepare_dhcpcd_dirs_is_idempotent ... ok
[INFO] [stdout] test integration_authenticate_wifi_no_hardware ... ok
[INFO] [stdout] test integration_enable_interface ... ok
[INFO] [stdout] test integration_initrd_check_ip_address_ipv6_only ... ok
[INFO] [stdout] test integration_routability_no_internet_when_all_probes_filtered ... ok
[INFO] [stdout] test integration_routability_reachable_via_tcp443_when_icmp_filtered ... ok
[INFO] [stdout] test integration_scan_wifi_no_hardware ... ok
[INFO] [stdout] test integration_shutdown_interface ... ok
[INFO] [stdout] test integration_routability_falls_back_when_no_local_resolver ... ok
[INFO] [stdout] test integration_tcp_connect_probe_reachable_and_dead ... ok
[INFO] [stdout] test integration_wifi_auth_error_is_state_record ... ok
[INFO] [stdout] test integration_wifi_timeout_is_state_record ... ok
[INFO] [stdout] test integration_select_primary_interface ... ok
[INFO] [stdout] test integration_routability_resolves_via_local_resolver_first ... ok
[INFO] [stdout] test integration_routability_falls_back_to_free_servers_when_local_dead ... ok
[INFO] [stdout] test integration_routability_local_resolver_dead_then_reachable_via_tcp443 ... ok
[INFO] [stdout] test integration_resolve_via_falls_back_past_dead_server ... ok
[INFO] [stderr]      Running tests/mixed_disk_tests.rs (/opt/rustwide/target/debug/build/ttyforce/d38a3f863777d42c/out/mixed_disk_tests-d38a3f863777d42c)
[INFO] [stdout] test integration_resolve_via_errors_when_all_dead ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 40 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.42s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test test_server_disk_grouping ... ok
[INFO] [stdout] test test_homelab_select_wd_single_btrfs ... ok
[INFO] [stdout] test test_homelab_mirror_filters_single_disk_groups ... ok
[INFO] [stdout] test test_server_raidz_filters_small_groups ... ok
[INFO] [stdout] test test_workstation_select_crucial_single ... ok
[INFO] [stdout] test test_workstation_select_samsung_btrfs_mirror ... ok
[INFO] [stdout] test test_workstation_select_crucial_btrfs_raid5 ... ok
[INFO] [stdout] test test_server_select_seagate_btrfs_raid5 ... ok
[INFO] [stdout] test test_workstation_disk_grouping ... ok
[INFO] [stdout] test test_server_select_intel_btrfs_mirror ... ok
[INFO] [stdout] test test_workstation_crucial_raid5_manifest_output ... ok
[INFO] [stdout] test test_workstation_select_wd_btrfs_mirror ... ok
[INFO] [stdout] test test_homelab_disk_grouping ... ok
[INFO] [stdout] test test_homelab_select_toshiba_btrfs_mirror ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/playbook_tests.rs (/opt/rustwide/target/debug/build/ttyforce/9dbd604f1c8ae703/out/playbook_tests-9dbd604f1c8ae703)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test playbook_abort_after_confirm ... ok
[INFO] [stdout] test playbook_abort_after_ethernet_online ... ok
[INFO] [stdout] test playbook_abort_after_wifi_connect ... ok
[INFO] [stdout] test playbook_ethernet_4disk_btrfs_raid5 ... ok
[INFO] [stdout] test playbook_abort_install ... ok
[INFO] [stdout] test playbook_wifi_1disk_full_install ... ok
[INFO] [stdout] test playbook_wifi_country_prompt ... ok
[INFO] [stdout] test playbook_ethernet_1disk_full_install ... ok
[INFO] [stdout] test playbook_reboot_after_install ... ok
[INFO] [stdout] test playbook_dead_ethernet_falls_to_wifi ... ok
[INFO] [stdout] test playbook_wifi_ethernet_prefers_ethernet ... ok
[INFO] [stdout] test playbook_mixed_drives_workstation_raid5 ... ok
[INFO] [stdout] test playbook_wifi_wrong_password_retry ... ok
[INFO] [stdout] test playbook_wifi_scan_refresh ... ok
[INFO] [stdout] test playbook_wifi_signal_timeout ... ok
[INFO] [stdout] test all_playbooks_parse_and_run ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/scenario_tests.rs (/opt/rustwide/target/debug/build/ttyforce/f8f27d738c458240/out/scenario_tests-f8f27d738c458240)
[INFO] [stdout] 
[INFO] [stdout] running 93 tests
[INFO] [stdout] test test_abort_after_install_unmounts ... ok
[INFO] [stdout] test test_abort_after_ethernet_cleanup_ops ... ok
[INFO] [stdout] test test_abort_at_confirmation ... ok
[INFO] [stdout] test test_abort_after_wifi_cleanup_ops ... ok
[INFO] [stdout] test test_abort_install ... ok
[INFO] [stdout] test test_abort_no_artifacts_no_cleanup ... ok
[INFO] [stdout] test test_action_manifest_records_errors ... ok
[INFO] [stdout] test test_action_manifest_records_all_operations ... ok
[INFO] [stdout] test test_advance_connectivity_router_max_retries_error ... ok
[INFO] [stdout] test test_advance_connectivity_full_flow ... ok
[INFO] [stdout] test test_advance_connectivity_dns_retries_after_ping ... ok
[INFO] [stdout] test test_advance_connectivity_wifi_flow ... ok
[INFO] [stdout] test test_advance_connectivity_online_returns_false ... ok
[INFO] [stdout] test test_back_from_raid_to_network_progress ... ok
[INFO] [stdout] test test_advance_connectivity_no_interface_returns_false ... ok
[INFO] [stdout] test test_back_from_confirm_to_disk_group ... ok
[INFO] [stdout] test test_btrfs_device_scan_before_mount ... ok
[INFO] [stdout] test test_confirm_with_ssh_users_shows_import_screen ... ok
[INFO] [stdout] test test_advance_connectivity_retries_router ... ok
[INFO] [stdout] test test_back_navigation ... ok
[INFO] [stdout] test test_cleanup_unmount_after_successful_install ... ok
[INFO] [stdout] test test_default_device_ethernet_first ... ok
[INFO] [stdout] test test_custom_etc_prefix_overrides_default ... ok
[INFO] [stdout] test test_crowded_wifi_select ... ok
[INFO] [stdout] test test_default_etc_prefix_is_at_etc_subvolume ... ok
[INFO] [stdout] test test_default_device_user_choice ... ok
[INFO] [stdout] test test_default_device_wifi_fallback ... ok
[INFO] [stdout] test test_apply_easy_disk_defaults_two_disks_picks_mirror ... ok
[INFO] [stdout] test test_default_mount_point_is_town_os ... ok
[INFO] [stdout] test test_easy_mode_with_ssh_users_shows_import_screen ... ok
[INFO] [stdout] test test_ethernet_already_connected_skips_dhcp ... ok
[INFO] [stdout] test test_ethernet_auto_detect_records_all_ops ... ok
[INFO] [stdout] test test_full_install_wifi_1disk ... ok
[INFO] [stdout] test test_ethernet_link_retry_budget_is_order_of_magnitude_longer ... ok
[INFO] [stdout] test test_generate_fstab_in_install_flow ... ok
[INFO] [stdout] test test_ethernet_link_failure ... ok
[INFO] [stdout] test test_generate_fstab_targets_etc_subvolume ... ok
[INFO] [stdout] test test_install_mode_advanced_back_from_confirm_goes_to_disk_select ... ok
[INFO] [stdout] test test_ethernet_no_ip_runs_dhcp ... ok
[INFO] [stdout] test test_full_install_ethernet_1disk ... ok
[INFO] [stdout] test test_full_install_ethernet_4disk_btrfs_raid5 ... ok
[INFO] [stdout] test test_ethernet_link_recovers_after_long_wait ... ok
[INFO] [stdout] test test_install_mode_easy_back_from_confirm_returns_to_mode_select ... ok
[INFO] [stdout] test test_install_mode_advanced_leads_to_network_config ... ok
[INFO] [stdout] test test_install_mode_easy_picks_single_for_one_disk ... ok
[INFO] [stdout] test test_install_mode_easy_full_install_flow ... ok
[INFO] [stdout] test test_install_mode_easy_polls_every_ethernet_candidate ... ok
[INFO] [stdout] test test_install_mode_easy_dead_ethernet_enters_carrier_wait ... ok
[INFO] [stdout] test test_install_mode_easy_carrier_wait_picks_first_live_ethernet ... ok
[INFO] [stdout] test test_install_mode_select_abort ... ok
[INFO] [stdout] test test_install_mode_easy_prefers_ethernet_over_wifi_when_both_present ... ok
[INFO] [stdout] test test_install_mode_select_back_from_network_config ... ok
[INFO] [stdout] test test_install_mode_easy_carrier_wait_times_out_to_network_config ... ok
[INFO] [stdout] test test_install_mode_easy_no_ethernet_hardware_drops_to_network_config ... ok
[INFO] [stdout] test test_install_mode_select_invalid_index_errors ... ok
[INFO] [stdout] test test_invalid_disk_group_selection ... ok
[INFO] [stdout] test test_invalid_raid_selection ... ok
[INFO] [stdout] test test_network_only_abort_returns_to_reboot_screen ... ok
[INFO] [stdout] test test_non_primary_interfaces_shut_down ... ok
[INFO] [stdout] test test_install_mode_easy_with_carrier_auto_picks_ethernet ... ok
[INFO] [stdout] test test_install_never_targets_root_partition ... ok
[INFO] [stdout] test test_install_mode_select_via_index_maps_to_enum ... ok
[INFO] [stdout] test test_install_mode_easy_picks_most_redundant_raid_4disks ... ok
[INFO] [stdout] test test_network_only_returns_to_reboot_screen_on_completion ... ok
[INFO] [stdout] test test_quit_from_any_screen ... ok
[INFO] [stdout] test test_persist_network_config_targets_etc_subvolume ... ok
[INFO] [stdout] test test_reboot_after_install ... ok
[INFO] [stdout] test test_new_preserves_legacy_entry_screen ... ok
[INFO] [stdout] test test_new_with_mode_select_starts_on_install_mode_screen ... ok
[INFO] [stdout] test test_skip_ssh_keys_flag_bypasses_import_screen ... ok
[INFO] [stdout] test test_wifi_ethernet_4disk_prefers_ethernet ... ok
[INFO] [stdout] test test_skip_all_ssh_keys_from_import_screen_installs ... ok
[INFO] [stdout] test test_subvolumes_are_etc_and_var ... ok
[INFO] [stdout] test test_wifi_qr_abort_from_display ... ok
[INFO] [stdout] test test_wifi_qr_code_connection ... ok
[INFO] [stdout] test test_wifi_dead_ethernet_4disk_falls_to_wifi ... ok
[INFO] [stdout] test test_wifi_qr_not_available_for_ethernet ... ok
[INFO] [stdout] test test_wifi_qr_display_enter_returns_to_network_progress ... ok
[INFO] [stdout] test test_wifi_qr_display_from_network_progress ... ok
[INFO] [stdout] test test_wifi_signal_timeout ... ok
[INFO] [stdout] test test_wifi_qr_string_escapes_special_chars ... ok
[INFO] [stdout] test test_wifi_select_refresh ... ok
[INFO] [stdout] test test_wifi_wrong_password ... ok
[INFO] [stdout] test test_wps_cancel_returns_to_wifi_select ... ok
[INFO] [stdout] test test_wifi_qr_not_available_when_not_online ... ok
[INFO] [stdout] test test_wifi_successful_connect_with_ip ... ok
[INFO] [stdout] test test_wifi_qr_password_stored_after_connect ... ok
[INFO] [stdout] test test_wps_completed_advances_to_network_progress ... ok
[INFO] [stdout] test test_wps_pending_keeps_polling ... ok
[INFO] [stdout] test test_wps_full_install_flow ... ok
[INFO] [stdout] test test_wps_start_from_wifi_select ... ok
[INFO] [stdout] test test_wifi_select_and_connect ... ok
[INFO] [stdout] test test_wifi_qr_string_open_network ... ok
[INFO] [stderr]    Doc-tests ttyforce
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 93 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5", kill_on_drop: false }`
[INFO] [stdout] eaed0c4cd4756e8aef390f58fc2469d0d5d9be0f46115c18d2e0cbb3d3f865a5
