[INFO] fetching crate rom-weaver-containers 0.17.0...
[INFO] testing rom-weaver-containers-0.17.0 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate rom-weaver-containers 0.17.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate rom-weaver-containers 0.17.0
[INFO] finished tweaking crates.io crate rom-weaver-containers 0.17.0
[INFO] tweaked toml for crates.io crate rom-weaver-containers 0.17.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rom-weaver-containers 0.17.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 rom-weaver-containers 0.17.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 xxhash-rust v0.8.18
[INFO] [stderr]   Downloaded find-msvc-tools v0.1.13
[INFO] [stderr]   Downloaded cc v1.4.7
[INFO] [stderr]   Downloaded macro_rules_attribute-proc_macro v0.2.3
[INFO] [stderr]   Downloaded never-say-never v6.6.666
[INFO] [stderr]   Downloaded zeekstd v0.6.2
[INFO] [stderr]   Downloaded macro_rules_attribute v0.2.3
[INFO] [stderr]   Downloaded simple_moving_average v1.0.2
[INFO] [stderr]   Downloaded base16ct v1.0.0
[INFO] [stderr]   Downloaded text_io v0.1.13
[INFO] [stderr]   Downloaded ciso v0.3.0
[INFO] [stderr]   Downloaded bitreader v0.3.11
[INFO] [stderr]   Downloaded path-slash v0.2.1
[INFO] [stderr]   Downloaded polonius-the-crab v0.6.0
[INFO] [stderr]   Downloaded pastey v0.2.3
[INFO] [stderr]   Downloaded maybe-async v0.2.11
[INFO] [stderr]   Downloaded multiversion v0.9.0
[INFO] [stderr]   Downloaded multiversion-macros v0.9.0
[INFO] [stderr]   Downloaded lzma-rs-perf-exp v0.2.1
[INFO] [stderr]   Downloaded lru v0.18.4
[INFO] [stderr]   Downloaded arbitrary-int v1.3.0
[INFO] [stderr]   Downloaded lz4_flex v0.11.6
[INFO] [stderr]   Downloaded proc-bitfield v0.5.3
[INFO] [stderr]   Downloaded twox-hash v2.1.3
[INFO] [stderr]   Downloaded bzip2 v0.6.1
[INFO] [stderr]   Downloaded proc-bitfield-macros v0.5.3
[INFO] [stderr]   Downloaded higher-kinded-types v0.3.1
[INFO] [stderr]   Downloaded bitbybit v1.4.0
[INFO] [stderr]   Downloaded chd v0.3.4
[INFO] [stderr]   Downloaded prettyplease v0.3.0
[INFO] [stderr]   Downloaded rom-weaver-checksum v0.17.0
[INFO] [stderr]   Downloaded claxon v0.4.3
[INFO] [stderr]   Downloaded ruzstd v0.8.3
[INFO] [stderr]   Downloaded aes v0.9.3
[INFO] [stderr]   Downloaded rom-weaver-core v0.17.0
[INFO] [stderr]   Downloaded lzma-rust2 v0.21.0
[INFO] [stderr]   Downloaded blake3 v1.8.7
[INFO] [stderr]   Downloaded zlib-rs v0.6.6
[INFO] [stderr]   Downloaded bindgen v0.73.2
[INFO] [stderr]   Downloaded flacenc v0.5.1
[INFO] [stderr]   Downloaded syn v3.0.0
[INFO] [stderr]   Downloaded encoding_rs v0.8.41
[INFO] [stderr]   Downloaded regex-automata v0.4.16
[INFO] [stderr]   Downloaded liblzma-sys v0.4.9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34
[INFO] running `Command { std: "docker" "start" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", 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" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34" "/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" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", 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" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling find-msvc-tools v0.1.13
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling crossbeam-utils v0.8.23
[INFO] [stderr]    Compiling jobserver v0.1.35
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling rustversion v1.0.23
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling crossbeam-deque v0.8.7
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling prettyplease v0.3.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling syn v3.0.0
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling zstd-safe v8.0.0
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling crc32fast v1.5.2
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling crc-catalog v2.5.0
[INFO] [stderr]    Compiling zlib-rs v0.6.6
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling bindgen v0.73.2
[INFO] [stderr]    Compiling twox-hash v2.1.3
[INFO] [stderr]    Compiling crc32c v0.6.8
[INFO] [stderr]    Compiling crc16 v0.4.0
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling cc v1.4.7
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling macro_rules_attribute-proc_macro v0.2.3
[INFO] [stderr]    Compiling built v0.7.7
[INFO] [stderr]    Compiling rustc-hash v2.1.3
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling arrayvec v0.7.8
[INFO] [stderr]    Compiling pastey v0.2.3
[INFO] [stderr]    Compiling rom-weaver-core v0.17.0
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling arbitrary-int v1.3.0
[INFO] [stderr]    Compiling encoding_rs v0.8.41
[INFO] [stderr]    Compiling rom-weaver-checksum v0.17.0
[INFO] [stderr]    Compiling flacenc v0.5.1
[INFO] [stderr]    Compiling never-say-never v6.6.666
[INFO] [stderr]    Compiling zerocopy v0.8.57
[INFO] [stderr]    Compiling path-slash v0.2.1
[INFO] [stderr]    Compiling macro_rules_attribute v0.2.3
[INFO] [stderr]    Compiling higher-kinded-types v0.3.1
[INFO] [stderr]    Compiling lzma-rs-perf-exp v0.2.1
[INFO] [stderr]    Compiling ruzstd v0.8.3
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling lz4_flex v0.11.6
[INFO] [stderr]    Compiling bitreader v0.3.11
[INFO] [stderr]    Compiling multiversion_no_op v1.0.0
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling core_detect v1.0.0
[INFO] [stderr]    Compiling openssl-src v300.6.1+3.6.3
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling hybrid-array v0.4.13
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling cpubits v0.1.1
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling seq-macro v0.3.6
[INFO] [stderr]    Compiling claxon v0.4.3
[INFO] [stderr]    Compiling text_io v0.1.13
[INFO] [stderr]    Compiling lru v0.18.4
[INFO] [stderr]    Compiling polonius-the-crab v0.6.0
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling crossbeam-channel v0.5.17
[INFO] [stderr]    Compiling itertools v0.15.0
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling block-padding v0.4.2
[INFO] [stderr]    Compiling inout v0.2.2
[INFO] [stderr]    Compiling simple_moving_average v1.0.2
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling xxhash-rust v0.8.18
[INFO] [stderr]    Compiling base16ct v1.0.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling zstd-sys v2.1.0+zstd.1.5.7
[INFO] [stderr]    Compiling libz-sys v1.1.29
[INFO] [stderr]    Compiling bzip2-sys v0.1.13+1.0.8
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling openssl-sys v0.9.117
[INFO] [stderr]    Compiling lz4-sys v1.11.1+lz4-1.10.0
[INFO] [stderr]    Compiling blake3 v1.8.7
[INFO] [stderr]    Compiling liblzma-sys v0.4.9
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling bzip2 v0.6.1
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling cipher v0.5.2
[INFO] [stderr]    Compiling md-5 v0.11.0
[INFO] [stderr]    Compiling sha1 v0.11.0
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling aes v0.9.3
[INFO] [stderr]    Compiling cbc v0.2.1
[INFO] [stderr]    Compiling lzma-rust2 v0.21.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling flate2 v1.1.10
[INFO] [stderr]    Compiling multiversion-macros v0.9.0
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling proc-bitfield-macros v0.5.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling bitbybit v1.4.0
[INFO] [stderr]    Compiling maybe-async v0.2.11
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.57
[INFO] [stderr]    Compiling multiversion v0.9.0
[INFO] [stderr]    Compiling proc-bitfield v0.5.3
[INFO] [stderr]    Compiling zstd v0.14.0
[INFO] [stderr]    Compiling zeekstd v0.6.2
[INFO] [stderr]    Compiling ciso v0.3.0
[INFO] [stderr]    Compiling chd v0.3.4
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling serde-big-array v0.5.1
[INFO] [stderr]    Compiling rom-weaver-containers v0.17.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: rom-weaver-containers@0.17.0: lzma-sdk: no usable MASM-compatible assembler (none of jwasm, asmc, asmc64, uasm, ml64 were found on PATH), so 7z decode uses the portable C loop (slower than 7zz). Install jwasm or set ROM_WEAVER_LZMA_ASM.
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 27s
[INFO] running `Command { std: "docker" "inspect" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", 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" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34" "/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 getrandom v0.4.3
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling rom-weaver-containers v0.17.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling chacha20 v0.10.2
[INFO] [stderr]    Compiling filetime v0.2.29
[INFO] [stderr]    Compiling rand v0.10.3
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling tar v0.4.46
[INFO] [stderr] warning: rom-weaver-containers@0.17.0: lzma-sdk: no usable MASM-compatible assembler (none of jwasm, asmc, asmc64, uasm, ml64 were found on PATH), so 7z decode uses the portable C loop (slower than 7zz). Install jwasm or set ROM_WEAVER_LZMA_ASM.
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 48.26s
[INFO] running `Command { std: "docker" "inspect" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", 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" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]    Compiling rom-weaver-containers v0.17.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: rom-weaver-containers@0.17.0: lzma-sdk: no usable MASM-compatible assembler (none of jwasm, asmc, asmc64, uasm, ml64 were found on PATH), so 7z decode uses the portable C loop (slower than 7zz). Install jwasm or set ROM_WEAVER_LZMA_ASM.
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 47.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rom_weaver_containers-9beebb3e386299bd)
[INFO] [stdout] 
[INFO] [stdout] running 763 tests
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::build_chd_v5_header_lays_out_fixed_fields ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::canonical_codes_from_lengths_assigns_and_validates ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::bits_for_value_counts_significant_bits ... ok
[INFO] [stdout] test archive_formats::tests::magic_signatures_are_well_formed ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::apply_cd_track_padding_rounds_frames_to_multiple ... ok
[INFO] [stdout] test archive_entries::tests::sanitize_archive_paths_normalizes_dots_and_rejects_unsafe_names ... ok
[INFO] [stdout] test archive_formats::tests::aliases_and_multiparts_are_supported ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::canonical_huffman_codes_rejects_unbalanced_distribution ... ok
[INFO] [stdout] test archive_entries::tests::collect_archive_inputs_handles_a_tiny_directory_tree ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::boot_sector_declares_matching_size_validates_geometry ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::canonical_huffman_codes_assigns_sequential_codes ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::codec_accepts_level_excludes_levelless_codecs ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::compute_overall_sha1_hashes_and_orders_metadata ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::crc16_ibm3740_matches_reference_check_value ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::disc_kind_metadata_tag_matches_mame_fourcc ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::disc_layout_logical_bytes_sums_padded_frames ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::disc_track_mode_label_tables_are_exhaustive ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::build_flac_encoder_config_maps_levels ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::cd_sector_clear_sync_and_ecc_zeroes_only_sync_and_ecc ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::cd_sector_ecc_helpers_reject_wrong_length ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::cd_sector_ecc_rejects_corrupted_payload ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::explicit_codec_plan_enforces_combination_rules ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::cd_sector_ecc_rejects_missing_sync_header ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::extract_name_uses_media_specific_extension ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::fixed_map_symbol_bit_lengths_match_table ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::gdi_track_descriptor_supports_only_gdrom_modes ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_valid_fat_boot_sector_accepts_and_rejects ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_valid_exfat_boot_sector_accepts_and_rejects ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::encode_avhuff_chav_hunk_validates_and_emits_header ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::encode_avhuff_video_payload_validates_dimensions ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_valid_gpt_header_accepts_and_rejects ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::encode_huffman_identity_payload_emits_fixed_tree_header ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_valid_mbr_partition_table_accepts_and_rejects ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::hunk_bytes_scales_disc_hunks_with_frame_count ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::cd_sector_ecc_round_trips_through_verification ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::chd_output_cleanup_never_deletes_refused_preexisting_output ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_known_volume_boot_sector_recognizes_each_filesystem ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_sector_signature_checks_boot_marker ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::is_cd_sized_iso_bounds_only_iso_inputs ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::is_extension_matches_case_insensitively ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::has_valid_ntfs_boot_sector_accepts_and_rejects ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::encode_v5_compressed_map_smoke ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::ensure_multiple_of_validates_alignment ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::infer_hd_geometry_synthesizes_chs_layout ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::msf_parsing_rejects_minute_overflow ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::media_kind_and_label_cover_each_create_kind ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::chd_output_cleanup_removes_partials_only_when_uncommitted ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::map_codec_resolves_aliases_case_insensitively ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::map_symbol_bit_lengths_produce_decodable_trees ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::msb_bit_writer_packs_most_significant_first ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::codec_label_round_trips_known_codecs ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::parse_create_mode_override_maps_known_modes ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::parse_explicit_codecs_handles_separators_and_blanks ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::rle_encode_map_symbols_collapses_runs ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::sha1_hex_helpers_treat_zero_digest_as_absent ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::msf_parsing_round_trips ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::should_auto_infer_single_track_cd_keys_on_extension ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::normalize_compression_plan_maps_disc_codecs_only ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::supports_create_codec_is_scoped_per_media ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::read_le_helpers_are_bounds_checked ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::resolve_compression_level_enforces_codec_ranges ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::rust_metadata_entries_per_media_kind ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::supports_rust_create_requires_contiguous_codec_slots ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::swap_audio_bytes_only_swaps_audio_tracks ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::pcm_i16_interleaved_to_samples_respects_byte_order ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::unit_bytes_per_create_kind ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::supports_rust_encode_codec_excludes_store ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::patch_chd_header_writes_big_endian_and_restores_cursor ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::write_huffman_tree_rle_lengths_validates_configuration ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::write_u48_be_encodes_and_bounds_check ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::parse_disc_mode_maps_known_track_types ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::split_token_handles_quotes_and_whitespace ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::parse_wave_file_rejects_oversized_fmt_chunk ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::single_track_cd_and_volume_size_heuristics ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::write_u24_be_encodes_and_bounds_check ... ok
[INFO] [stdout] test chd::handler::chd_handler::chd_tests::split_checksum_workers_share_the_operation_thread_budget ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::compressed_create_rejects_codecs_the_media_cannot_use ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::compressed_create_rejects_degenerate_geometry_and_unwritable_outputs ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::payload_selection_forces_compression_only_for_self_describing_codecs ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::create_uncompressed_rust_stream_handles_an_empty_source ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::hunk_hash_key_pairs_a_crc16_with_a_sha1 ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::record_pipeline_hunk_rejects_a_payload_past_the_v5_map_limit ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::create_uncompressed_rust_stream_rejects_av_media ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::compressed_create_deduplicates_repeated_hunks_within_one_image ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::record_pipeline_hunk_reports_a_failed_payload_write ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::load_parent_reuse_index_rejects_mismatched_parents ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::create_uncompressed_rust_stream_rejects_degenerate_geometry ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::compressed_create_reports_geometry_in_its_header ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::cook_disc_frame_payload_swaps_only_audio_bytes ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::create_uncompressed_rust_raw_reports_unreadable_inputs_and_outputs ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::expected_frames_sums_and_saturates ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::apply_cd_track_padding_rounds_up_to_four_frame_boundary ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::data_bytes_matches_each_track_mode ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::logical_bytes_succeeds_for_track_sizes_near_u32_max ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::record_pipeline_hunk_emits_self_and_parent_references ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::create_uncompressed_rust_stream_writes_hard_disk_geometry ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::create_uncompressed_rust_raw_round_trips_a_partial_final_hunk ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::apply_cd_track_padding_is_a_no_op_for_gd_rom ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_reads_motorola_files_without_audio_swapping ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::record_pipeline_hunk_stores_a_new_payload_and_advances_the_offset ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_rejects_a_wave_file_backing_a_data_track ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::logical_bytes_sums_track_frame_sizes ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_treats_index_00_as_a_pregap_with_data ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_disc_input_falls_back_to_cd_rom_without_markers ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_accepts_a_wave_audio_track ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_disc_input_ignores_a_gdi_next_to_a_non_cue_sheet ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_disc_input_prefers_a_sibling_gdi_over_the_cue ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_rejects_inconsistent_track_geometry ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_keeps_pregap_and_postgap_directives ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_disc_input_synthesizes_a_gd_rom_from_high_density_markers ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_gdi_file_accepts_cooked_sectors_and_a_file_offset ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::compressed_create_reuses_parent_hunks_for_identical_data ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_resolves_track_offsets_and_applies_cd_padding ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_gdi_file_rejects_inconsistent_track_tables ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_gdi_file_rejects_malformed_sheets ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_gdi_file_resolves_physical_offsets_into_pad_frames ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::plan_cd_selection_uses_single_bin_when_modes_match_and_not_forced_split ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::plan_cd_selection_splits_when_track_modes_differ ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_cue_file_rejects_malformed_sheets ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::plan_cd_selection_rejects_a_selection_matching_nothing ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::route_frame_empty_track_list_is_immediately_finished ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::route_frame_is_a_no_op_once_finished ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::route_frame_pad_frames_are_silently_consumed ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::track_output_name_formats_with_track_number ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::swap_audio_bytes_only_affects_audio_mode ... ok
[INFO] [stdout] test extract_support::tests::build_extract_checksum_emitted_file_detail_needs_checksum_values ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::parse_gdi_file_sorts_out_of_order_track_entries ... ok
[INFO] [stdout] test extract_support::tests::attach_extract_checksum_details_only_decorates_successful_reports ... ok
[INFO] [stdout] test extract_support::tests::copy_reader_with_progress_stays_silent_without_a_known_total ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::plan_cd_selection_honors_explicit_split_bin_request ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::route_frame_single_track_emits_trimmed_data_bytes ... ok
[INFO] [stdout] test extract_support::tests::emit_variant_plan_forwards_the_planned_rows ... ok
[INFO] [stdout] test extract_support::tests::emit_container_indeterminate_progress_reports_a_running_event ... ok
[INFO] [stdout] test extract_support::tests::extract_chunk_writer_rejects_a_chunk_of_the_wrong_length ... ok
[INFO] [stdout] test extract_support::tests::emit_container_step_progress_skips_a_zero_step_total ... ok
[INFO] [stdout] test extract_support::tests::extract_chunk_writer_writes_ordered_chunks_and_hashes_them ... ok
[INFO] [stdout] test extract_support::tests::decode_tasks_ordered_keeps_writer_window_bounded ... ok
[INFO] [stdout] test extract_support::tests::extract_hasher_with_a_known_length_produces_variant_rows ... ok
[INFO] [stdout] test extract_support::tests::extract_hasher_rom_only_skips_sidecars_and_disc_sheets ... ok
[INFO] [stdout] test extract_support::tests::output_extension_reads_the_trailing_component ... ok
[INFO] [stdout] test handlers_tests::tests::bz2_stream_capabilities_are_extract_only ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::plan_cd_selection_filters_to_a_specific_track_selection ... ok
[INFO] [stdout] test extract_support::tests::copy_reader_with_progress_copies_every_byte_and_reports_progress ... ok
[INFO] [stdout] test handlers_tests::tests::ambiguous_disc_image_extension_matches_bin_case_insensitively ... ok
[INFO] [stdout] test handlers_tests::tests::chd_cd_override_rejects_invalid_raw_sector_size ... ok
[INFO] [stdout] test handlers_tests::tests::chd_create_auto_infers_hd_only_from_disk_signatures ... ok
[INFO] [stdout] test extract_support::tests::extract_hasher_is_absent_without_requested_algorithms ... ok
[INFO] [stdout] test handlers_tests::tests::chd_create_mode_overrides_adjust_inferred_kind ... ok
[INFO] [stdout] test handlers_tests::tests::chd_create_auto_infers_sector_sized_cd_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::chd_default_codecs_for_dvd_inputs_match_rust_native_policy ... ok
[INFO] [stdout] test handlers_tests::tests::chd_default_codecs_for_raw_inputs_match_rust_native_policy ... ok
[INFO] [stdout] test handlers_tests::tests::chd_explicit_codec_lists_support_multiple_codecs ... ok
[INFO] [stdout] test handlers_tests::tests::chd_explicit_codec_lists_accept_huff_and_avhuff_aliases ... ok
[INFO] [stdout] test handlers_tests::tests::chd_explicit_codec_lists_reject_too_many_entries ... ok
[INFO] [stdout] test handlers_tests::tests::chd_mode_aliases_route_to_chd_handler ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_backend_create_attempt_accepts_huff_codec_slots ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::route_frame_advances_across_tracks_including_a_zero_frame_track ... ok
[INFO] [stdout] test extract_support::tests::extract_hasher_without_a_known_length_produces_a_plain_checksum ... ok
[INFO] [stdout] test handlers_tests::tests::chd_default_codecs_for_cd_inputs_match_rust_native_policy ... ok
[INFO] [stdout] test chd::handler::chd_handler::create_pipeline::create_pipeline_tests::compressed_create_matches_between_the_sequential_and_threaded_paths ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_backend_store_attempt_policy_matches_supported_codecs ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_cd_zlib_payload_marks_and_clears_reconstructable_ecc ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::read_disc_tracks_recovers_the_cd_layout_written_at_create_time ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_gd_honors_a_single_track_selection ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_avhuff_round_trip ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_gd_writes_a_gdi_and_per_track_bins ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_cd_rejects_a_chd_whose_units_are_not_cd_frames ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_cd_writes_a_single_bin_and_a_multi_track_cue ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_cd_rejects_a_selection_that_matches_nothing ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_cd_multi_codec_round_trip ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_cd_split_bin_writes_one_file_per_track ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_cd_flac_payload_round_trip_matches_input_bytes ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_cd_store_round_trip ... ok
[INFO] [stdout] test chd::handler::chd_handler::disc_extract::disc_extract_tests::extract_cd_honors_a_single_track_selection ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_raw_flac_payload_round_trip_matches_input_bytes ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_compressed_create_compacts_repeated_map_hunks ... ok
[INFO] [stdout] test handlers_tests::tests::cso_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::cso_create_is_rejected_with_extract_only_variant ... ok
[INFO] [stdout] test handlers_tests::tests::chd_create_and_extract_with_parent_round_trip ... ok
[INFO] [stdout] test handlers_tests::tests::cso_extract_round_trips_to_iso_output ... ok
[INFO] [stdout] test handlers_tests::tests::cso_list_entries_normalizes_output_name ... ok
[INFO] [stdout] test handlers_tests::tests::cso_probe_rejects_wrong_magic ... ok
[INFO] [stdout] test handlers_tests::tests::extract_only_formats_reject_direct_create ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_huff_codec_slots ... ok
[INFO] [stdout] test handlers_tests::tests::gcz_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::find_by_output_extension_resolves_by_extension_only ... ok
[INFO] [stdout] test handlers_tests::tests::gz_stream_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::libarchive_extract_wrapper_rejects_garbage_archive ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_dvd_and_hd_round_trip ... ok
[INFO] [stdout] test handlers_tests::tests::libarchive_list_entries_wrapper_rejects_garbage_archive ... ok
[INFO] [stdout] test handlers_tests::tests::libarchive_probe_details_wrapper_rejects_garbage_archive ... ok
[INFO] [stdout] test handlers_tests::tests::likely_disc_image_size_requires_cd_or_dvd_sector_alignment ... ok
[INFO] [stdout] test handlers_tests::tests::libarchive_stream_probe_wrapper_rejects_empty_payload ... ok
[INFO] [stdout] test handlers_tests::tests::nfs_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_store_create_round_trip_matches_source_payload ... ok
[INFO] [stdout] test handlers_tests::tests::nod_ensure_single_create_input_rejects_multiple_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::likely_disc_image_source_only_gates_ambiguous_extensions ... ok
[INFO] [stdout] test handlers_tests::tests::nod_open_disc_rejects_non_disc_input ... ok
[INFO] [stdout] test handlers_tests::tests::nod_validate_i8_level_rejects_overflowing_level ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_capabilities_report_parallel_extract_threads ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_multi_codec_raw_round_trip ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_extract_reports_missing_selection ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_lists_and_extracts_single_disc_outputs ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_probe_rejects_out_of_range_psar_offset ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_probe_rejects_truncated_source ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_probe_rejects_invalid_first_section_offset ... ok
[INFO] [stdout] test handlers_tests::tests::probe_prefers_signature_over_mismatched_extension ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_rejects_invalid_magic_and_payload_headers ... ok
[INFO] [stdout] test handlers_tests::tests::probe_routes_pbp_signature_even_with_wrong_extension ... ok
[INFO] [stdout] test handlers_tests::tests::probe_routes_unknown_extension_with_chd_signature_to_chd_handler ... ok
[INFO] [stdout] test handlers_tests::tests::recommend_compress_format_returns_7z_for_unrecognized_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::rar_capabilities_report_parallel_extract_threads ... ok
[INFO] [stdout] test handlers_tests::tests::recommend_compress_format_returns_rvz_for_gamecube_wii_discs ... ok
[INFO] [stdout] test handlers_tests::tests::recommend_compress_format_returns_rvz_for_wbfs_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::recommend_container_for_identity_maps_platform_and_disc_format ... ok
[INFO] [stdout] test handlers_tests::tests::registry_contains_planned_formats ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_multi_disc_selection_supports_exact_glob_and_cue_fanout ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_cd_codec_aliases_round_trip ... ok
[INFO] [stdout] test handlers_tests::tests::rvz_create_splits_preloader_and_processor_threads ... ok
[INFO] [stdout] test handlers_tests::tests::rvz_extract_first_progress_chunk_caps_large_outputs_at_point_one_percent ... ok
[INFO] [stdout] test handlers_tests::tests::selection_matcher_preserves_exact_and_prefix_matches ... ok
[INFO] [stdout] test handlers_tests::tests::selection_matcher_reports_missing_glob_matches ... ok
[INFO] [stdout] test handlers_tests::tests::regular_archive_list_entries_supports_libarchive_formats ... ok
[INFO] [stdout] test handlers_tests::tests::selection_matcher_supports_glob_patterns ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_capabilities_report_parallel_threads ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_level9_small_inputs_reduce_dict_under_wasm_budget ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_memory_budget_scales_thread_cap ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_create_rejects_codecs_not_supported_by_libarchive ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_parse_codec_supports_lzma2_only ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_parse_level_accepts_range_edges_and_rejects_below_range ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_preset_dictionary_matches_seven_zip_table ... ok
[INFO] [stdout] test handlers_tests::tests::gz_stream_extract_produces_byte_identical_output ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_round_trip_supports_lzma2_create ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_sdk_thread_plan_matches_level_normalization ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_sdk_thread_plan_stays_inside_mtcoder_limits ... ok
[INFO] [stdout] test handlers_tests::tests::recommend_compress_format_returns_rvz_for_wia_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_small_input_reports_single_thread ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_wasm_budget_keeps_level5_parallel_without_oversubscribing_large_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::tar_bz2_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::tar_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::tar_gz_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_dvd_default_codec_plan_round_trip ... ok
[INFO] [stdout] test handlers_tests::tests::tar_xz_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::wbfs_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::tgc_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::wia_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_cd_default_codec_plan_round_trip ... ok
[INFO] [stdout] test handlers_tests::tests::wbfs_extract_round_trips_to_iso_output ... ok
[INFO] [stdout] test handlers_tests::tests::xiso_capabilities_allow_extract_but_disable_create ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_capabilities_report_parallel_create_threads ... ok
[INFO] [stdout] test handlers_tests::tests::xz_stream_capabilities_are_extract_only ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_create_rejects_multiple_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_create_rejects_out_of_range_level ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_create_rejects_unsupported_codec ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_create_accepts_zstd_level_minus_7 ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_extract_name_maps_to_matching_uncompressed_extension ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_extract_name_uses_underlying_magic_for_generic_z3ds_inputs ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_is_a_single_payload_codec_container ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_create_runtime_threads_match_capability_with_single_chunk_input ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_probe_rejects_compressed_size_past_eof ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_probe_rejects_metadata_size_past_eof ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_probe_rejects_truncated_header ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_probe_rejects_unsupported_header_size ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_probe_rejects_unsupported_version ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_probe_rejects_wrong_magic ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_registers_azahar_extensions ... ok
[INFO] [stdout] test handlers_tests::tests::zip_capabilities_report_parallel_extract_threads ... ok
[INFO] [stdout] test handlers_tests::tests::rvz_create_and_nested_extract_runtime_threads_match_capability ... ok
[INFO] [stdout] test handlers_tests::tests::zip_create_rejects_codecs_not_supported_by_libarchive ... ok
[INFO] [stdout] test handlers_tests::tests::zip_create_accepts_zstd_range_edges ... ok
[INFO] [stdout] test handlers_tests::tests::zip_runtime_threads_keep_parallel_create_for_single_entry ... ok
[INFO] [stdout] test handlers_tests::tests::zip_zstd_create_single_threads_small_input ... ok
[INFO] [stdout] test handlers_tests::tests::zip_zstd_levels_preserve_requested_values ... ok
[INFO] [stdout] test handlers_tests::tests::zip_zstd_memory_budget_scales_thread_cap ... ok
[INFO] [stdout] test handlers_tests::tests::zst_stream_capabilities_are_extract_only ... ok
[INFO] [stdout] test libarchive::entries::tests::a_missing_source_is_reported_by_every_entry_helper ... ok
[INFO] [stdout] test libarchive::entries::tests::archive_names_are_normalized_and_traversal_is_refused ... ok
[INFO] [stdout] test libarchive::entries::tests::format_matching_accepts_both_rar_generations_and_rejects_mismatches ... ok
[INFO] [stdout] test libarchive::entries::tests::listing_file_entries_rejects_a_truncated_archive ... ok
[INFO] [stdout] test libarchive::entries::tests::listing_file_entries_skips_directories_and_normalizes_names ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_auto_infers_cd_iso_round_trip ... ok
[INFO] [stdout] test libarchive::entries::tests::relaxed_archive_names_keep_traversal_segments_but_trim_wrappers ... ok
[INFO] [stdout] test libarchive::entries::tests::probing_a_truncated_archive_is_reported ... ok
[INFO] [stdout] test libarchive::entries::tests::the_entry_reader_rejects_an_entry_that_no_longer_matches ... ok
[INFO] [stdout] test libarchive::entries::tests::the_entry_reader_reports_an_index_past_the_end_of_the_archive ... ok
[INFO] [stdout] test libarchive::entries::tests::the_entry_reader_streams_the_named_entry ... ok
[INFO] [stdout] test libarchive::entries::tests::visiting_a_selection_surfaces_a_visitor_error ... ok
[INFO] [stdout] test libarchive::entries::tests::visiting_no_selected_indices_matches_nothing_and_never_opens_the_archive ... ok
[INFO] [stdout] test libarchive::entries::tests::the_entry_reader_rejects_a_directory_entry ... ok
[INFO] [stdout] test libarchive::tests::check_free_status_translates_a_non_ok_status_to_validation_error ... ok
[INFO] [stdout] test libarchive::tests::check_status_ok_and_warn_are_success ... ok
[INFO] [stdout] test handlers_tests::tests::chd_extract_with_parent_option_rejects_non_parented_chd ... ok
[INFO] [stdout] test libarchive::tests::entry_metadata_reports_file_sizes_and_no_solid_block_for_zip ... ok
[INFO] [stdout] test libarchive::tests::path_to_cstring_accepts_a_normal_path ... ok
[INFO] [stdout] test libarchive::tests::path_to_cstring_rejects_interior_nul_byte ... ok
[INFO] [stdout] test libarchive::tests::probe_and_list_regular_archive_entries_report_expected_values ... ok
[INFO] [stdout] test libarchive::tests::probe_regular_archive_format_detects_zip ... ok
[INFO] [stdout] test libarchive::tests::list_regular_archive_entries_treats_a_zero_byte_file_as_the_empty_format ... ok
[INFO] [stdout] test libarchive::tests::read_archive_open_filename_translates_missing_file_error ... ok
[INFO] [stdout] test libarchive::tests::list_regular_archive_entries_rejects_a_truncated_archive ... ok
[INFO] [stdout] test libarchive::tests::seven_zip_write_then_low_level_read_round_trips_payload ... ok
[INFO] [stdout] test libarchive::tests::visit_selected_regular_archive_entries_reads_selected_payloads ... ok
[INFO] [stdout] test libarchive_support::tests::a_directory_task_whose_parent_is_a_file_fails_the_commit ... ok
[INFO] [stdout] test libarchive_support::tests::a_failed_install_rolls_back_the_directory_it_created ... ok
[INFO] [stdout] test libarchive::tests::write_archive_open_filename_rejects_missing_parent_directory ... ok
[INFO] [stdout] test libarchive_support::tests::a_kind_filter_that_matches_no_entry_is_reported ... ok
[INFO] [stdout] test libarchive_support::tests::a_stream_probe_reports_the_decoded_size_of_a_gzip_payload ... ok
[INFO] [stdout] test handlers_tests::tests::wia_extract_round_trips_to_iso_output ... ok
[INFO] [stdout] test libarchive_support::tests::buffer_pool_hands_out_distinct_buffers_until_they_are_returned ... ok
[INFO] [stdout] test libarchive_support::tests::buffer_pool_rejects_undersized_buffers ... ok
[INFO] [stdout] test libarchive_support::tests::buffer_pool_stops_retaining_past_its_ceiling ... ok
[INFO] [stdout] test libarchive_support::tests::confined_root_normalization_drops_current_dir_and_resolves_parents ... ok
[INFO] [stdout] test libarchive_support::tests::confined_wasm_root_normalization_rejects_parent_escape ... ok
[INFO] [stdout] test libarchive_support::tests::entry_unique_staging_preserves_alias_last_wins_and_rollback ... ok
[INFO] [stdout] test libarchive_support::tests::entry_records_carry_file_sizes_and_leave_directories_sizeless ... ok
[INFO] [stdout] test libarchive_support::tests::every_read_filter_reports_its_libarchive_module_name ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_cover_every_task_contiguously ... ok
[INFO] [stdout] test libarchive_support::tests::extract_achievable_threads_never_exceed_the_solid_block_count ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_cover_every_task_contiguously_across_solid_blocks ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_do_not_split_a_solid_block_at_a_streamless_entry ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_fall_back_to_count_split_without_sizes ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_keep_one_solid_block_on_one_worker ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_keep_trailing_metadata_out_of_their_own_worker ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_never_exceed_the_worker_count ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_split_evenly_sized_entries_across_workers ... ok
[INFO] [stdout] test libarchive_support::tests::extract_parallel_units_track_solid_blocks ... ok
[INFO] [stdout] test libarchive_support::tests::extract_paths_outside_the_output_directory_are_rejected ... ok
[INFO] [stdout] test libarchive_support::tests::extract_paths_through_an_existing_link_are_rejected ... ok
[INFO] [stdout] test libarchive_support::tests::extract_transaction_atomically_replaces_existing_output ... ok
[INFO] [stdout] test libarchive_support::tests::extract_transaction_rejects_parent_replaced_with_symlink_after_staging ... ok
[INFO] [stdout] test libarchive_support::tests::extract_chunks_split_on_solid_block_boundaries ... ok
[INFO] [stdout] test libarchive_support::tests::an_archive_of_only_ignored_files_is_reported ... ok
[INFO] [stdout] test libarchive_support::tests::extract_transaction_rejects_reserved_staging_namespace ... ok
[INFO] [stdout] test libarchive_support::tests::extract_transaction_removes_uncommitted_staging_outputs ... ok
[INFO] [stdout] test libarchive_support::tests::extract_transaction_restores_all_overwrites_when_later_install_fails ... ok
[INFO] [stdout] test libarchive_support::tests::extracting_an_archive_without_entries_produces_no_outputs ... ok
[INFO] [stdout] test libarchive_support::tests::no_overwrite_install_falls_back_when_hard_links_are_unsupported ... ok
[INFO] [stdout] test libarchive_support::tests::no_overwrite_transaction_installs_completed_staged_output ... ok
[INFO] [stdout] test libarchive_support::tests::pooled_chunks_never_expose_stale_bytes_after_a_short_read ... ok
[INFO] [stdout] test libarchive_support::tests::no_overwrite_transaction_rejects_destination_created_after_staging ... ok
[INFO] [stdout] test libarchive_support::tests::wasm_transaction_owner_changes_across_module_start_times ... ok
[INFO] [stdout] test libarchive_support::tests::sevenz_entries_report_their_real_solid_block ... ok
[INFO] [stdout] test libarchive_support::tests::kind_filtered_tasks_prefer_payloads_and_fall_back_to_nested_containers ... ok
[INFO] [stdout] test nod::build::gc::tests::a_gamecube_disc_without_a_user_size_is_padded_to_a_mini_dvd ... ok
[INFO] [stdout] test nod::build::gc::tests::a_wii_fst_whose_size_is_not_a_multiple_of_four_is_padded ... ok
[INFO] [stdout] test nod::build::gc::tests::add_file_rejects_an_offset_that_is_not_aligned ... ok
[INFO] [stdout] test nod::build::gc::tests::a_wii_partition_pads_the_user_region_to_a_sector ... ok
[INFO] [stdout] test nod::build::gc::tests::an_original_fst_is_regenerated_when_it_lists_an_unknown_file ... ok
[INFO] [stdout] test nod::build::gc::tests::build_propagates_a_system_file_read_error ... ok
[INFO] [stdout] test nod::build::gc::tests::build_rejects_a_bi2_image_of_the_wrong_size ... ok
[INFO] [stdout] test nod::build::gc::tests::build_lays_out_system_files_then_user_files_with_junk_between ... ok
[INFO] [stdout] test nod::build::gc::tests::build_rejects_a_boot_image_of_the_wrong_size ... ok
[INFO] [stdout] test nod::build::gc::tests::build_rejects_a_game_title_that_does_not_fit_the_header ... ok
[INFO] [stdout] test nod::build::gc::tests::build_rejects_an_fst_image_that_does_not_match_its_declared_size ... ok
[INFO] [stdout] test nod::build::gc::tests::build_rejects_a_user_region_that_starts_before_the_fst ... ok
[INFO] [stdout] test nod::build::gc::tests::build_rejects_overlapping_user_files ... ok
[INFO] [stdout] test nod::build::gc::tests::build_requires_an_apploader_and_a_dol ... ok
[INFO] [stdout] test nod::build::gc::tests::find_file_gap_only_reports_a_gap_after_the_fst ... ok
[INFO] [stdout] test nod::build::gc::tests::cloneable_and_non_cloneable_streams_expose_the_same_image ... ok
[INFO] [stdout] test nod::build::gc::tests::gc_partition_stream_reproduces_the_written_image ... ok
[INFO] [stdout] test libarchive_support::tests::zero_byte_entries_extract_on_the_step_progress_path ... ok
[INFO] [stdout] test nod::build::gc::tests::insert_junk_data_leaves_a_fully_packed_layout_untouched ... ok
[INFO] [stdout] test nod::build::gc::tests::gc_partition_stream_seeks_from_every_anchor ... ok
[INFO] [stdout] test nod::build::gc::tests::gcm_align_rounds_up_by_31_and_clears_the_low_two_bits ... ok
[INFO] [stdout] test nod::build::gc::tests::system_files_can_be_supplied_as_boot_bi2_and_fst_images ... ok
[INFO] [stdout] test nod::build::gc::tests::write_kind_names_identify_the_source_of_each_span ... ok
[INFO] [stdout] test nod::build::gc::tests::junk_regions_are_not_zero_and_repeat_per_sector ... ok
[INFO] [stdout] test nod::build::gc::tests::write_to_propagates_a_callback_error ... ok
[INFO] [stdout] test nod::build::gc::tests::write_to_emits_the_disc_header_overrides ... ok
[INFO] [stdout] test nod::build::gc::tests::write_to_reports_a_callback_that_writes_the_wrong_length ... ok
[INFO] [stdout] test nod::build::gc::tests::write_to_emits_file_payloads_and_a_parseable_fst ... ok
[INFO] [stdout] test nod::common::tests::compression_from_str_accepts_colon_and_dot_level_separators ... ok
[INFO] [stdout] test nod::common::tests::compression_from_str_rejects_unknown_names_and_unparsable_levels ... ok
[INFO] [stdout] test nod::common::tests::format_default_block_size_matches_each_format ... ok
[INFO] [stdout] test nod::common::tests::format_default_compression_matches_each_format ... ok
[INFO] [stdout] test nod::common::tests::format_display_names_every_variant ... ok
[INFO] [stdout] test nod::common::tests::partition_info_data_size_and_sector_membership ... ok
[INFO] [stdout] test nod::common::tests::partition_info_exposes_views_into_raw_boot ... ok
[INFO] [stdout] test nod::common::tests::partition_info_fst_is_none_without_a_table_and_parses_one_when_present ... ok
[INFO] [stdout] test nod::common::tests::partition_kind_display_and_dir_name_cover_every_variant ... ok
[INFO] [stdout] test nod::common::tests::partition_kind_from_u32_maps_the_known_values ... ok
[INFO] [stdout] test nod::common::tests::compression_from_str_accepts_every_alias_without_a_level ... ok
[INFO] [stdout] test nod::common::tests::validate_level_accepts_in_range_levels ... ok
[INFO] [stdout] test nod::common::tests::validate_level_rejects_out_of_range_levels ... ok
[INFO] [stdout] test nod::common::tests::validate_level_substitutes_the_default_for_zero ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_lays_out_directories_and_reuses_string_table_entries ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_stores_wii_file_offsets_shifted ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_with_string_table_appends_names_that_are_missing ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_with_string_table_falls_back_when_the_root_name_is_not_utf8 ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_with_string_table_keeps_the_existing_ordering ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_closes_a_directory_when_the_next_path_switches_away ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_with_string_table_rejects_a_missing_terminator ... ok
[INFO] [stdout] test nod::common::tests::compression_display_omits_the_level_when_it_is_zero ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_find_ignores_case_and_empty_path_segments ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_find_resolves_root_files_and_nested_paths ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_find_returns_none_for_missing_entries ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_get_name_decodes_shift_jis ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_get_name_reports_an_out_of_bounds_name_offset ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_builder_with_string_table_rejects_an_empty_table ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_get_name_reports_a_name_that_is_not_null_terminated ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_iter_yields_full_paths_for_every_node ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_new_rejects_a_buffer_shorter_than_the_root_node ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_new_rejects_a_string_table_past_the_end_of_the_buffer ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_parses_nodes_and_string_table ... ok
[INFO] [stdout] test nod::disc::fst::tests::node_new_packs_kind_name_offset_and_sizes ... ok
[INFO] [stdout] test nod::disc::fst::tests::node_offsets_are_shifted_for_wii_files_only ... ok
[INFO] [stdout] test nod::disc::fst::tests::node_setters_round_trip_every_field ... ok
[INFO] [stdout] test nod::disc::fst::tests::fst_iter_falls_back_to_a_placeholder_for_an_unreadable_name ... ok
[INFO] [stdout] test nod::disc::gcn::tests::a_gamecube_partition_reader_is_not_a_wii_reader ... ok
[INFO] [stdout] test nod::disc::gcn::tests::a_cloned_partition_reader_restarts_at_the_beginning ... ok
[INFO] [stdout] test nod::disc::gcn::tests::partition_meta_is_cached_after_the_first_read ... ok
[INFO] [stdout] test nod::disc::gcn::tests::a_reader_sized_past_the_image_stops_at_the_last_readable_sector ... ok
[INFO] [stdout] test nod::disc::gcn::tests::partition_meta_reads_every_system_file ... ok
[INFO] [stdout] test nod::disc::gcn::tests::partition_reader_seeks_from_every_anchor ... ok
[INFO] [stdout] test nod::disc::gcn::tests::partition_reader_streams_the_whole_image ... ok
[INFO] [stdout] test nod::disc::gcn::tests::open_file_streams_a_file_listed_in_the_fst ... ok
[INFO] [stdout] test nod::disc::gcn::tests::read_dol_and_read_fst_follow_the_boot_header_offsets ... ok
[INFO] [stdout] test nod::disc::gcn::tests::read_part_meta_matches_the_partition_reader ... ok
[INFO] [stdout] test nod::disc::gcn::tests::read_fst_reports_an_out_of_range_offset ... ok
[INFO] [stdout] test nod::disc::gcn::tests::the_partition_reader_reads_across_a_sector_boundary ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_short_period_matches_round_trip ... ok
[INFO] [stdout] test nod::disc::gcn::tests::the_disc_reader_exposes_the_gamecube_fst_and_rejects_other_partition_kinds ... ok
[INFO] [stdout] test nod::disc::gcn::tests::the_preloader_serves_the_same_bytes_with_worker_threads ... ok
[INFO] [stdout] test handlers_tests::tests::pbp_extract_runtime_threads_match_capability ... ok
[INFO] [stdout] test nod::disc::reader::tests::fixture_ticket_title_key_decrypts_under_the_retail_common_key ... ok
[INFO] [stdout] test handlers_tests::tests::z3ds_nested_extract_runtime_threads_match_capability_with_two_chunk_input ... ok
[INFO] [stdout] test handlers_tests::tests::chd_runtime_threads_match_capabilities_for_create_and_nested_extract ... ok
[INFO] [stdout] test libarchive_support::tests::a_stream_probe_reports_a_truncated_gzip_payload ... ok
[INFO] [stdout] test nod::disc::reader::tests::gamecube_discs_have_one_data_partition_and_no_region_info ... ok
[INFO] [stdout] test nod::disc::reader::tests::fill_buf_internal_serves_the_rewritten_disc_header ... ok
[INFO] [stdout] test nod::disc::reader::tests::force_decrypted_rewrites_the_disc_header_and_partition_flags ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_only_create_supports_cd_compressed_round_trip ... ok
[INFO] [stdout] test nod::disc::reader::tests::force_encrypted_leaves_the_partitions_marked_encrypted ... ok
[INFO] [stdout] test nod::disc::reader::tests::new_rejects_a_disc_that_is_neither_gamecube_nor_wii ... ok
[INFO] [stdout] test nod::disc::reader::tests::force_decrypted_serves_the_rewritten_header_from_the_read_stream ... ok
[INFO] [stdout] test nod::disc::reader::tests::decrypt_sector_data_b2b_matches_the_in_place_decryption ... ok
[INFO] [stdout] test nod::disc::reader::tests::load_sector_group_reports_partition_and_raw_groups ... ok
[INFO] [stdout] test handlers_tests::tests::zip_runtime_threads_match_capabilities_for_create_and_extract ... ok
[INFO] [stdout] test nod::disc::reader::tests::new_decrypts_each_partition_boot_block_and_fst ... ok
[INFO] [stdout] test nod::disc::reader::tests::new_rejects_rebuilding_encryption_for_a_disc_without_hashes ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_backend_parallel_extract_matches_source_payload ... ok
[INFO] [stdout] test nod::disc::reader::tests::open_partition_rejects_an_index_or_kind_that_is_not_present ... ok
[INFO] [stdout] test nod::disc::reader::tests::guess_disc_size_picks_a_layout_from_the_partition_extents ... ok
[INFO] [stdout] test nod::disc::reader::tests::fixture_partition_sectors_decrypt_back_to_the_hashed_content ... ok
[INFO] [stdout] test nod::disc::reader::tests::new_rejects_an_encrypted_disc_without_partition_hashes ... ok
[INFO] [stdout] test handlers_tests::tests::chd_rust_compressed_create_round_trip_matches_source_payload ... ok
[INFO] [stdout] test nod::disc::reader::tests::open_partition_validates_the_hash_tree_when_asked ... ok
[INFO] [stdout] test nod::disc::reader::tests::fill_buf_internal_matches_fill_buf_across_a_partition_boundary ... ok
[INFO] [stdout] test nod::disc::reader::tests::new_reads_the_disc_header_region_and_partition_extents ... ok
[INFO] [stdout] test nod::disc::reader::tests::open_partition_reads_the_decrypted_partition_contents ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_guesses_the_data_end_for_a_zero_sized_partition ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_rejects_an_unaligned_partition_offset ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_multi_block_seeded_create_round_trips ... ok
[INFO] [stdout] test handlers_tests::tests::seven_z_runtime_threads_match_capabilities_for_create_and_extract ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_rejects_a_ticket_with_an_unknown_issuer ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_partition_without_hashes_reads_whole_sectors ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_sector_group_request_names_its_partition_and_group ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_rejects_a_ticket_with_an_unknown_common_key_index ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_failed_sector_read_propagates_out_of_the_preloader ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_cloned_wii_partition_reader_restarts_at_the_beginning ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_rejects_an_fst_that_runs_past_the_data_size ... ok
[INFO] [stdout] test nod::disc::reader::tests::reading_past_the_end_of_the_disc_yields_nothing ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_wii_partition_reader_caches_its_metadata ... ok
[INFO] [stdout] test nod::disc::wii::tests::decrypt_title_key_rejects_a_common_key_index_out_of_range ... ok
[INFO] [stdout] test nod::disc::wii::tests::decrypt_title_key_rejects_an_unknown_certificate_issuer ... ok
[INFO] [stdout] test nod::disc::wii::tests::decrypt_title_key_rejects_an_unparseable_certificate_issuer ... ok
[INFO] [stdout] test nod::disc::wii::tests::decrypt_title_key_round_trips_every_debug_common_key ... ok
[INFO] [stdout] test nod::disc::wii::tests::decrypt_title_key_round_trips_every_retail_common_key ... ok
[INFO] [stdout] test nod::disc::reader::tests::seek_supports_start_and_current_but_not_end ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_wii_partition_reader_reads_every_system_file ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_wii_partition_reader_returns_decrypted_data_without_hash_blocks ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_skips_empty_partition_groups ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_keeps_a_partition_whose_fst_is_unparsable ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_rejects_unaligned_partition_data ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_wii_partition_reader_seeks_from_every_anchor ... ok
[INFO] [stdout] test nod::disc::reader::tests::read_partition_info_keeps_a_partition_whose_header_is_not_wii ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_wii_partition_reader_stops_at_the_end_of_the_partition_data ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_wii_partition_reader_streams_a_file_listed_in_the_fst ... ok
[INFO] [stdout] test nod::disc::reader::tests::the_whole_wii_disc_reads_back_byte_for_byte ... ok
[INFO] [stdout] test nod::disc::wii::tests::partition_table_offsets_are_stored_shifted_right_by_two ... ok
[INFO] [stdout] test nod::disc::wii::tests::partition_header_accessors_apply_the_right_shift_per_field ... ok
[INFO] [stdout] test nod::disc::writer::tests::check_block_rejects_outer_header_junk_in_partition ... ok
[INFO] [stdout] test nod::io::block::tests::append_hash_exceptions_rebases_offsets_into_the_target_sector ... ok
[INFO] [stdout] test nod::io::block::tests::append_hash_exceptions_yields_nothing_for_a_group_without_a_list ... ok
[INFO] [stdout] test nod::io::block::tests::block_constructors_derive_the_sector_range ... ok
[INFO] [stdout] test nod::disc::writer::tests::check_block_seeds_partition_junk_from_partition_header ... ok
[INFO] [stdout] test nod::io::block::tests::copy_sector_fills_zero_blocks_and_leaves_empty_blocks_alone ... ok
[INFO] [stdout] test nod::io::block::tests::copy_sector_keeps_the_hash_block_for_a_decrypted_hash_block ... ok
[INFO] [stdout] test nod::io::block::tests::copy_sector_reports_encryption_and_hashes_for_raw_partition_data ... ok
[INFO] [stdout] test nod::io::block::tests::copy_sector_writes_only_the_data_half_for_a_decrypted_non_hash_block ... ok
[INFO] [stdout] test nod::io::block::tests::copy_sector_regenerates_junk_matching_generate_junk_sector ... ok
[INFO] [stdout] test nod::io::block::tests::data_slices_from_the_requested_position_to_the_end_of_the_block ... ok
[INFO] [stdout] test nod::io::block::tests::data_returns_an_empty_slice_for_an_empty_block ... ok
[INFO] [stdout] test nod::disc::reader::tests::wii_discs_expose_no_gamecube_boot_header_or_fst ... ok
[INFO] [stdout] test nod::io::block::tests::decrypt_block_leaves_raw_data_alone_without_a_key ... ok
[INFO] [stdout] test nod::io::block::tests::detect_recognizes_every_container_magic ... ok
[INFO] [stdout] test nod::io::block::tests::detect_recognizes_raw_gamecube_and_wii_headers ... ok
[INFO] [stdout] test nod::io::block::tests::detect_returns_none_for_unknown_data_and_short_streams ... ok
[INFO] [stdout] test nod::io::block::tests::ensure_contains_names_the_block_range_it_rejected ... ok
[INFO] [stdout] test nod::io::block::tests::decrypt_block_zeroes_junk_and_zero_blocks_but_not_none_or_decrypted ... ok
[INFO] [stdout] test nod::io::block::tests::generate_junk_sector_skips_the_hash_block_inside_a_hashed_partition ... ok
[INFO] [stdout] test nod::io::block::tests::new_from_stream_rejects_nfs_and_unknown_data ... ok
[INFO] [stdout] test nod::io::block::tests::decrypt_block_decrypts_every_raw_sector_with_the_partition_key ... ok
[INFO] [stdout] test nod::disc::wii::tests::loading_a_group_past_the_partition_data_yields_no_sectors ... ok
[INFO] [stdout] test nod::io::block::tests::open_rejects_a_missing_path_and_a_directory ... ok
[INFO] [stdout] test nod::io::block::tests::partition_data_returns_an_empty_slice_for_an_empty_block ... ok
[INFO] [stdout] test nod::io::block::tests::partition_data_spans_the_whole_block_when_hashes_are_absent ... ok
[INFO] [stdout] test nod::io::block::tests::open_rejects_an_unknown_format_on_disk ... ok
[INFO] [stdout] test nod::io::block::tests::partition_data_stops_at_the_sector_boundary_when_hashes_are_present ... ok
[INFO] [stdout] test nod::io::block::tests::partition_data_uses_hashless_stride_for_a_stripped_decrypted_block ... ok
[INFO] [stdout] test nod::io::block::tests::sector_buf_and_sector_data_buf_index_from_the_block_start ... ok
[INFO] [stdout] test nod::io::ciso::tests::block_reader_rejects_a_bad_magic ... ok
[INFO] [stdout] test nod::io::block::tests::partition_data_treats_junk_and_zero_blocks_as_hashless ... ok
[INFO] [stdout] test nod::io::ciso::tests::block_reader_rejects_a_file_shorter_than_its_block_map_claims ... ok
[INFO] [stdout] test nod::io::ciso::tests::block_reader_serves_present_missing_and_out_of_range_blocks ... ok
[INFO] [stdout] test nod::io::block::tests::new_from_stream_opens_a_raw_gamecube_image ... ok
[INFO] [stdout] test nod::io::block::tests::open_reads_a_gamecube_image_from_disk ... ok
[INFO] [stdout] test nod::io::ciso::tests::writer_rejects_a_format_other_than_ciso_at_the_writer_itself ... ok
[INFO] [stdout] test nod::disc::wii::tests::loading_a_group_for_an_unknown_partition_yields_no_sectors ... ok
[INFO] [stdout] test nod::disc::wii::tests::hash_validation_rejects_a_corrupted_h1_block ... ok
[INFO] [stdout] test nod::io::ciso::tests::writer_reports_its_progress_bound_and_weight ... ok
[INFO] [stdout] test nod::disc::wii::tests::the_disc_reader_parses_the_partition_table_of_a_wii_image ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_rejects_a_block_that_decompresses_to_the_wrong_length ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_rejects_a_bad_magic ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_rejects_a_compressed_block_larger_than_the_block_size ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_rejects_a_stored_block_that_is_not_exactly_one_block ... ok
[INFO] [stdout] test nod::io::ciso::tests::writer_rejects_a_mismatched_format_and_any_compression ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_serves_a_stored_block_verbatim ... ok
[INFO] [stdout] test nod::disc::wii::tests::hash_validation_rejects_corrupted_sector_data ... ok
[INFO] [stdout] test nod::disc::wii::tests::hash_validation_rejects_a_corrupted_h3_table ... ok
[INFO] [stdout] test nod::disc::wii::tests::hash_validation_accepts_a_correctly_hashed_partition ... ok
[INFO] [stdout] test nod::disc::wii::tests::loading_a_group_in_decrypted_mode_returns_the_plaintext_sectors ... ok
[INFO] [stdout] test nod::disc::wii::tests::hash_validation_rejects_a_corrupted_h2_block ... ok
[INFO] [stdout] test nod::io::ciso::tests::ciso_reader_regenerates_junk_blocks_recorded_by_nkit ... ok
[INFO] [stdout] test nod::io::gcz::tests::writer_rejects_a_mismatched_format ... ok
[INFO] [stdout] test nod::io::nfs::tests::calculate_num_files_rounds_up_to_the_250_mib_split_size ... ok
[INFO] [stdout] test nod::io::nfs::tests::get_path_resolves_parent_components_against_the_base_directory ... ok
[INFO] [stdout] test nod::disc::wii::tests::a_truncated_partition_stops_at_the_last_readable_sector ... ok
[INFO] [stdout] test nod::io::nfs::tests::header_validate_rejects_bad_magic_range_count_and_end_magic ... ok
[INFO] [stdout] test nod::io::nfs::tests::load_files_reports_a_file_shorter_than_its_lba_ranges_claim ... ok
[INFO] [stdout] test nod::io::nfs::tests::load_files_falls_back_to_a_key_beside_the_nfs_files ... ok
[INFO] [stdout] test nod::io::nfs::tests::load_files_reports_a_missing_nfs_file ... ok
[INFO] [stdout] test nod::io::nfs::tests::phys_sector_walks_the_lba_ranges_and_reports_gaps ... ok
[INFO] [stdout] test nod::io::gcz::tests::writer_rejects_a_non_deflate_compression ... ok
[INFO] [stdout] test nod::io::nkit::tests::apply_copies_digests_and_only_fills_a_missing_disc_size ... ok
[INFO] [stdout] test nod::io::nkit::tests::apply_without_junk_bits_leaves_the_format_lossy ... ok
[INFO] [stdout] test nod::io::gcz::tests::writer_reports_its_progress_bound_and_weight ... ok
[INFO] [stdout] test nod::io::nkit::tests::calc_flags_sets_one_bit_per_populated_field ... ok
[INFO] [stdout] test nod::io::nkit::tests::calc_header_size_accounts_for_every_optional_field ... ok
[INFO] [stdout] test nod::io::nkit::tests::default_header_is_an_empty_version_two_header ... ok
[INFO] [stdout] test nod::io::nkit::tests::junk_bits_length_covers_a_dual_layer_disc ... ok
[INFO] [stdout] test nod::io::nkit::tests::junk_bits_ignore_blocks_past_the_end_of_the_bitmap ... ok
[INFO] [stdout] test nod::disc::wii::tests::loading_a_group_in_original_mode_returns_the_sectors_as_stored ... ok
[INFO] [stdout] test nod::io::nkit::tests::read_adapter_supports_only_exact_reads ... ok
[INFO] [stdout] test nod::io::nkit::tests::read_from_rejects_a_bad_version_string ... ok
[INFO] [stdout] test nod::io::nkit::tests::junk_bits_set_and_clear_individual_blocks ... ok
[INFO] [stdout] test nod::io::nkit::tests::read_adapter_seeks_from_start_current_and_end ... ok
[INFO] [stdout] test nod::io::nkit::tests::read_from_rejects_an_unsupported_version_number ... ok
[INFO] [stdout] test nod::io::nkit::tests::try_read_from_returns_none_for_a_malformed_header ... ok
[INFO] [stdout] test nod::io::nkit::tests::try_read_from_returns_none_without_the_nkit_magic ... ok
[INFO] [stdout] test nod::io::nfs::tests::load_files_reports_a_missing_key_file ... ok
[INFO] [stdout] test nod::io::nkit::tests::version_one_header_round_trips_its_fixed_field_set ... ok
[INFO] [stdout] test nod::io::nkit::tests::write_to_rejects_an_unsupported_version_number ... ok
[INFO] [stdout] test nod::io::nfs::tests::load_files_reads_the_key_from_the_sibling_code_directory ... ok
[INFO] [stdout] test nod::io::nkit::tests::version_two_header_round_trips_every_field ... ok
[INFO] [stdout] test nod::io::nkit::tests::version_two_header_round_trips_the_junk_bitmap ... ok
[INFO] [stdout] test nod::io::ciso::tests::ciso_stores_the_junk_bitmap_and_digests_in_its_nkit_header ... ok
[INFO] [stdout] test nod::io::nkit::tests::try_read_from_parses_a_header_at_a_non_zero_offset ... ok
[INFO] [stdout] test nod::io::split::tests::numbered_input_is_not_added_twice ... ok
[INFO] [stdout] test nod::io::split::tests::part_zero_input_builds_next_part_paths ... ok
[INFO] [stdout] test nod::io::split::tests::reads_part_zero_sequence_across_multiple_parts ... ok
[INFO] [stdout] test nod::io::tgc::tests::block_reader_rejects_a_bad_magic ... ok
[INFO] [stdout] test nod::io::gcz::tests::writer_rejects_a_block_size_that_is_not_a_sector_multiple ... ok
[INFO] [stdout] test nod::io::nkit::tests::write_to_requires_every_digest_for_a_version_one_header ... ok
[INFO] [stdout] test nod::io::ciso::tests::ciso_round_trip_restores_the_original_disc_bytes ... ok
[INFO] [stdout] test nod::io::nfs::tests::read_block_decrypts_mapped_sectors_and_skips_unmapped_ones ... ok
[INFO] [stdout] test nod::io::tgc::tests::file_callback_rejects_unknown_paths_and_directories ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::compr_data_emits_props_only_for_the_lzma_family ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::compress_bound_grows_with_each_codecs_worst_case ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::compression_to_wia_maps_every_supported_algorithm ... ok
[INFO] [stdout] test nod::io::tgc::tests::file_callback_maps_fst_offsets_into_the_tgc_user_region ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::block_size_reports_the_disc_chunk_size ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::file_header_validate_rejects_a_pre_v3_compatible_version ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::disc_writer_rejects_a_codec_wia_cannot_represent ... ok
[INFO] [stdout] test nod::io::tgc::tests::writer_reports_its_progress_bound_and_weight ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::group_info_from_partition_derives_sector_size_and_offset ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::find_group_info_prefers_partitions_over_raw_data ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::group_info_from_partition_omits_the_key_for_unencrypted_data ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::group_info_from_raw_data_clips_the_last_group_to_the_region_end ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::meta_maps_each_wia_compression_kind_and_format ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::disc_writer_reports_weight_from_its_compression ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::read_block_rejects_a_group_shorter_than_its_declared_region ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::read_block_rejects_rvz_group_data_left_unconsumed ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::block_reader_reads_a_written_rvz_group_by_group ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::read_exception_lists_makes_one_list_per_two_mib_of_chunk ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::read_exception_lists_aligns_to_four_bytes_when_requested ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::read_exception_lists_rejects_truncated_input ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::find_group_info_for_sector_maps_sectors_back_to_their_group ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::rvz_unpack_copies_raw_segments_verbatim ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::read_exception_lists_parses_counts_and_entries ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::rvz_unpack_rejects_oversized_segments_and_size_mismatches ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::verify_hash_reports_both_digests_on_a_mismatch ... ok
[INFO] [stdout] test nod::io::tgc::tests::block_reader_reports_empty_blocks_past_the_end_of_the_disc ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::rvz_uncompressed_round_trips_and_packs_junk ... ok
[INFO] [stdout] test nod::io::wia::tests::block_reader_new_parses_minimal_valid_wia ... ok
[INFO] [stdout] test nod::io::wia::tests::block_reader_new_rejects_bad_magic ... ok
[INFO] [stdout] test nod::io::wia::tests::block_reader_new_rejects_disc_hash_mismatch ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::partition_offset_to_raw_rescales_hash_stripped_offsets ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::rvz_unpack_regenerates_junk_from_a_packed_seed ... ok
[INFO] [stdout] test nod::io::wia::tests::block_reader_new_rejects_truncated_header ... ok
[INFO] [stdout] test nod::io::wia::tests::disc_kind_and_compression_round_trip_and_reject_unknown ... ok
[INFO] [stdout] test nod::io::wia::tests::disc_validate_rejects_partition_type_size_mismatch ... ok
[INFO] [stdout] test nod::io::wia::tests::disc_validate_rejects_undersized_rvz_chunk_size ... ok
[INFO] [stdout] test nod::io::wia::tests::disc_validate_rejects_unknown_disc_type_and_compression ... ok
[INFO] [stdout] test nod::io::wia::tests::block_reader_new_rejects_invalid_disc_body ... ok
[INFO] [stdout] test nod::io::wia::tests::file_header_validate_rejects_bad_magic ... ok
[INFO] [stdout] test nod::io::wia::tests::file_header_validate_accepts_well_formed_header ... ok
[INFO] [stdout] test nod::io::wia::tests::disc_validate_rejects_non_multiple_wia_chunk_size ... ok
[INFO] [stdout] test nod::io::wia::tests::file_header_validate_rejects_tampered_file_head_hash ... ok
[INFO] [stdout] test nod::io::wia::tests::file_header_validate_rejects_unsupported_version ... ok
[INFO] [stdout] test nod::io::wia::tests::read_block_rejects_out_of_range_chunk_table_entry ... ok
[INFO] [stdout] test nod::io::tgc::tests::writer_lays_out_the_system_files_ahead_of_the_relocated_user_data ... ok
[INFO] [stdout] test nod::io::tgc::tests::block_reader_rebuilds_the_original_gcm_byte_for_byte ... ok
[INFO] [stdout] test nod::io::wia::tests::read_block_reports_out_of_bounds_sector_as_none_block ... ok
[INFO] [stdout] test nod::io::wia::tests::read_block_rejects_truncated_group_data ... ok
[INFO] [stdout] test nod::io::wia::tests::read_block_rejects_undersized_output_buffer ... ok
[INFO] [stdout] test nod::io::wia::tests::read_block_zero_size_group_returns_zero_block ... ok
[INFO] [stdout] test nod::io::wia::tests::rvz_group_flag_and_size_bit_packing ... ok
[INFO] [stdout] test nod::tests::disc_format_error_displays_its_message ... ok
[INFO] [stdout] test nod::tests::error_from_io_error_keeps_source_and_default_context ... ok
[INFO] [stdout] test nod::io::wia::tests::wia_group_and_rvz_group_round_trip ... ok
[INFO] [stdout] test nod::io::wia::tests::wia_partition_data_sector_and_group_membership ... ok
[INFO] [stdout] test nod::tests::error_from_str_and_string_produce_other ... ok
[INFO] [stdout] test nod::tests::io_error_context_replaces_the_default_context ... ok
[INFO] [stdout] test nod::tests::result_context_leaves_ok_values_untouched ... ok
[INFO] [stdout] test nod::util::compress::tests::bzip2_decompress_rejects_data_that_is_not_a_bzip2_stream ... ok
[INFO] [stdout] test nod::tests::error_from_alloc_error_reports_out_of_memory ... ok
[INFO] [stdout] test nod::tests::result_context_wraps_errors_with_the_supplied_context ... ok
[INFO] [stdout] test nod::io::wia::tests::wia_raw_data_offset_and_sector_math ... ok
[INFO] [stdout] test nod::util::compress::tests::compressor_none_bails_when_the_buffer_is_too_small ... ok
[INFO] [stdout] test nod::util::compress::tests::compressor_clone_keeps_the_algorithm_and_capacity_but_not_the_data ... ok
[INFO] [stdout] test nod::util::compress::tests::compressor_none_stores_the_input_when_the_buffer_can_hold_it ... ok
[INFO] [stdout] test nod::util::compress::tests::decompression_kind_from_wia_maps_each_supported_algorithm ... ok
[INFO] [stdout] test nod::io::gcz::tests::gcz_round_trip_restores_the_original_disc_bytes ... ok
[INFO] [stdout] test nod::util::compress::tests::decompression_kind_from_wia_rejects_purge ... ok
[INFO] [stdout] test nod::util::compress::tests::decompression_none_copies_the_input_and_reports_its_length ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::rvz_zstandard_round_trips_the_fixture ... ok
[INFO] [stdout] test nod::util::compress::tests::decompression_none_rejects_an_input_larger_than_the_output ... ok
[INFO] [stdout] test nod::util::compress::tests::get_content_size_reads_the_zstandard_frame_header_and_defers_otherwise ... ok
[INFO] [stdout] test nod::util::compress::tests::lzma2_decompress_rejects_malformed_props ... ok
[INFO] [stdout] test nod::util::compress::tests::lzma2_props_byte_40_selects_the_maximum_dictionary_size ... ok
[INFO] [stdout] test nod::util::compress::tests::get_content_size_rejects_a_malformed_zstandard_frame ... ok
[INFO] [stdout] test nod::util::compress::tests::lzma_decompress_rejects_malformed_props ... ok
[INFO] [stdout] test nod::util::compress::tests::lzma_preset_options_reject_an_out_of_range_level ... ok
[INFO] [stdout] test nod::util::compress::tests::lzma_props_presets_encode_the_dictionary_size ... ok
[INFO] [stdout] test nod::util::compress::tests::zlib_decompress_rejects_data_that_is_not_a_zlib_stream ... ok
[INFO] [stdout] test nod::util::compress::tests::zstd_compress_bound_leaves_room_for_incompressible_input ... ok
[INFO] [stdout] test nod::util::compress::tests::compressor_round_trips_every_supported_algorithm ... ok
[INFO] [stdout] test nod::util::compress::tests::zstd_decompress_rejects_data_that_is_not_a_frame ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_fill_sector_chunked ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_init_with_seed_1 ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_init_with_seed_2 ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_init_with_seed_3 ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_recover_seed_rejects_non_junk ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_recover_seed_too_short ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_write ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_write_sector_chunked ... ok
[INFO] [stdout] test nod::util::compress::tests::bzip2_decompress_reports_an_output_buffer_that_is_too_small ... ok
[INFO] [stdout] test nod::util::compress::tests::lzma_decompress_rejects_trailing_input ... ok
[INFO] [stdout] test nod_regressions_tests::a_wii_fst_is_padded_to_a_multiple_of_four ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_recover_seed_aligned ... ok
[INFO] [stdout] test nod::util::lfg::tests::test_recover_seed_unaligned_offset ... ok
[INFO] [stdout] test nod_regressions_tests::a_gamecube_fst_keeps_its_exact_size ... ok
[INFO] [stdout] test nod_regressions_tests::fst_new_rejects_a_root_length_that_overflows_the_node_array ... ok
[INFO] [stdout] test pbp::tests::an_empty_iso_needs_no_blocks_and_produces_no_extract_tasks ... ok
[INFO] [stdout] test pbp::tests::decode_bcd_rejects_nibbles_above_nine ... ok
[INFO] [stdout] test pbp::tests::decode_disc_extract_task_rejects_a_block_shorter_than_its_task ... ok
[INFO] [stdout] test pbp::tests::decode_disc_extract_task_reports_a_missing_source ... ok
[INFO] [stdout] test nod_regressions_tests::bzip2_stores_a_block_raw_when_it_does_not_fit ... ok
[INFO] [stdout] test pbp::tests::decode_disc_extract_task_stops_once_the_expected_length_is_met ... ok
[INFO] [stdout] test pbp::tests::cue_track_types_cover_data_and_audio_and_reject_anything_else ... ok
[INFO] [stdout] test pbp::tests::extract_rejects_a_kind_filter_that_matches_no_output ... ok
[INFO] [stdout] test pbp::tests::extract_removes_the_bin_when_a_block_fails_to_decode ... ok
[INFO] [stdout] test pbp::tests::msf_to_frames_rejects_out_of_range_seconds_and_frames ... ok
[INFO] [stdout] test pbp::tests::parse_archive_reports_a_missing_source ... ok
[INFO] [stdout] test pbp::tests::a_blank_disc_id_header_probes_as_unknown ... ok
[INFO] [stdout] test nod::io::tgc::tests::writer_rejects_a_mismatched_format_and_any_compression ... ok
[INFO] [stdout] test pbp::tests::extract_writes_an_index_00_for_audio_tracks ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_disc_slot_without_a_psisoimg_section ... ok
[INFO] [stdout] test pbp::tests::extract_reports_a_cue_that_already_exists_without_overwrite ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_disc_with_too_few_index_blocks ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_disc_without_any_iso_index_blocks ... ok
[INFO] [stdout] test nod::util::compress::tests::compressor_bails_instead_of_erroring_when_output_does_not_fit ... ok
[INFO] [stdout] test pbp::tests::multi_disc_extract_without_selections_writes_every_pair ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_multi_disc_header_with_no_disc_offsets ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_malformed_iso_index_entry ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_section_offset_past_the_end_of_the_file ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_an_inverted_toc_track_range ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_truncated_iso_size_descriptor_block ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_an_iso_index_entry_past_the_end_of_the_file ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_an_index_table_shorter_than_the_iso ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_zero_iso_sector_count ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_an_unexpected_multi_disc_key ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_an_out_of_range_disc_offset ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_non_monotonic_section_offsets ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_a_toc_without_its_marker_entries ... ok
[INFO] [stdout] test pbp::tests::read_iso_block_rejects_a_block_that_decodes_to_nothing ... ok
[INFO] [stdout] test pbp::tests::parse_reports_a_truncated_psar_signature ... ok
[INFO] [stdout] test pbp::tests::parse_reports_a_truncated_disc_id ... ok
[INFO] [stdout] test pbp::tests::read_iso_block_rejects_an_index_past_the_end_of_the_table ... ok
[INFO] [stdout] test pbp::tests::read_iso_block_reports_a_payload_that_runs_past_the_end_of_the_file ... ok
[INFO] [stdout] test pbp::tests::read_iso_block_rejects_a_zero_length_index_entry ... ok
[INFO] [stdout] test pbp::tests::the_handler_describes_pbp_and_refuses_to_create_one ... ok
[INFO] [stdout] test pbp::tests::read_iso_block_rejects_undecodable_deflate_payloads ... ok
[INFO] [stdout] test pbp::tests::read_iso_block_rejects_a_block_that_decodes_past_one_block ... ok
[INFO] [stdout] test xdvdfs::util::test::test_str_ignore_case_alpha ... ok
[INFO] [stdout] test xdvdfs::write::avl::test::test_duplicate_insert ... ok
[INFO] [stdout] test xdvdfs::util::test::test_str_ignore_case_ordering ... ok
[INFO] [stdout] test xdvdfs::write::avl::test::test_preorder_backend_ordering ... ok
[INFO] [stdout] test pbp::tests::parse_rejects_out_of_order_toc_tracks ... ok
[INFO] [stdout] test pbp::tests::parse_reports_a_truncated_toc ... ok
[INFO] [stdout] test xdvdfs::write::avl::test::test_preorder_ordering ... ok
[INFO] [stdout] test xdvdfs::util::test::test_str_ignore_case_special ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::a_new_device_is_empty ... ok
[INFO] [stdout] test pbp::tests::parse_reports_a_truncated_multi_disc_offset_table ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::copy_file_in_records_a_placement_instead_of_copying_bytes ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::copy_file_in_of_a_zero_length_file_claims_no_sectors ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::copy_file_in_rounds_a_partial_last_sector_up ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::indexing_an_unwritten_sector_yields_empty ... ok
[INFO] [stdout] test xdvdfs::write::avl::test::test_preorder_backend_ordering_large_data ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::raw_writes_and_file_placements_share_one_sector_map ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::the_filesystem_wrapper_delegates_read_dir ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::write_of_an_empty_buffer_stores_nothing ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::write_places_sectors_at_the_offsets_sector_index ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::len_reports_zero_for_a_trailing_empty_sector ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::write_stores_one_raw_sector_per_sector_sized_slice ... ok
[INFO] [stdout] test xdvdfs::write::avl::test::test_inorder_ordering ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::write_zero_pads_a_partial_trailing_sector ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::directory_entry_table_offset_math ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::directory_entry_table_writer_computes_a_nonzero_size_for_entries ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::directory_entry_table_writer_rejects_duplicate_names ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::directory_entry_table_writer_rejects_names_that_are_too_long ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::opening_a_corrupted_image_fails_cleanly_rather_than_panicking ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::opening_a_truncated_image_fails_cleanly_rather_than_panicking ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::volume_descriptor_deserialize_rejects_garbage_bytes ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::volume_descriptor_round_trips_through_serialize_and_deserialize ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::write_then_read_round_trips_directory_listing_and_file_sizes ... ok
[INFO] [stdout] test xdvdfs::xdvdfs_tests::write_then_read_round_trips_file_bytes ... ok
[INFO] [stdout] test xdvdfs::write::avl::test::test_insert_invariants ... ok
[INFO] [stdout] test nod::tests::gamecube_fixture_has_the_layout_the_nod_tests_rely_on ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::copy_file_in_rejects_a_sector_that_is_already_claimed - should panic ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::copy_file_buf_is_not_supported_by_the_sector_linear_wrapper - should panic ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::copy_file_in_requires_a_sector_aligned_offset - should panic ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::write_requires_a_sector_aligned_offset - should panic ... ok
[INFO] [stdout] test xdvdfs::write::fs::sector_linear::tests::writing_the_same_sector_twice_is_rejected - should panic ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_rejects_a_block_whose_checksum_does_not_match ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_clone_gets_its_own_scratch_buffer ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::wia_lzma_round_trips_the_fixture ... ok
[INFO] [stdout] test nod::io::wia::nod_wia_tests::wia_lzma2_round_trips_the_fixture ... ok
[INFO] [stdout] test nod::io::gcz::tests::block_reader_reports_blocks_past_the_end_of_the_map_as_empty ... ok
[INFO] [stdout] test nod::io::gcz::tests::gcz_block_map_offsets_and_checksums_describe_the_stored_payloads ... ok
[INFO] [stdout] test handlers_tests::tests::cso_extract_runtime_threads_match_capability ... ok
[INFO] [stdout] test handlers_tests::tests::cso_extract_with_four_threads_handles_wide_reordering ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 763 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 23.59s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rom_weaver_containers
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/nod/mod.rs - nod (line 27) - compile ... ok
[INFO] [stdout] test src/nod/read.rs - nod::read::dynPartitionReader::into_open_file (line 427) - compile ... ok
[INFO] [stdout] test src/nod/read.rs - nod::read::dynPartitionReader+'_::open_file (line 384) - compile ... ok
[INFO] [stdout] test src/nod/mod.rs - nod (line 60) - compile ... ok
[INFO] [stdout] test src/nod/mod.rs - nod (line 83) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 1.25s; merged doctests compilation took 1.24s
[INFO] running `Command { std: "docker" "inspect" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34", kill_on_drop: false }`
[INFO] [stdout] 6dea9a540b5918d11868cfd2ec1d9363ce3c36cbdc8a08c29511411d9b05cd34
