[INFO] fetching crate oximedia-metadata 0.1.3... [INFO] testing oximedia-metadata-0.1.3 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate oximedia-metadata 0.1.3 into /workspace/builds/worker-2-tc2/source [INFO] started tweaking crates.io crate oximedia-metadata 0.1.3 [INFO] finished tweaking crates.io crate oximedia-metadata 0.1.3 [INFO] tweaked toml for crates.io crate oximedia-metadata 0.1.3 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate oximedia-metadata 0.1.3 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate oximedia-metadata 0.1.3 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 17795049eb1360f77d416dc1ff32236cda07bb1226f9a566e903b41e249097c5 [INFO] running `Command { std: "docker" "start" "-a" "17795049eb1360f77d416dc1ff32236cda07bb1226f9a566e903b41e249097c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "17795049eb1360f77d416dc1ff32236cda07bb1226f9a566e903b41e249097c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "17795049eb1360f77d416dc1ff32236cda07bb1226f9a566e903b41e249097c5", kill_on_drop: false }` [INFO] [stdout] 17795049eb1360f77d416dc1ff32236cda07bb1226f9a566e903b41e249097c5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dc1c121ef3c419e7c3180b3ce6f73e97b5ddb34f0e09b70e6597bb79256b299c [INFO] running `Command { std: "docker" "start" "-a" "dc1c121ef3c419e7c3180b3ce6f73e97b5ddb34f0e09b70e6597bb79256b299c", kill_on_drop: false }` [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling quick-xml v0.39.2 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling oximedia-core v0.1.3 [INFO] [stderr] Compiling oximedia-metadata v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.30s [INFO] running `Command { std: "docker" "inspect" "dc1c121ef3c419e7c3180b3ce6f73e97b5ddb34f0e09b70e6597bb79256b299c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dc1c121ef3c419e7c3180b3ce6f73e97b5ddb34f0e09b70e6597bb79256b299c", kill_on_drop: false }` [INFO] [stdout] dc1c121ef3c419e7c3180b3ce6f73e97b5ddb34f0e09b70e6597bb79256b299c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c17e23ceaff356f79936f10ec11691ab04edeedbfaa06106da43826d46d03069 [INFO] running `Command { std: "docker" "start" "-a" "c17e23ceaff356f79936f10ec11691ab04edeedbfaa06106da43826d46d03069", kill_on_drop: false }` [INFO] [stderr] Compiling oximedia-metadata v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 8.28s [INFO] running `Command { std: "docker" "inspect" "c17e23ceaff356f79936f10ec11691ab04edeedbfaa06106da43826d46d03069", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c17e23ceaff356f79936f10ec11691ab04edeedbfaa06106da43826d46d03069", kill_on_drop: false }` [INFO] [stdout] c17e23ceaff356f79936f10ec11691ab04edeedbfaa06106da43826d46d03069 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 894532cfcce7cb0d5b3d95d147cffbe60f6f7aa040ab6cf07cf1b821e37e8492 [INFO] running `Command { std: "docker" "start" "-a" "894532cfcce7cb0d5b3d95d147cffbe60f6f7aa040ab6cf07cf1b821e37e8492", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/oximedia_metadata-96b8e07959bee86e) [INFO] [stdout] [INFO] [stdout] running 801 tests [INFO] [stdout] test apev2::tests::test_apev2_empty ... ok [INFO] [stdout] test apev2::tests::test_apev2_binary_data ... ok [INFO] [stdout] test apev2::tests::test_apev2_round_trip ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_level_name ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_profile_name ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_main_profile_codec_string ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_validate_valid ... ok [INFO] [stdout] test av1_metadata::tests::test_describe_av1 ... ok [INFO] [stdout] test av1_metadata::tests::test_describe_unknown ... ok [INFO] [stdout] test av1_metadata::tests::test_detect_codec_avc ... ok [INFO] [stdout] test av1_metadata::tests::test_detect_codec_hevc ... ok [INFO] [stdout] test av1_metadata::tests::test_detect_codec_av1 ... ok [INFO] [stdout] test av1_metadata::tests::test_detect_codec_unknown ... ok [INFO] [stdout] test av1_metadata::tests::test_hevc_validate_valid ... ok [INFO] [stdout] test av1_metadata::tests::test_hevc_main_profile ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_roundtrip ... ok [INFO] [stdout] test av1_metadata::tests::test_is_audio_codec ... ok [INFO] [stdout] test av1_metadata::tests::test_hevc_profile_name ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_validate_bad_profile ... ok [INFO] [stdout] test av1_metadata::tests::test_is_text_codec ... ok [INFO] [stdout] test av1_metadata::tests::test_detect_codec_audio ... ok [INFO] [stdout] test av1_metadata::tests::test_detect_codec_vp9 ... ok [INFO] [stdout] test av1_metadata::tests::test_is_video_codec ... ok [INFO] [stdout] test av1_metadata::tests::test_hevc_display ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_av1_invalid_prefix ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_av1_too_few_parts ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_hevc_hev1 ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_hevc_basic ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_hevc_invalid_prefix ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_high_tier ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_vp9_basic ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_vp9_invalid_prefix ... ok [INFO] [stdout] test av1_metadata::tests::test_mime_type_no_codecs ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_av1_8bit ... ok [INFO] [stdout] test av1_metadata::tests::test_vp9_display ... ok [INFO] [stdout] test av1_metadata::tests::test_mime_type_with_codecs ... ok [INFO] [stdout] test av1_metadata::tests::test_vp9_profile0_codec_string ... ok [INFO] [stdout] test av1_metadata::tests::test_suggest_container_mp4 ... ok [INFO] [stdout] test av1_metadata::tests::test_vp9_roundtrip ... ok [INFO] [stdout] test av1_metadata::tests::test_suggest_container_webm ... ok [INFO] [stdout] test av1_metadata::tests::test_vp9_validate_bad_profile ... ok [INFO] [stdout] test batch_editor::tests::test_apply_operations_sequential_order ... ok [INFO] [stdout] test av1_metadata::tests::test_vp9_validate_valid ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_8bit_codec_string ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_validate_bad_tier ... ok [INFO] [stdout] test batch_editor::tests::test_op_copy_from_missing_file_returns_error ... ok [INFO] [stdout] test batch_editor::tests::test_op_remove_field_nonexistent_is_noop ... ok [INFO] [stdout] test batch_editor::tests::test_op_remove_field_existing ... ok [INFO] [stdout] test batch_editor::tests::test_op_set_field ... ok [INFO] [stdout] test batch_editor::tests::test_store_empty_is_empty ... ok [INFO] [stdout] test av1_metadata::tests::test_parse_av1_basic ... ok [INFO] [stdout] test batch_editor::tests::test_store_remove ... ok [INFO] [stdout] test bulk_update::tests::test_engine_apply_removes_field ... ok [INFO] [stdout] test bulk_update::tests::test_engine_apply_sets_fields ... ok [INFO] [stdout] test batch_editor::tests::test_store_set_and_get ... ok [INFO] [stdout] test batch_editor::tests::test_store_merge_overwrites ... ok [INFO] [stdout] test bulk_update::tests::test_engine_history_depth ... ok [INFO] [stdout] test bulk_update::tests::test_field_update_set ... ok [INFO] [stdout] test bulk_update::tests::test_pipeline_no_validators_always_valid ... ok [INFO] [stdout] test bulk_update::tests::test_pipeline_validate_batch ... ok [INFO] [stdout] test bulk_update::tests::test_pipeline_validator_catches_empty ... ok [INFO] [stdout] test bulk_update::tests::test_result_total_applied ... ok [INFO] [stdout] test bulk_update::tests::test_snapshot_restore ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_action_custom ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_action_is_destructive ... ok [INFO] [stdout] test batch_editor::tests::test_op_copy_from ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_action_entry_builder ... ok [INFO] [stdout] test batch_editor::tests::test_store_load_and_save ... ok [INFO] [stdout] test bulk_update::tests::test_engine_rollback_empty_history ... ok [INFO] [stdout] test bulk_update::tests::test_field_update_remove ... ok [INFO] [stdout] test bulk_update::tests::test_pipeline_removal_always_valid ... ok [INFO] [stdout] test bulk_update::tests::test_engine_rollback ... ok [INFO] [stdout] test bulk_update::tests::test_engine_validation_skips_invalid ... ok [INFO] [stdout] test bulk_update::tests::test_validation_error_display ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_action_is_ai_related ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_assertion_creative_work ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_assertion_from_actions ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_assertion_new_and_get_set ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_builder ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_claim ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_builder_ai_generated ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_action_uri_round_trip ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_claim_has_ai_content ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_ingredient ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_manifest ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_manifest_store_set_active ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_manifest_store ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_manifest_store_has_ai_content ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_to_metadata ... ok [INFO] [stdout] test c2pa::tests::test_ingredient_relationship ... ok [INFO] [stdout] test c2pa::tests::test_is_ai_generated_false ... ok [INFO] [stdout] test c2pa::tests::test_is_ai_generated_true ... ok [INFO] [stdout] test c2pa::tests::test_claim_generator_from_metadata ... ok [INFO] [stdout] test c2pa::tests::test_validate_manifest_issues ... ok [INFO] [stdout] test c2pa::tests::test_c2pa_manifest_store_default ... ok [INFO] [stdout] test c2pa::tests::test_validate_manifest_minimal_valid ... ok [INFO] [stdout] test common::tests::test_common_fields_id3v2_round_trip ... ok [INFO] [stdout] test converter::tests::test_convert_id3v2_to_itunes ... ok [INFO] [stdout] test converter::tests::test_map_field_name ... ok [INFO] [stdout] test embed::tests::test_detect_format_id3v2 ... ok [INFO] [stdout] test common::tests::test_common_fields_vorbis_round_trip ... ok [INFO] [stdout] test embed::tests::test_embed_id3v2 ... ok [INFO] [stdout] test common::tests::test_common_fields_new ... ok [INFO] [stdout] test batch_editor::tests::test_batch_write_back ... ok [INFO] [stdout] test embed::tests::test_remove_metadata_id3v2 ... ok [INFO] [stdout] test embedding::tests::test_embed_spec_invalid_empty_field_name ... ok [INFO] [stdout] test embedding::tests::test_embed_spec_invalid_empty_value_for_write ... ok [INFO] [stdout] test embedding::tests::test_embed_target_max_size ... ok [INFO] [stdout] test batch_editor::tests::test_batch_apply_multiple_files ... ok [INFO] [stdout] test batch_editor::tests::test_batch_apply_in_memory_set_field ... ok [INFO] [stdout] test embedding::tests::test_embed_spec_valid_remove_with_empty_value ... ok [INFO] [stdout] test embed::tests::test_detect_format_exif ... ok [INFO] [stdout] test embedding::tests::test_embed_operation_is_destructive ... ok [INFO] [stdout] test batch_editor::tests::test_batch_apply_error_does_not_abort_others ... ok [INFO] [stdout] test converter::tests::test_convert_id3v2_to_vorbis ... ok [INFO] [stdout] test embedding::tests::test_embed_spec_valid_write ... ok [INFO] [stdout] test embedding::tests::test_embed_target_supports_structured ... ok [INFO] [stdout] test converter::tests::test_convert_vorbis_to_id3v2 ... ok [INFO] [stdout] test embedding::tests::test_embedder_empty ... ok [INFO] [stdout] test embedding::tests::test_embedder_add_spec ... ok [INFO] [stdout] test embedding::tests::test_embedder_spec_count ... ok [INFO] [stdout] test embedding::tests::test_embedder_specs_for_target ... ok [INFO] [stdout] test embed::tests::test_detect_format_apev2 ... ok [INFO] [stdout] test embedding::tests::test_embedder_validate_all_fails ... ok [INFO] [stdout] test embedding::tests::test_embedder_validate_all_passes ... ok [INFO] [stdout] test exif::tests::test_canon_makernote_minimal_empty ... ok [INFO] [stdout] test exif::tests::test_canon_makernote_one_ascii_entry_inline ... ok [INFO] [stdout] test exif::tests::test_canon_makernote_short_entry ... ok [INFO] [stdout] test exif::tests::test_canon_tag_name_known ... ok [INFO] [stdout] test exif::tests::test_decode_rational_value ... ok [INFO] [stdout] test exif::tests::test_get_tag_id ... ok [INFO] [stdout] test exif::tests::test_makernote_dialect_detect_canon ... ok [INFO] [stdout] test exif::tests::test_makernote_dialect_detect_unknown ... ok [INFO] [stdout] test exif::tests::test_nikon_makernote_too_short ... ok [INFO] [stdout] test exif::tests::test_nikon_tag_name_known ... ok [INFO] [stdout] test exif::tests::test_nikon_tag_name_unknown ... ok [INFO] [stdout] test exif::tests::test_parse_makernote_unknown_make_returns_empty ... ok [INFO] [stdout] test exif::tests::test_parse_makernote_canon_dispatches ... ok [INFO] [stdout] test exif::tests::test_read_u16_raw_out_of_bounds ... ok [INFO] [stdout] test exif::tests::test_read_u16_raw_little_endian ... ok [INFO] [stdout] test exif::tests::test_read_u16_raw_big_endian ... ok [INFO] [stdout] test exif::tests::test_read_u32_raw_little_endian ... ok [INFO] [stdout] test exif::tests::test_sony_makernote_zero_entries_no_header ... ok [INFO] [stdout] test exif::tests::test_sony_tag_name_known ... ok [INFO] [stdout] test exif::tests::test_sony_makernote_empty_data ... ok [INFO] [stdout] test exif::tests::test_canon_tag_name_unknown ... ok [INFO] [stdout] test exif_parse::tests::test_detect_tiff_header_invalid_marker ... ok [INFO] [stdout] test exif_parse::tests::test_detect_tiff_header_big_endian ... ok [INFO] [stdout] test exif::tests::test_decode_rational_zero_denominator ... ok [INFO] [stdout] test exif::tests::test_sony_tag_name_unknown ... ok [INFO] [stdout] test exif::tests::test_sony_makernote_zero_entries_with_header ... ok [INFO] [stdout] test exif::tests::test_exif_round_trip ... ok [INFO] [stdout] test exif_parse::tests::test_byte_order_display ... ok [INFO] [stdout] test exif::tests::test_makernote_dialect_detect_nikon ... ok [INFO] [stdout] test exif::tests::test_makernote_dialect_detect_sony ... ok [INFO] [stdout] test exif_parse::tests::test_detect_tiff_header_little_endian ... ok [INFO] [stdout] test exif_parse::tests::test_detect_tiff_header_too_short ... ok [INFO] [stdout] test exif_parse::tests::test_exif_data_type_element_size ... ok [INFO] [stdout] test exif::tests::test_nikon_makernote_bad_header ... ok [INFO] [stdout] test exif_parse::tests::test_exif_tag_as_ascii ... ok [INFO] [stdout] test exif_parse::tests::test_exif_data_type_roundtrip ... ok [INFO] [stdout] test exif::tests::test_nikon_makernote_minimal_zero_entries ... ok [INFO] [stdout] test exif_parse::tests::test_exif_tag_as_long ... ok [INFO] [stdout] test exif_parse::tests::test_exif_tag_as_rational ... ok [INFO] [stdout] test exif_parse::tests::test_exif_tag_value_byte_length ... ok [INFO] [stdout] test exif_parse::tests::test_gcd ... ok [INFO] [stdout] test exif_parse::tests::test_parsed_exif_find_tag ... ok [INFO] [stdout] test exif_parse::tests::test_rational_display_whole_number ... ok [INFO] [stdout] test exif_parse::tests::test_rational_new_and_display ... ok [INFO] [stdout] test exif_parse::tests::test_parsed_ifd_operations ... ok [INFO] [stdout] test exif::tests::test_get_tag_name ... ok [INFO] [stdout] test exif_parse::tests::test_rational_simplify ... ok [INFO] [stdout] test exif_parse::tests::test_rational_is_integer ... ok [INFO] [stdout] test exif_parse::tests::test_srational_to_f64 ... ok [INFO] [stdout] test exif_parse::tests::test_rational_zero_denominator ... ok [INFO] [stdout] test exif_parse::tests::test_exif_tag_as_short ... ok [INFO] [stdout] test exif_parse::tests::test_srational_zero_denominator ... ok [INFO] [stdout] test exif_parse::tests::test_well_known_tag_display_name ... ok [INFO] [stdout] test exif_parse::tests::test_well_known_tag_unknown_id ... ok [INFO] [stdout] test exif_parse::tests::test_well_known_tag_roundtrip ... ok [INFO] [stdout] test field_validator::tests::test_field_type_allows_empty_optional_text ... ok [INFO] [stdout] test field_validator::tests::test_field_type_required_text_no_empty ... ok [INFO] [stdout] test field_validator::tests::test_validate_number_nan_fails ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_empty_required_text_fails ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_invalid_integer ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_invalid_number ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_invalid_datetime ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_invalid_tag ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_invalid_url ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_valid_datetime ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_valid_integer ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_valid_tag ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_valid_title ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_valid_number ... ok [INFO] [stdout] test field_validator::tests::test_validation_error_display ... ok [INFO] [stdout] test field_validator::tests::test_validate_string_valid_url ... ok [INFO] [stdout] test field_validator::tests::test_validation_report_no_errors ... ok [INFO] [stdout] test field_validator::tests::test_validation_report_has_errors ... ok [INFO] [stdout] test geotag::tests::test_bbox_center ... ok [INFO] [stdout] test geotag::tests::test_bbox_from_center ... ok [INFO] [stdout] test geotag::tests::test_bbox_new ... ok [INFO] [stdout] test geotag::tests::test_bbox_contains ... ok [INFO] [stdout] test geotag::tests::test_bbox_validate_inverted ... ok [INFO] [stdout] test geotag::tests::test_bbox_validate_valid ... ok [INFO] [stdout] test geotag::tests::test_bearing_east ... ok [INFO] [stdout] test geotag::tests::test_coordinate_display_with_altitude ... ok [INFO] [stdout] test geotag::tests::test_coordinate_from_dms_south ... ok [INFO] [stdout] test geotag::tests::test_coordinate_default ... ok [INFO] [stdout] test geotag::tests::test_bbox_overlaps ... ok [INFO] [stdout] test geotag::tests::test_bearing_north ... ok [INFO] [stdout] test geotag::tests::test_coordinate_from_metadata_empty ... ok [INFO] [stdout] test geotag::tests::test_coordinate_from_dms ... ok [INFO] [stdout] test geotag::tests::test_coordinate_from_metadata_float_values ... ok [INFO] [stdout] test geotag::tests::test_coordinate_from_metadata_south_west ... ok [INFO] [stdout] test geotag::tests::test_coordinate_display_string ... ok [INFO] [stdout] test geotag::tests::test_coordinate_display_trait ... ok [INFO] [stdout] test geotag::tests::test_coordinate_southern_hemisphere ... ok [INFO] [stdout] test geotag::tests::test_coordinate_new ... ok [INFO] [stdout] test geotag::tests::test_coordinate_from_metadata_altitude_below_sea_level ... ok [INFO] [stdout] test geotag::tests::test_coordinate_to_iso6709_with_altitude ... ok [INFO] [stdout] test geotag::tests::test_coordinate_to_dms ... ok [INFO] [stdout] test geotag::tests::test_coordinate_is_within_bbox ... ok [INFO] [stdout] test geotag::tests::test_coordinate_to_iso6709 ... ok [INFO] [stdout] test geotag::tests::test_coordinate_to_metadata_direction_refs ... ok [INFO] [stdout] test geotag::tests::test_coordinate_validate_invalid_lat ... ok [INFO] [stdout] test geotag::tests::test_coordinate_metadata_round_trip ... ok [INFO] [stdout] test geotag::tests::test_coordinate_validate_valid ... ok [INFO] [stdout] test geotag::tests::test_decimal_to_dms ... ok [INFO] [stdout] test geotag::tests::test_dms_coordinate_to_decimal ... ok [INFO] [stdout] test geotag::tests::test_dms_round_trip ... ok [INFO] [stdout] test geotag::tests::test_dms_to_decimal ... ok [INFO] [stdout] test geotag::tests::test_coordinate_with_altitude ... ok [INFO] [stdout] test geotag::tests::test_parse_dms_string_full ... ok [INFO] [stdout] test geotag::tests::test_parse_dms_string_no_seconds ... ok [INFO] [stdout] test id3v2::tests::test_default_write_encoding_is_utf8 ... ok [INFO] [stdout] test geotag::tests::test_parse_dms_string_invalid ... ok [INFO] [stdout] test id3v2::tests::test_default_write_options_v24_utf8 ... ok [INFO] [stdout] test geotag::tests::test_distance_antipodes ... ok [INFO] [stdout] test geotag::tests::test_distance_same_point ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_decode_all ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_empty_tag_no_frames ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_contains_frame ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_find ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_frame_index_entry_fields ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_index_entries ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_new_valid_tag ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_decode_frame_existing ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_decode_all_matches_parse ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_decode_frame_missing ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_raw_body ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_too_short ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_unsupported_version ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_v23_support ... ok [INFO] [stdout] test geotag::tests::test_coordinate_validate_invalid_lon ... ok [INFO] [stdout] test id3v2::tests::test_parse_v24_utf8_text_frame ... ok [INFO] [stdout] test id3v2::tests::test_synchsafe_int ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_not_id3 ... ok [INFO] [stdout] test id3v2::tests::test_write_encoding_enum_coverage ... ok [INFO] [stdout] test exif_parse::tests::test_rational_to_f64 ... ok [INFO] [stdout] test id3v2::tests::test_text_encoding_byte ... ok [INFO] [stdout] test id3v2::tests::test_write_v23_falls_back_from_utf8_to_utf16 ... ok [INFO] [stdout] test id3v2::tests::test_text_encoding ... ok [INFO] [stdout] test id3v2::tests::test_write_integer_value_as_text_frame ... ok [INFO] [stdout] test id3v2::tests::test_write_v24_latin1_round_trip ... ok [INFO] [stdout] test iptc::tests::test_get_dataset_id ... ok [INFO] [stdout] test id3v2::tests::test_write_v24_synchsafe_frame_sizes ... ok [INFO] [stdout] test id3v2::tests::test_write_v24_utf8_round_trip ... ok [INFO] [stdout] test id3v2::tests::test_write_text_frame_utf8_default ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_application_record_urgency_dataset ... ok [INFO] [stdout] test id3v2::tests::test_lazy_id3v2_raw_body_missing ... ok [INFO] [stdout] test iptc::tests::test_get_dataset_name ... ok [INFO] [stdout] test iptc::tests::test_iptc_round_trip ... ok [INFO] [stdout] test iptc_iim::tests::test_encode_iptc_iim_empty ... ok [INFO] [stdout] test iptc_iim::tests::test_encode_iptc_iim_headline_only ... ok [INFO] [stdout] test iptc_iim::tests::test_encode_iptc_iim_multiple_keywords ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_application_record_keywords ... ok [INFO] [stdout] test iptc_iim::tests::test_encode_iptc_iim_urgency ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_application_record_to_datasets_headline ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_application_record_word_count ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_application_record_word_count_empty ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_builder_multiple_keywords ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_dataset_as_string_valid_utf8 ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_parser_parse_multiple ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_parser_skips_non_marker_bytes ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_photo_meta_default ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_parser_parse_valid ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_photo_meta_to_application_record ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_builder_basic ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_photo_meta_from_application_record ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_builder_urgency_clamped ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_record_numbers ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_dataset_as_string_invalid_utf8 ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_dataset_new_and_tag ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_iim_roundtrip_full ... ok [INFO] [stdout] test iptc_iim::tests::test_iptc_iim_roundtrip_minimal ... ok [INFO] [stdout] test iptc_iim::tests::test_parse_iptc_iim_empty ... ok [INFO] [stdout] test iptc_iim::tests::test_parse_iptc_iim_single_field ... ok [INFO] [stdout] test iptc_iim::tests::test_parse_iptc_iim_truncated_data ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_extract_simple_element_missing ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_iptc_bridge_empty_meta ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_iptc_bridge_location_fields ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_iptc_bridge_basic ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_iptc_bridge_namespaces ... ok [INFO] [stdout] test itunes::tests::test_detect_image_mime_type ... ok [INFO] [stdout] test itunes::tests::test_encode_atom_value_text ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_iptc_bridge_urgency_and_date ... ok [INFO] [stdout] test itunes::tests::test_itunes_text_atom_write ... ok [INFO] [stdout] test itunes::tests::test_parse_compilation_true ... ok [INFO] [stdout] test itunes::tests::test_parse_gapless_true ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_iptc_bridge_xml_escaping ... ok [INFO] [stdout] test itunes::tests::test_parse_integer_atom_various_sizes ... ok [INFO] [stdout] test itunes::tests::test_parse_media_type_atom ... ok [INFO] [stdout] test itunes::tests::test_atom_constants ... ok [INFO] [stdout] test itunes::tests::test_parse_tempo_atom ... ok [INFO] [stdout] test itunes::tests::test_write_compilation_round_trip ... ok [INFO] [stdout] test itunes::tests::test_write_gapless_round_trip ... ok [INFO] [stdout] test itunes::tests::test_encode_atom_value_tempo ... ok [INFO] [stdout] test itunes::tests::test_write_tempo_round_trip ... ok [INFO] [stdout] test itunes::tests::test_parse_compilation_false ... ok [INFO] [stdout] test linked_data::tests::test_graph_all_triples ... ok [INFO] [stdout] test linked_data::tests::test_graph_objects_for ... ok [INFO] [stdout] test linked_data::tests::test_graph_add_and_len ... ok [INFO] [stdout] test iptc_iim::tests::test_xmp_extract_simple_element ... ok [INFO] [stdout] test linked_data::tests::test_graph_remove_subject ... ok [INFO] [stdout] test linked_data::tests::test_graph_subjects_with_object_uri ... ok [INFO] [stdout] test linked_data::tests::test_graph_triples_for_predicate ... ok [INFO] [stdout] test linked_data::tests::test_graph_triples_for_subject ... ok [INFO] [stdout] test linked_data::tests::test_namespace_binding_new ... ok [INFO] [stdout] test linked_data::tests::test_namespace_compact ... ok [INFO] [stdout] test linked_data::tests::test_namespace_compact_no_match ... ok [INFO] [stdout] test linked_data::tests::test_namespace_len_and_is_empty ... ok [INFO] [stdout] test itunes::tests::test_parse_rating_atom ... ok [INFO] [stdout] test itunes::tests::test_write_gapless_false_round_trip ... ok [INFO] [stdout] test linked_data::tests::test_namespace_register_and_resolve ... ok [INFO] [stdout] test linked_data::tests::test_namespace_resolve_unknown_prefix ... ok [INFO] [stdout] test linked_data::tests::test_triple_object_is_uri ... ok [INFO] [stdout] test linked_data::tests::test_triple_object_is_literal ... ok [INFO] [stdout] test matroska::tests::test_matroska_empty ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_empty_tags ... ok [INFO] [stdout] test matroska::tests::test_matroska_round_trip ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_language_and_default ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_simple_tag_no_targets ... ok [INFO] [stdout] test matroska::tests::test_simple_tag_collect_flat_no_children ... ok [INFO] [stdout] test matroska::tests::test_full_structured_parse_write_round_trip ... ok [INFO] [stdout] test matroska::tests::test_simple_tag_collect_flat_with_children ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_targets_target_type_value ... ok [INFO] [stdout] test matroska::tests::test_simple_tag_new ... ok [INFO] [stdout] test matroska::tests::test_matroska_tag_flatten_single ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_nested_simple_tag ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_targets_track_uid ... ok [INFO] [stdout] test matroska::tests::test_parse_xml_multiple_tags ... ok [INFO] [stdout] test matroska::tests::test_simple_tag_with_child ... ok [INFO] [stdout] test matroska::tests::test_target_type_value_default_is_album ... ok [INFO] [stdout] test matroska::tests::test_write_xml_round_trip_simple ... ok [INFO] [stdout] test matroska::tests::test_target_type_value_roundtrip ... ok [INFO] [stdout] test matroska::tests::test_targets_is_global_when_no_uids ... ok [INFO] [stdout] test matroska::tests::test_targets_not_global_when_track_uid ... ok [INFO] [stdout] test linked_data::tests::test_triple_object_value ... ok [INFO] [stdout] test matroska::tests::test_to_metadata_duplicate_keys_joined ... ok [INFO] [stdout] test matroska::tests::test_to_metadata_nested_flattened ... ok [INFO] [stdout] test matroska::tests::test_to_metadata_simple ... ok [INFO] [stdout] test matroska::tests::test_matroska_tag_flatten_empty ... ok [INFO] [stdout] test media_metadata::tests::test_exif_reader_jpeg_without_exif ... ok [INFO] [stdout] test matroska::tests::test_write_xml_nested_simple_tag_round_trip ... ok [INFO] [stdout] test media_metadata::tests::test_exif_reader_non_jpeg_returns_empty ... ok [INFO] [stdout] test media_metadata::tests::test_exif_reader_tag_name_known ... ok [INFO] [stdout] test media_metadata::tests::test_exif_reader_tag_name_unknown ... ok [INFO] [stdout] test media_metadata::tests::test_id3_parser_empty_returns_empty ... ok [INFO] [stdout] test media_metadata::tests::test_id3v1_parsing ... ok [INFO] [stdout] test media_metadata::tests::test_id3v2_minimal_header ... ok [INFO] [stdout] test media_metadata::tests::test_media_metadata_builder ... ok [INFO] [stdout] test media_metadata::tests::test_media_metadata_default ... ok [INFO] [stdout] test media_metadata::tests::test_media_metadata_merge ... ok [INFO] [stdout] test media_metadata::tests::test_media_metadata_merge_no_duplicate_tags ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_auto_id3v2 ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_auto_xmp ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_empty_targets ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_exif_target_non_jpeg ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_extract_and_merge ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_id3v2_target ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_multiple_targets_in_order ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_probe_result_is_ok ... ok [INFO] [stdout] test field_validator::tests::test_field_type_number_no_empty ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_xmp_invalid_utf8 ... ok [INFO] [stdout] test av1_metadata::tests::test_av1_display ... ok [INFO] [stdout] test media_metadata::tests::test_parallel_extractor_xmp_target ... ok [INFO] [stdout] test media_metadata::tests::test_probe_target_new ... ok [INFO] [stdout] test media_metadata::tests::test_store_delete ... ok [INFO] [stdout] test media_metadata::tests::test_store_delete_nonexistent ... ok [INFO] [stdout] test media_metadata::tests::test_store_list_keys ... ok [INFO] [stdout] test media_metadata::tests::test_store_overwrite ... ok [INFO] [stdout] test media_metadata::tests::test_store_search ... ok [INFO] [stdout] test media_metadata::tests::test_store_search_by_tag ... ok [INFO] [stdout] test media_metadata::tests::test_store_not_found ... ok [INFO] [stdout] test media_metadata::tests::test_store_set_get ... ok [INFO] [stdout] test media_metadata::tests::test_xmp_parser_basic ... ok [INFO] [stdout] test media_metadata::tests::test_xmp_parser_create_date ... ok [INFO] [stdout] test media_metadata::tests::test_xmp_parser_empty ... ok [INFO] [stdout] test media_metadata::tests::test_xmp_parser_subjects ... ok [INFO] [stdout] test metadata_diff::tests::test_applier_apply_in_place ... ok [INFO] [stdout] test metadata_diff::tests::test_applier_apply ... ok [INFO] [stdout] test metadata_diff::tests::test_change_added_not_destructive ... ok [INFO] [stdout] test metadata_diff::tests::test_change_modified_is_destructive ... ok [INFO] [stdout] test metadata_diff::tests::test_change_new_value ... ok [INFO] [stdout] test metadata_diff::tests::test_change_old_value ... ok [INFO] [stdout] test metadata_diff::tests::test_change_removed_is_destructive ... ok [INFO] [stdout] test metadata_diff::tests::test_conflict_type_classification ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_compute_added ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_compute_modified ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_compute_no_change ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_compute_removed ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_default_is_empty ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_has_destructive_changes ... ok [INFO] [stdout] test metadata_diff::tests::test_diff_len ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_both_added_same_key ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_all_empty ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_both_removed ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_complex_scenario ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_conflict_mark_conflicts ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_conflict_prefer_base ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_both_same_change ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_conflict_prefer_theirs ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_disjoint_additions ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_empty_base ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_keep_longer_strategy ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_keep_shorter_both_removed ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_keep_shorter_strategy ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_mark_conflicts_modify_delete ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_merge_default ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_merge_result_helpers ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_modify_delete_conflict ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_no_changes ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_one_sided_ours ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_one_sided_theirs ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_strategy_for_key ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_conflict_both_modified ... ok [INFO] [stdout] test metadata_export::tests::test_display_format ... ok [INFO] [stdout] test metadata_diff::tests::test_three_way_per_key_strategy ... ok [INFO] [stdout] test metadata_export::tests::test_export_batch ... ok [INFO] [stdout] test metadata_export::tests::test_export_single_record ... ok [INFO] [stdout] test metadata_export::tests::test_extension_csv ... ok [INFO] [stdout] test metadata_export::tests::test_extension_json ... ok [INFO] [stdout] test metadata_export::tests::test_extension_tsv ... ok [INFO] [stdout] test metadata_export::tests::test_extension_xml ... ok [INFO] [stdout] test metadata_export::tests::test_mime_type_csv ... ok [INFO] [stdout] test metadata_export::tests::test_clear_records ... ok [INFO] [stdout] test metadata_export::tests::test_mime_type_json ... ok [INFO] [stdout] test metadata_export::tests::test_record_count_empty ... ok [INFO] [stdout] test metadata_export::tests::test_render_csv_has_header ... ok [INFO] [stdout] test metadata_export::tests::test_render_tsv_has_tab_separator ... ok [INFO] [stdout] test metadata_export::tests::test_render_json_contains_key ... ok [INFO] [stdout] test metadata_export::tests::test_render_xml_structure ... ok [INFO] [stdout] test metadata_history::tests::test_by_author ... ok [INFO] [stdout] test metadata_history::tests::test_diff_revisions_add ... ok [INFO] [stdout] test metadata_history::tests::test_diff_revisions_modify ... ok [INFO] [stdout] test metadata_history::tests::test_change_kind_display ... ok [INFO] [stdout] test metadata_history::tests::test_diff_revisions_remove ... ok [INFO] [stdout] test metadata_history::tests::test_field_history ... ok [INFO] [stdout] test metadata_history::tests::test_get_revision ... ok [INFO] [stdout] test metadata_history::tests::test_in_time_range ... ok [INFO] [stdout] test metadata_history::tests::test_new_history_is_empty ... ok [INFO] [stdout] test metadata_history::tests::test_record_add ... ok [INFO] [stdout] test metadata_history::tests::test_record_modify ... ok [INFO] [stdout] test metadata_history::tests::test_record_remove ... ok [INFO] [stdout] test metadata_history::tests::test_record_with_comment ... ok [INFO] [stdout] test metadata_history::tests::test_state_at_revision ... ok [INFO] [stdout] test metadata_history::tests::test_state_at_revision_with_remove ... ok [INFO] [stdout] test metadata_merge::tests::test_conflict_strategy_display ... ok [INFO] [stdout] test metadata_merge::tests::test_custom_separator ... ok [INFO] [stdout] test metadata_merge::tests::test_exclude_keys ... ok [INFO] [stdout] test metadata_merge::tests::test_field_value_creation ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_conflict_source_count ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_disjoint_sources ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_keep_first ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_keep_last ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_keep_longer ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_keep_shorter ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_no_conflict ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_result_default ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_skip ... ok [INFO] [stdout] test metadata_merge::tests::test_merger_default_trait ... ok [INFO] [stdout] test metadata_merge::tests::test_metadata_source_field_count ... ok [INFO] [stdout] test metadata_merge::tests::test_per_key_strategy ... ok [INFO] [stdout] test metadata_sanitize::tests::test_allow_list_mode ... ok [INFO] [stdout] test metadata_sanitize::tests::test_broadcast_policy ... ok [INFO] [stdout] test metadata_sanitize::tests::test_broadcast_policy_preserves_rights ... ok [INFO] [stdout] test metadata_sanitize::tests::test_combined_strip_and_redact ... ok [INFO] [stdout] test metadata_sanitize::tests::test_custom_redact_placeholder ... ok [INFO] [stdout] test metadata_sanitize::tests::test_default_policy_no_changes ... ok [INFO] [stdout] test metadata_sanitize::tests::test_distribution_policy ... ok [INFO] [stdout] test metadata_sanitize::tests::test_empty_fields_no_panic ... ok [INFO] [stdout] test metadata_sanitize::tests::test_field_category_gps_patterns ... ok [INFO] [stdout] test metadata_sanitize::tests::test_field_category_personal_patterns ... ok [INFO] [stdout] test metadata_sanitize::tests::test_field_category_rights_patterns ... ok [INFO] [stdout] test metadata_sanitize::tests::test_field_category_technical_patterns ... ok [INFO] [stdout] test metadata_sanitize::tests::test_field_category_temporal_patterns ... ok [INFO] [stdout] test metadata_sanitize::tests::test_fnv1a_hash_deterministic ... ok [INFO] [stdout] test metadata_sanitize::tests::test_fnv1a_hash_different_inputs ... ok [INFO] [stdout] test metadata_sanitize::tests::test_fnv1a_hash_format ... ok [INFO] [stdout] test metadata_sanitize::tests::test_gdpr_policy ... ok [INFO] [stdout] test metadata_sanitize::tests::test_gdpr_policy_strips_all_pii ... ok [INFO] [stdout] test metadata_sanitize::tests::test_matches_patterns_case_insensitive ... ok [INFO] [stdout] test metadata_sanitize::tests::test_max_value_length_truncation ... ok [INFO] [stdout] test metadata_sanitize::tests::test_privacy_policy ... ok [INFO] [stdout] test metadata_sanitize::tests::test_redact_field ... ok [INFO] [stdout] test metadata_sanitize::tests::test_report_total_affected ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_category_device_info ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_category_match ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_contains_match ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_hash_anonymize ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_replace_with ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rules_first_match_wins ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_prefix_match ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_allow_list ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_rule_replace_with ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_exact_match ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_rule_strip ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_truncate ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_redact ... ok [INFO] [stdout] test metadata_sanitize::tests::test_strip_gps ... ok [INFO] [stdout] test metadata_template::tests::test_add_field ... ok [INFO] [stdout] test metadata_sanitize::tests::test_strip_personal_info ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_strip_gps ... ok [INFO] [stdout] test metadata_template::tests::test_apply_defaults ... ok [INFO] [stdout] test metadata_sanitize::tests::test_strip_except ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_truncate ... ok [INFO] [stdout] test metadata_sanitize::tests::test_sanitize_metadata_rule_hash ... ok [INFO] [stdout] test metadata_sanitize::tests::test_rule_with_description ... ok [INFO] [stdout] test metadata_sanitize::tests::test_strip_device_info ... ok [INFO] [stdout] test metadata_sanitize::tests::test_strip_specific_field ... ok [INFO] [stdout] test metadata_template::tests::test_registry_basic ... ok [INFO] [stdout] test metadata_template::tests::test_registry_by_category ... ok [INFO] [stdout] test metadata_template::tests::test_broadcast_template_preset ... ok [INFO] [stdout] test metadata_template::tests::test_required_keys ... ok [INFO] [stdout] test metadata_template::tests::test_podcast_template_preset ... ok [INFO] [stdout] test metadata_template::tests::test_template_category_display ... ok [INFO] [stdout] test metadata_template::tests::test_template_creation ... ok [INFO] [stdout] test metadata_template::tests::test_validate_non_empty_fail ... ok [INFO] [stdout] test metadata_template::tests::test_template_with_description ... ok [INFO] [stdout] test metadata_template::tests::test_registry_remove ... ok [INFO] [stdout] test metadata_template::tests::test_validate_one_of_fail ... ok [INFO] [stdout] test metadata_template::tests::test_validate_length_range ... ok [INFO] [stdout] test metadata_template::tests::test_strip_unlisted_flag ... ok [INFO] [stdout] test metadata_template::tests::test_validate_pattern_pass ... ok [INFO] [stdout] test metadata_template::tests::test_validate_required_missing ... ok [INFO] [stdout] test musicbrainz::tests::test_apev2_tag_keys ... ok [INFO] [stdout] test metadata_template::tests::test_validate_one_of_pass ... ok [INFO] [stdout] test metadata_template::tests::test_validate_pattern_fail ... ok [INFO] [stdout] test musicbrainz::tests::test_normalize_mbid_invalid ... ok [INFO] [stdout] test musicbrainz::tests::test_tag_keys_for_format ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_all_fields ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_apev2_no_label_track ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_equality ... ok [INFO] [stdout] test musicbrainz::tests::test_entity_type_url_path ... ok [INFO] [stdout] test musicbrainz::tests::test_id3v2_tag_keys ... ok [INFO] [stdout] test musicbrainz::tests::test_mbid_url_artist ... ok [INFO] [stdout] test musicbrainz::tests::test_mbid_url_invalid ... ok [INFO] [stdout] test musicbrainz::tests::test_mbid_url_normalizes_case ... ok [INFO] [stdout] test musicbrainz::tests::test_mbid_url_recording ... ok [INFO] [stdout] test musicbrainz::tests::test_mbid_url_release ... ok [INFO] [stdout] test musicbrainz::tests::test_entity_type_display ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_from_empty_metadata ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_id3v2_metadata_round_trip ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_new_empty ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_urls ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_urls_none ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_validate_multiple_artist_ids ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_validate_invalid ... ok [INFO] [stdout] test musicbrainz::tests::test_normalize_mbid ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_validate_valid ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_validate_invalid_in_multi ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_with_builders ... ok [INFO] [stdout] test opengraph::tests::test_html_attr_escape_passthrough ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_vorbis_label_and_track ... ok [INFO] [stdout] test musicbrainz::tests::test_validate_mbid_valid_with_whitespace ... ok [INFO] [stdout] test opengraph::tests::test_og_to_twitter_card_video ... ok [INFO] [stdout] test musicbrainz::tests::test_validate_mbid_invalid ... ok [INFO] [stdout] test musicbrainz::tests::test_validate_mbid_valid ... ok [INFO] [stdout] test musicbrainz::tests::test_validate_mbid_wrong_section_lengths ... ok [INFO] [stdout] test musicbrainz::tests::test_vorbis_tag_keys ... ok [INFO] [stdout] test opengraph::tests::test_from_html_meta_empty ... ok [INFO] [stdout] test opengraph::tests::test_from_html_meta_basic ... ok [INFO] [stdout] test opengraph::tests::test_og_type_from_str_unknown ... ok [INFO] [stdout] test opengraph::tests::test_og_type_as_str ... ok [INFO] [stdout] test opengraph::tests::test_og_type_roundtrip ... ok [INFO] [stdout] test opengraph::tests::test_og_builder_methods ... ok [INFO] [stdout] test opengraph::tests::test_og_to_twitter_card_article ... ok [INFO] [stdout] test opengraph::tests::test_from_html_meta_escaped_content ... ok [INFO] [stdout] test musicbrainz::tests::test_tags_vorbis_metadata_round_trip ... ok [INFO] [stdout] test opengraph::tests::test_to_html_meta_tags_escaping ... ok [INFO] [stdout] test opengraph::tests::test_to_html_meta_tags_full ... ok [INFO] [stdout] test opengraph::tests::test_to_html_meta_tags_minimal ... ok [INFO] [stdout] test opengraph::tests::test_to_twitter_meta_tags_basic ... ok [INFO] [stdout] test opengraph::tests::test_twitter_card_type_display ... ok [INFO] [stdout] test opengraph::tests::test_twitter_card_type_roundtrip ... ok [INFO] [stdout] test opengraph::tests::test_og_type_display ... ok [INFO] [stdout] test opengraph::tests::test_roundtrip_og_html ... ok [INFO] [stdout] test opengraph::tests::test_from_html_meta_video_with_dimensions ... ok [INFO] [stdout] test opengraph::tests::test_twitter_card_builder ... ok [INFO] [stdout] test opus_tags::tests::test_db_to_q78_round_trip ... ok [INFO] [stdout] test opus_tags::tests::test_db_to_q78_clamping ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_bytes_round_trip_stereo ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_builders ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_metadata_round_trip ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_parse_bad_magic ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_parse_mono ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_parse_too_short ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_parse_valid ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_default ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_channel_types ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_total_album_gain ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_from_empty_metadata ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_total_track_gain_linear ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_round_trip ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_parse_zero_channels ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_total_track_gain ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_pre_skip_ms ... ok [INFO] [stdout] test opus_tags::tests::test_q78_to_db_negative ... ok [INFO] [stdout] test opus_tags::tests::test_q78_to_db_positive ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_validate_ok ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_default ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_validate_zero_channels ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_from_raw ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_is_zero ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_linear ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_reference_lufs ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_with_gains ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_tag_string_round_trip ... ok [INFO] [stdout] test opus_tags::tests::test_q78_to_db_zero ... ok [INFO] [stdout] test provenance::tests::test_entry_hashes ... ok [INFO] [stdout] test provenance::tests::test_entry_is_automated_auto_prefix ... ok [INFO] [stdout] test provenance::tests::test_entry_is_not_automated ... ok [INFO] [stdout] test provenance::tests::test_provenance_action_is_destructive ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_action_count ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_add_entry ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_empty ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_asset_id ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_first_creation ... ok [INFO] [stdout] test opengraph::tests::test_to_twitter_meta_tags_player ... ok [INFO] [stdout] test opus_tags::tests::test_opus_header_with_channel_mapping ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_from_db ... ok [INFO] [stdout] test opus_tags::tests::test_r128_gain_tag_string_invalid ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_first_creation_none ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_has_edits_with_edit ... ok [INFO] [stdout] test rights_metadata::tests::test_cc_license_allows_derivatives ... ok [INFO] [stdout] test rights_metadata::tests::test_cc_license_spdx_id ... ok [INFO] [stdout] test rights_metadata::tests::test_copyright_status_allows_reuse_creative_commons ... ok [INFO] [stdout] test quicktime::tests::test_quicktime_empty ... ok [INFO] [stdout] test rights_metadata::tests::test_copyright_status_allows_reuse_public_domain ... ok [INFO] [stdout] test rights_metadata::tests::test_copyright_status_does_not_allow_reuse ... ok [INFO] [stdout] test rights_metadata::tests::test_rights_metadata_has_license ... ok [INFO] [stdout] test quicktime::tests::test_quicktime_round_trip ... ok [INFO] [stdout] test rights_metadata::tests::test_rights_metadata_holder_field ... ok [INFO] [stdout] test rights_metadata::tests::test_rights_metadata_is_not_public_domain ... ok [INFO] [stdout] test provenance::tests::test_entry_is_automated_system_prefix ... ok [INFO] [stdout] test rights_metadata::tests::test_cc_license_allows_commercial ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_has_edits_with_transcode ... ok [INFO] [stdout] test field_validator::tests::test_validate_number_finite ... ok [INFO] [stdout] test metadata_merge::tests::test_merge_concatenate ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_new ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_total_album_gain_none ... ok [INFO] [stdout] test opus_tags::tests::test_opus_metadata_validate_family0_too_many_channels ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_no_edits ... ok [INFO] [stdout] test rights_metadata::tests::test_rights_metadata_no_license ... ok [INFO] [stdout] test rights_metadata::tests::test_rights_metadata_year_field ... ok [INFO] [stdout] test rights_metadata::tests::test_rights_metadata_is_public_domain ... ok [INFO] [stdout] test schema::tests::test_float_validation ... ok [INFO] [stdout] test schema::tests::test_required_fields ... ok [INFO] [stdout] test schema::tests::test_dublin_core_schema ... ok [INFO] [stdout] test schema::tests::test_integer_validation ... ok [INFO] [stdout] test schema::tests::test_boolean_validation ... ok [INFO] [stdout] test schema::tests::test_date_validation ... ok [INFO] [stdout] test schema::tests::test_url_validation ... ok [INFO] [stdout] test schema::tests::test_field_type_as_str ... ok [INFO] [stdout] test schema::tests::test_schema_validate_max_length ... ok [INFO] [stdout] test schema::tests::test_valid_data_produces_no_errors ... ok [INFO] [stdout] test schema::tests::test_schema_validate_allowed_values ... ok [INFO] [stdout] test geotag::tests::test_distance_nyc_to_london ... ok [INFO] [stdout] test schema::tests::test_dublin_core_type_validation ... ok [INFO] [stdout] test schema::tests::test_schema_validate_required_missing ... ok [INFO] [stdout] test schema::tests::test_xmp_basic_schema ... ok [INFO] [stdout] test schema_org::tests::test_duration_exact_hour ... ok [INFO] [stdout] test schema_org::tests::test_parse_invalid_unit ... ok [INFO] [stdout] test schema_org::tests::test_duration_hours_minutes_seconds ... ok [INFO] [stdout] test schema_org::tests::test_duration_large_value ... ok [INFO] [stdout] test schema_org::tests::test_duration_seconds_only ... ok [INFO] [stdout] test schema_org::tests::test_parse_hours_minutes_seconds ... ok [INFO] [stdout] test schema_org::tests::test_parse_json_ld_minimal ... ok [INFO] [stdout] test schema_org::tests::test_parse_json_ld_missing_type ... ok [INFO] [stdout] test schema_org::tests::test_parse_pt0s ... ok [INFO] [stdout] test schema_org::tests::test_parse_invalid_prefix ... ok [INFO] [stdout] test provenance::tests::test_provenance_chain_last_action ... ok [INFO] [stdout] test schema_org::tests::test_schema_type_roundtrip ... ok [INFO] [stdout] test schema_org::tests::test_video_object_meta_new ... ok [INFO] [stdout] test schema_org::tests::test_parse_seconds_only ... ok [INFO] [stdout] test schema_registry::tests::test_field_definition_required_text ... ok [INFO] [stdout] test schema_org::tests::test_parse_json_ld_unknown_type ... ok [INFO] [stdout] test schema_org::tests::test_parse_minutes_seconds ... ok [INFO] [stdout] test schema_org::tests::test_to_json_ld_escaping ... ok [INFO] [stdout] test schema_org::tests::test_to_json_ld_minimal ... ok [INFO] [stdout] test schema_org::tests::test_parse_hours_only ... ok [INFO] [stdout] test schema_registry::tests::test_field_definition_validate_allowed_values ... ok [INFO] [stdout] test schema_org::tests::test_roundtrip_json_ld ... ok [INFO] [stdout] test schema_org::tests::test_to_json_ld_with_all_fields ... ok [INFO] [stdout] test schema_registry::tests::test_field_definition_validate_max_length ... ok [INFO] [stdout] test schema_org::tests::test_duration_zero ... ok [INFO] [stdout] test schema_registry::tests::test_registry_get_specific_version ... ok [INFO] [stdout] test schema_registry::tests::test_schema_field_count ... ok [INFO] [stdout] test schema_registry::tests::test_schema_required_fields ... ok [INFO] [stdout] test schema_registry::tests::test_schema_has_field ... ok [INFO] [stdout] test schema_registry::tests::test_schema_validate_missing_required ... ok [INFO] [stdout] test schema_registry::tests::test_schema_validate_ok ... ok [INFO] [stdout] test schema_registry::tests::test_registry_register_and_get_latest ... ok [INFO] [stdout] test schema_registry::tests::test_schema_version_compatibility_different_major ... ok [INFO] [stdout] test schema_org::tests::test_roundtrip_duration ... ok [INFO] [stdout] test schema_registry::tests::test_field_definition_with_description ... ok [INFO] [stdout] test schema_registry::tests::test_registry_schema_ids ... ok [INFO] [stdout] test schema_registry::tests::test_registry_total_versions ... ok [INFO] [stdout] test schema_org::tests::test_duration_minutes_and_seconds ... ok [INFO] [stdout] test schema_registry::tests::test_schema_version_compatibility_same_major ... ok [INFO] [stdout] test schema_registry::tests::test_schema_version_display ... ok [INFO] [stdout] test search::tests::test_execute_query_exclude_path ... ok [INFO] [stdout] test schema_registry::tests::test_registry_count ... ok [INFO] [stdout] test search::tests::test_execute_query_term_filter ... ok [INFO] [stdout] test search::tests::test_add_replaces_existing ... ok [INFO] [stdout] test search::tests::test_execute_query_multiple_terms ... ok [INFO] [stdout] test search::tests::test_execute_query_must_have_filter ... ok [INFO] [stdout] test search::tests::test_index_count ... ok [INFO] [stdout] test search::tests::test_remove_existing ... ok [INFO] [stdout] test search::tests::test_search_fulltext_no_match ... ok [INFO] [stdout] test sidecar::tests::test_from_str_csv ... ok [INFO] [stdout] test search::tests::test_remove_nonexistent ... ok [INFO] [stdout] test search::tests::test_search_by_field_case_insensitive ... ok [INFO] [stdout] test search::tests::test_search_by_field_found ... ok [INFO] [stdout] test sidecar::tests::test_find_sidecar_nonexistent ... ok [INFO] [stdout] test search::tests::test_search_by_field_not_found ... ok [INFO] [stdout] test search::tests::test_search_fulltext_empty_query_returns_all ... ok [INFO] [stdout] test sidecar::tests::test_from_str_xmp_roundtrip ... ok [INFO] [stdout] test sidecar::tests::test_serialize_csv ... ok [INFO] [stdout] test sidecar::tests::test_serialize_json ... ok [INFO] [stdout] test sidecar::tests::test_sidecar_new_empty ... ok [INFO] [stdout] test sidecar::tests::test_serialize_xmp ... ok [INFO] [stdout] test sidecar::tests::test_sidecar_path ... ok [INFO] [stdout] test sidecar::tests::test_sidecar_set_get ... ok [INFO] [stdout] test tag_normalize::tests::test_canonical_tag_display ... ok [INFO] [stdout] test sidecar::tests::test_serialize_yaml ... ok [INFO] [stdout] test tag_normalize::tests::test_custom_mapping_registration ... ok [INFO] [stdout] test sidecar::tests::test_xmp_escaping ... ok [INFO] [stdout] test sidecar::tests::test_sidecar_format_extension ... ok [INFO] [stdout] test tag_normalize::tests::test_denormalize_id3v2 ... ok [INFO] [stdout] test tag_normalize::tests::test_normalize_genre_plain ... ok [INFO] [stdout] test tag_normalize::tests::test_has_mapping ... ok [INFO] [stdout] test search::tests::test_search_fulltext_found ... ok [INFO] [stdout] test tag_normalize::tests::test_denormalize_itunes ... ok [INFO] [stdout] test tag_normalize::tests::test_denormalize_vorbis ... ok [INFO] [stdout] test tag_normalize::tests::test_join_track_field ... ok [INFO] [stdout] test tag_normalize::tests::test_normalize_genre_numeric ... ok [INFO] [stdout] test tag_normalize::tests::test_normalize_genre_mixed ... ok [INFO] [stdout] test tag_normalize::tests::test_mapping_count ... ok [INFO] [stdout] test tag_normalize::tests::test_normalizer_case_insensitive ... ok [INFO] [stdout] test tag_normalize::tests::test_sanitize_key ... ok [INFO] [stdout] test tests::test_metadata_value_accessors ... ok [INFO] [stderr] Doc-tests oximedia_metadata [INFO] [stdout] test tests::test_metadata_insert_get ... ok [INFO] [stdout] test tests::test_metadata_clear ... ok [INFO] [stdout] test tag_normalize::tests::test_normalizer_default_trait ... ok [INFO] [stdout] test tests::test_metadata_format_display ... ok [INFO] [stdout] test tests::test_picture_builder ... ok [INFO] [stdout] test tests::test_metadata_new ... ok [INFO] [stdout] test tag_normalize::tests::test_split_track_field ... ok [INFO] [stdout] test tag_normalize::tests::test_normalizer_id3v2_title ... ok [INFO] [stdout] test tag_normalize::tests::test_tag_format_display ... ok [INFO] [stdout] test tag_normalize::tests::test_normalizer_unknown_key ... ok [INFO] [stdout] test tag_normalize::tests::test_normalizer_vorbis_artist ... ok [INFO] [stdout] test tests::test_metadata_remove ... ok [INFO] [stdout] test vorbis::tests::test_empty_vorbis_comments ... ok [INFO] [stdout] test vorbis::tests::test_read_write_u32_le ... ok [INFO] [stdout] test vorbis::tests::test_parse_multivalue_from_raw_data ... ok [INFO] [stdout] test tests::test_picture_type_id3v2_conversion ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_add_value_creates_list ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_default ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_get_all_nonexistent ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_from_metadata_round_trip ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_helper_new ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_remove_all ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_set_and_get_first ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_round_trip ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_set_replaces_list ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_vendor ... ok [INFO] [stdout] test xmp::tests::test_parse_xmp_alt_array ... ok [INFO] [stdout] test xmp::tests::test_xmp_array_kind_element_names ... ok [INFO] [stdout] test xmp::tests::test_parse_xmp_seq_array ... ok [INFO] [stdout] test xmp::tests::test_xmp_array_kind_from_element ... ok [INFO] [stdout] test sidecar::tests::test_from_str_yaml ... ok [INFO] [stdout] test xmp::tests::test_xmp_array_push_and_default ... ok [INFO] [stdout] test xmp::tests::test_xmp_empty ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_into_metadata ... ok [INFO] [stdout] test vorbis::tests::test_vorbis_comments_multivalue ... ok [INFO] [stdout] test xmp::tests::test_parse_xmp_bag_array ... ok [INFO] [stdout] test xmp::tests::test_xmp_structured_array_write_and_parse_round_trip ... ok [INFO] [stdout] test xmp::tests::test_xmp_round_trip ... ok [INFO] [stdout] test xmp::tests::test_xmp_mixed_simple_and_structured ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 801 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test src/id3v2.rs - id3v2::LazyId3v2 (line 594) - compile ... ok [INFO] [stdout] test src/batch_editor.rs - batch_editor (line 11) - compile ... ok [INFO] [stdout] test src/av1_metadata.rs - av1_metadata (line 23) ... ok [INFO] [stdout] test src/opengraph.rs - opengraph (line 18) ... ok [INFO] [stdout] test src/lib.rs - (line 28) ... ok [INFO] [stdout] test src/schema_org.rs - schema_org::duration_to_iso8601 (line 157) ... ok [INFO] [stdout] test src/media_metadata.rs - media_metadata::ParallelMetadataExtractor (line 790) ... ok [INFO] [stdout] test src/opus_tags.rs - opus_tags (line 25) ... ok [INFO] [stdout] test src/schema_org.rs - schema_org::iso8601_to_seconds (line 198) ... ok [INFO] [stdout] test src/geotag.rs - geotag (line 17) ... ok [INFO] [stdout] test src/musicbrainz.rs - musicbrainz (line 27) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.94s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "894532cfcce7cb0d5b3d95d147cffbe60f6f7aa040ab6cf07cf1b821e37e8492", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "894532cfcce7cb0d5b3d95d147cffbe60f6f7aa040ab6cf07cf1b821e37e8492", kill_on_drop: false }` [INFO] [stdout] 894532cfcce7cb0d5b3d95d147cffbe60f6f7aa040ab6cf07cf1b821e37e8492