[INFO] fetching crate oximedia-gpu 0.1.5...
[INFO] testing oximedia-gpu-0.1.5 against 1.95.0 for beta-1.96-2
[INFO] extracting crate oximedia-gpu 0.1.5 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate oximedia-gpu 0.1.5
[INFO] finished tweaking crates.io crate oximedia-gpu 0.1.5
[INFO] tweaked toml for crates.io crate oximedia-gpu 0.1.5 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate oximedia-gpu 0.1.5 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate oximedia-gpu 0.1.5 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wgpu-naga-bridge v29.0.1
[INFO] [stderr]   Downloaded wgpu-core-deps-apple v29.0.0
[INFO] [stderr]   Downloaded wgpu-core-deps-windows-linux-android v29.0.0
[INFO] [stderr]   Downloaded range-alloc v0.1.5
[INFO] [stderr]   Downloaded bit-vec v0.9.1
[INFO] [stderr]   Downloaded raw-window-metal v1.1.0
[INFO] [stderr]   Downloaded bit-set v0.9.1
[INFO] [stderr]   Downloaded wgpu-core-deps-emscripten v29.0.0
[INFO] [stderr]   Downloaded codespan-reporting v0.13.1
[INFO] [stderr]   Downloaded spirv v0.4.0+sdk-1.4.341.0
[INFO] [stderr]   Downloaded gpu-allocator v0.28.0
[INFO] [stderr]   Downloaded wgpu-types v29.0.1
[INFO] [stderr]   Downloaded glow v0.17.0
[INFO] [stderr]   Downloaded wgpu v29.0.1
[INFO] [stderr]   Downloaded wgpu-core v29.0.1
[INFO] [stderr]   Downloaded wgpu-hal v29.0.1
[INFO] [stderr]   Downloaded naga v29.0.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c4a5494323e7e35fb135c4225dbf4c704b53f4708fdcdb48d19b20c69d6293d1
[INFO] running `Command { std: "docker" "start" "-a" "c4a5494323e7e35fb135c4225dbf4c704b53f4708fdcdb48d19b20c69d6293d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4a5494323e7e35fb135c4225dbf4c704b53f4708fdcdb48d19b20c69d6293d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4a5494323e7e35fb135c4225dbf4c704b53f4708fdcdb48d19b20c69d6293d1", kill_on_drop: false }`
[INFO] [stdout] c4a5494323e7e35fb135c4225dbf4c704b53f4708fdcdb48d19b20c69d6293d1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b1520593c4aa5330a2813a09aa06e554a07bdc7357e24d5372a159bd940e6643
[INFO] running `Command { std: "docker" "start" "-a" "b1520593c4aa5330a2813a09aa06e554a07bdc7357e24d5372a159bd940e6643", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling naga v29.0.1
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling bit-vec v0.9.1
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling ash v0.38.0+1.3.281
[INFO] [stderr]    Compiling bit-set v0.9.1
[INFO] [stderr]    Compiling spirv v0.4.0+sdk-1.4.341.0
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling wayland-sys v0.31.11
[INFO] [stderr]    Compiling codespan-reporting v0.13.1
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling hexf-parse v0.2.1
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling raw-window-handle v0.6.2
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling gpu-descriptor-types v0.2.0
[INFO] [stderr]    Compiling dlib v0.5.3
[INFO] [stderr]    Compiling wgpu-hal v29.0.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling presser v0.3.1
[INFO] [stderr]    Compiling gpu-descriptor v0.3.2
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling profiling v1.0.17
[INFO] [stderr]    Compiling renderdoc-sys v1.1.0
[INFO] [stderr]    Compiling ordered-float v5.3.0
[INFO] [stderr]    Compiling glow v0.17.0
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling wgpu-core v29.0.1
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling wgpu v29.0.1
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling pollster v0.4.0
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling wgpu-types v29.0.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling oximedia-core v0.1.5
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling gpu-allocator v0.28.0
[INFO] [stderr]    Compiling wgpu-naga-bridge v29.0.1
[INFO] [stderr]    Compiling wgpu-core-deps-windows-linux-android v29.0.0
[INFO] [stderr]    Compiling oximedia-gpu v0.1.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 56s
[INFO] running `Command { std: "docker" "inspect" "b1520593c4aa5330a2813a09aa06e554a07bdc7357e24d5372a159bd940e6643", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b1520593c4aa5330a2813a09aa06e554a07bdc7357e24d5372a159bd940e6643", kill_on_drop: false }`
[INFO] [stdout] b1520593c4aa5330a2813a09aa06e554a07bdc7357e24d5372a159bd940e6643
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 96891d57334c34f4263abfb3d42b4ca16d306e3b6d49df6149c3a4a6d3090b12
[INFO] running `Command { std: "docker" "start" "-a" "96891d57334c34f4263abfb3d42b4ca16d306e3b6d49df6149c3a4a6d3090b12", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling wayland-sys v0.31.11
[INFO] [stderr]    Compiling gpu-allocator v0.28.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling spirv v0.4.0+sdk-1.4.341.0
[INFO] [stderr]    Compiling gpu-descriptor-types v0.2.0
[INFO] [stderr]    Compiling wgpu-types v29.0.1
[INFO] [stderr]    Compiling gpu-descriptor v0.3.2
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ordered-float v5.3.0
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling naga v29.0.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling criterion-plot v0.8.2
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling oximedia-core v0.1.5
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling page_size v0.6.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling criterion v0.8.2
[INFO] [stderr]    Compiling wgpu-naga-bridge v29.0.1
[INFO] [stderr]    Compiling wgpu-hal v29.0.1
[INFO] [stderr]    Compiling wgpu-core-deps-windows-linux-android v29.0.0
[INFO] [stderr]    Compiling wgpu-core v29.0.1
[INFO] [stderr]    Compiling wgpu v29.0.1
[INFO] [stderr]    Compiling oximedia-gpu v0.1.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 08s
[INFO] running `Command { std: "docker" "inspect" "96891d57334c34f4263abfb3d42b4ca16d306e3b6d49df6149c3a4a6d3090b12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96891d57334c34f4263abfb3d42b4ca16d306e3b6d49df6149c3a4a6d3090b12", kill_on_drop: false }`
[INFO] [stdout] 96891d57334c34f4263abfb3d42b4ca16d306e3b6d49df6149c3a4a6d3090b12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 543466595c69b83720f8af50dd7fdb59530cceac1b3d58766efac8511fb2efd4
[INFO] running `Command { std: "docker" "start" "-a" "543466595c69b83720f8af50dd7fdb59530cceac1b3d58766efac8511fb2efd4", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/oximedia_gpu-02da8f06712d2b88)
[INFO] [stdout] 
[INFO] [stdout] running 1240 tests
[INFO] [stdout] test accelerator::tests::test_builder_default_builds ... ignored
[INFO] [stdout] test accelerator::tests::test_builder_force_cpu ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_accelerator_name ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_dct_invalid_dims ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_mse_identical ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_dct_idct_roundtrip ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_mse_max_error ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_rgb_to_yuv_roundtrip ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_pixel_diff_self ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_scale_bilinear_upsample ... ok
[INFO] [stdout] test async_compute::tests::test_active_count_decreases_on_poll ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_scale_bilinear_identity ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_edge_detect_flat_image ... ok
[INFO] [stdout] test async_compute::tests::test_completed_count_increments_on_poll ... ok
[INFO] [stdout] test async_compute::tests::test_empty_payload_allowed ... ok
[INFO] [stdout] test async_compute::tests::test_fail_task_marks_failed ... ok
[INFO] [stdout] test async_compute::tests::test_is_empty_after_all_polled ... ok
[INFO] [stdout] test async_compute::tests::test_multiple_tasks_independent ... ok
[INFO] [stdout] test async_compute::tests::test_poll_twice_returns_none_second_time ... ok
[INFO] [stdout] test async_compute::tests::test_poll_unknown_task_returns_none ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_sharpen_stable_flat ... ok
[INFO] [stdout] test async_compute::tests::test_resubmit_replaces_previous ... ok
[INFO] [stdout] test async_compute::tests::test_state_complete_after_submit ... ok
[INFO] [stdout] test async_compute::tests::test_submission_count_increments ... ok
[INFO] [stdout] test async_compute::tests::test_submit_and_poll_returns_data ... ok
[INFO] [stdout] test backend::cpu::tests::test_cpu_backend_always_available ... ok
[INFO] [stdout] test backend::cpu::tests::test_cpu_backend_creation ... ok
[INFO] [stdout] test backend::cpu::tests::test_rgb_to_yuv_cpu ... ok
[INFO] [stdout] test backend::cpu::tests::test_simd_detection ... ok
[INFO] [stdout] test backend::vulkan::tests::test_vulkan_backend_available ... ignored
[INFO] [stdout] test backend::vulkan::tests::test_vulkan_features ... ok
[INFO] [stdout] test barrier_manager::tests::test_barrier_desc_raw_hazard ... ok
[INFO] [stdout] test backend::cpu::tests::test_resize_bilinear_cpu ... ok
[INFO] [stdout] test barrier_manager::tests::test_barrier_desc_war_hazard ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_rgb_red_pixel ... ok
[INFO] [stdout] test async_compute::tests::test_cancel_removes_task ... ok
[INFO] [stdout] test accelerator::tests::test_builder_build_cpu_static ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_rgb_to_yuv_invalid_size ... ok
[INFO] [stdout] test barrier_manager::tests::test_batch_transition ... ok
[INFO] [stdout] test barrier_manager::tests::test_display_pipeline_stage ... ok
[INFO] [stdout] test barrier_manager::tests::test_flush_clears_pending ... ok
[INFO] [stdout] test barrier_manager::tests::test_new_barrier_manager ... ok
[INFO] [stdout] test barrier_manager::tests::test_read_to_read_same_stage_no_barrier ... ok
[INFO] [stdout] test barrier_manager::tests::test_reset ... ok
[INFO] [stdout] test barrier_manager::tests::test_register_resource ... ok
[INFO] [stdout] test barrier_manager::tests::test_same_state_no_barrier ... ok
[INFO] [stdout] test barrier_manager::tests::test_unregister_resource ... ok
[INFO] [stdout] test blend_kernel::tests::test_additive_blend_zero_src ... ok
[INFO] [stdout] test barrier_manager::tests::test_transition_emits_barrier ... ok
[INFO] [stdout] test blend_kernel::tests::test_additive_blend_clamps_to_255 ... ok
[INFO] [stdout] test blend_kernel::tests::test_alpha_composite_fully_opaque_src ... ok
[INFO] [stdout] test barrier_manager::tests::test_transition_unregistered_resource ... ok
[INFO] [stdout] test barrier_manager::tests::test_barrier_desc_waw_hazard ... ok
[INFO] [stdout] test barrier_manager::tests::test_display_access_type ... ok
[INFO] [stdout] test blend_kernel::tests::test_apply_tint_black_tint_yields_black ... ok
[INFO] [stdout] test blend_kernel::tests::test_apply_tint_white_tint_unchanged ... ok
[INFO] [stdout] test accelerator::tests::test_cpu_gaussian_blur_preserves_size ... ok
[INFO] [stdout] test blend_kernel::tests::test_composite_layers_single_opaque ... ok
[INFO] [stdout] test blend_kernel::tests::test_blend_mode_labels ... ok
[INFO] [stdout] test blend_kernel::tests::test_blend_invalid_dims ... ok
[INFO] [stdout] test blend_kernel::tests::test_blend_masked_mask_mismatch ... ok
[INFO] [stdout] test blend_kernel::tests::test_composite_layers_empty_returns_transparent ... ok
[INFO] [stdout] test blend_kernel::tests::test_difference_with_same_src_dst_yields_black ... ok
[INFO] [stdout] test blend_kernel::tests::test_masked_blend_all_opaque ... ok
[INFO] [stdout] test blend_kernel::tests::test_masked_blend_all_transparent_preserves_dst ... ok
[INFO] [stdout] test blend_kernel::tests::test_multiply_with_white_src_unchanged ... ok
[INFO] [stdout] test blend_kernel::tests::test_blend_stats_returned ... ok
[INFO] [stdout] test blend_kernel::tests::test_opacity_zero_preserves_dst ... ok
[INFO] [stdout] test blend_kernel::tests::test_blend_buffer_mismatch ... ok
[INFO] [stdout] test blend_kernel::tests::test_screen_with_white_src_yields_white ... ok
[INFO] [stdout] test blend_kernel::tests::test_unpremultiply_alpha_zero_alpha ... ok
[INFO] [stdout] test blend_kernel::tests::test_premultiply_unpremultiply_roundtrip ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_contained ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_basic ... ok
[INFO] [stdout] test blend_kernel::tests::test_premultiply_alpha_full_opaque ... ok
[INFO] [stdout] test blend_kernel::tests::test_screen_with_black_src_unchanged ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_no_overlap ... ok
[INFO] [stdout] test blend_kernel::tests::test_premultiply_alpha_half_opacity ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_overlaps ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_batch_push_and_drain ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_batch_no_hazards ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_batch_split_independent ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_batch_with_hazards ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_command_no_alias ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_command_aliases ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_stats ... ok
[INFO] [stdout] test buffer_copy::tests::test_image_region_basic ... ok
[INFO] [stdout] test buffer_copy::tests::test_image_region_contains_point ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_direction_display ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_stats_multiple_directions ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_from_start ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_intersection ... ok
[INFO] [stdout] test buffer_pool::tests::test_buffer_pool_alloc_free_100_cycles ... ok
[INFO] [stdout] test buffer_pool::tests::test_buffer_pool_alloc_free_alloc_reuse ... ok
[INFO] [stdout] test buffer_pool::tests::test_gpu_buffer_as_mut_slice ... ok
[INFO] [stdout] test buffer_pool::tests::test_gpu_buffer_fill ... ok
[INFO] [stdout] test buffer_pool::tests::test_gpu_buffer_new ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_acquire_and_release ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_budget_exceeded ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_defragment_recently_released_kept ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_defragment_keeps_in_use ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_get_missing ... ok
[INFO] [stdout] test buffer_copy::tests::test_copy_command_dst_region ... ok
[INFO] [stdout] test blend_kernel::tests::test_multiply_with_black_src_yields_zero ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_get_mut_write ... ok
[INFO] [stdout] test buffer_copy::tests::test_buffer_region_no_intersection ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_release_unknown_id ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_new_empty ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_reuse ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_smallest_compatible_preferred ... ok
[INFO] [stdout] test buffer_pool::tests::test_pool_stats_in_use_count ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_alignment_respected ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_capacity_and_alignment_accessors ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_debug_fmt ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_alloc_free_cycle_many ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_basic ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_defrag_reclaims_space ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_fills_buffer ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_defrag_zeroes_utilization_when_all_freed ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_ids_are_unique ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_utilization_rises_and_falls ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_zero_size_returns_none ... ok
[INFO] [stdout] test buffer_pool::tests::test_sub_alloc_free_reduces_count ... ok
[INFO] [stdout] test cache::tests::test_shader_cache ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_color_standard_kg_sums_to_one ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_color_standard_kr_kb_bt601 ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_compress_and_expand_roundtrip ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_color_standard_kr_kb_bt2020 ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_compress_full_to_limited_white ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_conversion_matrix_full_range_bias ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_kernel_instance_convert_rgb_to_yuv ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_kernel_instance_standard_and_range ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_limited_to_full_y_black ... ok
[INFO] [stdout] test cache::tests::test_pipeline_cache_creation ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_limited_to_full_y_white ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_rgb_to_yuv_buffer_mismatch ... ok
[INFO] [stdout] test cache::tests::test_pipeline_cache_put_get ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_rgb_to_yuv_zero_dimensions ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_color_standard_kr_kb_bt709 ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_conversion_matrix_limited_range_bias ... ok
[INFO] [stdout] test cache::tests::test_cache_stats ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_black_bt709_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_rgba_to_planar_yuv444_size ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_bt601_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_gray_bt709_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_bt2020_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_green_bt709_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_blue_bt709_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_bt709_limited ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_white_bt709_full ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_roundtrip_red_bt709_full ... ok
[INFO] [stdout] test command_buffer::tests::test_buffer_slot_flip ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_multi_pixel_batch ... ok
[INFO] [stdout] test command_buffer::tests::test_begin_after_reset_allows_recording ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_planar_yuv444_roundtrip ... ok
[INFO] [stdout] test command_buffer::tests::test_buffer_slot_index ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_begin_record ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_begin_record_fails_when_not_idle ... ok
[INFO] [stdout] test color_convert_kernel::tests::test_stats_pixels_processed ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_command_count ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_full_cycle_slot_a ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_initial_state ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_interleaved_slots ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_mark_retired_fails_when_not_inflight ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_reset_slot_fails_when_not_retired ... ok
[INFO] [stdout] test command_buffer::tests::test_double_buffer_submit_fails_when_not_ready ... ok
[INFO] [stdout] test command_buffer::tests::test_entry_estimated_cost_draw_greater_than_copy ... ok
[INFO] [stdout] test command_buffer::tests::test_finish_fails_when_already_executable ... ok
[INFO] [stdout] test command_buffer::tests::test_is_compute_true ... ok
[INFO] [stdout] test command_buffer::tests::test_entry_estimated_cost_payload_increases_cost ... ok
[INFO] [stdout] test command_buffer::tests::test_entry_label_stored ... ok
[INFO] [stdout] test command_buffer::tests::test_is_copy_false_for_barrier ... ok
[INFO] [stdout] test command_buffer::tests::test_finish_transitions_to_executable ... ok
[INFO] [stdout] test command_buffer::tests::test_is_copy_true ... ok
[INFO] [stdout] test command_buffer::tests::test_is_draw_false_for_compute ... ok
[INFO] [stdout] test command_buffer::tests::test_is_draw_true ... ok
[INFO] [stdout] test command_buffer::tests::test_label_stored ... ok
[INFO] [stdout] test command_buffer::tests::test_submit_fails_when_not_executable ... ok
[INFO] [stdout] test command_buffer::tests::test_submit_transitions_to_pending ... ok
[INFO] [stdout] test command_buffer::tests::test_submit_returns_commands ... ok
[INFO] [stdout] test command_buffer::tests::test_record_increments_count ... ok
[INFO] [stdout] test compiler::tests::test_compilation_error ... ok
[INFO] [stdout] test command_buffer::tests::test_new_buffer_is_recording ... ok
[INFO] [stdout] test command_buffer::tests::test_reset_clears_commands_and_sets_reset_state ... ok
[INFO] [stdout] test command_buffer::tests::test_total_estimated_cost_sums_entries ... ok
[INFO] [stdout] test compiler::tests::test_compilation_options ... ok
[INFO] [stdout] test compiler::tests::test_preprocessor ... ok
[INFO] [stdout] test compute::tests::test_dispatch_1d ... ok
[INFO] [stdout] test compute::tests::test_dispatch_2d ... ok
[INFO] [stdout] test compute::tests::test_dispatch_3d ... ok
[INFO] [stdout] test compute_dispatch::tests::test_barrier_tracker_push_and_count ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_covered_elements_gte_last_count ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_linear_rounds_up ... ok
[INFO] [stdout] test compute_dispatch::tests::test_barrier_tracker_reset ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_last_element_count_stored ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_grid_none_before_prepare ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_linear_exact ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_linear_zero_elements ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_fixed_row_count ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_square_covers_all_elements ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_1d_exact ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_2d ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_3d ... ok
[INFO] [stdout] test compute_dispatch::tests::test_data_driven_square_grid_is_square ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_tracker_total_threads ... ok
[INFO] [stdout] test compute_dispatch::tests::test_recommend_2d_workgroup_square ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_1d_rounds_up ... ok
[INFO] [stdout] test compute_dispatch::tests::test_workgroup_is_valid ... ok
[INFO] [stdout] test compute_dispatch::tests::test_recommend_2d_workgroup_within_limit ... ok
[INFO] [stdout] test compute_dispatch::tests::test_total_threads ... ok
[INFO] [stdout] test compute_dispatch::tests::test_total_workgroups ... ok
[INFO] [stdout] test compute_dispatch::tests::test_workgroup_thread_count ... ok
[INFO] [stdout] test compute_graph::tests::test_add_edge_increments_count ... ok
[INFO] [stdout] test compute_graph::tests::test_add_cyclic_edge_error ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_tracker_reset ... ok
[INFO] [stdout] test compute_dispatch::tests::test_dispatch_tracker_records_sequential_indices ... ok
[INFO] [stdout] test compute_graph::tests::test_add_duplicate_node_error ... ok
[INFO] [stdout] test compute_graph::tests::test_add_edge_unknown_node_error ... ok
[INFO] [stdout] test compute_graph::tests::test_bind_resource_to_barrier_fails ... ok
[INFO] [stdout] test compute_graph::tests::test_bind_resource_to_kernel ... ok
[INFO] [stdout] test compute_graph::tests::test_execution_order_single_node ... ok
[INFO] [stdout] test compute_graph::tests::test_add_node_and_count ... ok
[INFO] [stdout] test compute_graph::tests::test_bind_resource_unknown_node_fails ... ok
[INFO] [stdout] test compute_graph::tests::test_pipeline_stage_all_contains_any ... ok
[INFO] [stdout] test compute_graph::tests::test_execution_order_with_barrier_and_copy ... ok
[INFO] [stdout] test compute_graph::tests::test_execution_order_linear_chain ... ok
[INFO] [stdout] test compute_graph::tests::test_execution_order_independent_nodes_sorted_by_id ... ok
[INFO] [stdout] test compute_graph::tests::test_pipeline_stage_contains ... ok
[INFO] [stdout] test compute_kernels::tests::test_alpha_composite_opaque_fg ... ok
[INFO] [stdout] test compute_graph::tests::test_predecessors_unknown_node_error ... ok
[INFO] [stdout] test compute_graph::tests::test_validate_fails_when_kernel_has_no_bindings ... ok
[INFO] [stdout] test compute_graph::tests::test_predecessors_and_successors ... ok
[INFO] [stdout] test compute_graph::tests::test_validate_passes_when_all_bound ... ok
[INFO] [stdout] test compute_kernels::tests::test_alpha_composite_transparent_fg ... ok
[INFO] [stdout] test compute_kernels::tests::test_gaussian_blur_invalid_size ... ok
[INFO] [stdout] test compute_kernels::tests::test_gaussian_blur_flat_image ... ok
[INFO] [stdout] test compute_kernels::tests::test_alpha_composite_size_mismatch ... ok
[INFO] [stdout] test compute_kernels::tests::test_gaussian_blur_zero_sigma ... ok
[INFO] [stdout] test compute_kernels::tests::test_rgba_to_yuv420_size ... ok
[INFO] [stdout] test compute_kernels::tests::test_rgba_to_yuv420_black_pixel ... ok
[INFO] [stdout] test compute_kernels::tests::test_scale_image_identity ... ok
[INFO] [stdout] test compute_kernels::tests::test_rgba_to_yuv420_white_pixel ... ok
[INFO] [stdout] test compute_kernels::tests::test_scale_image_upscale_size ... ok
[INFO] [stdout] test compute_kernels::tests::test_histogram_equalization_constant ... ok
[INFO] [stdout] test compute_kernels::tests::test_scale_image_zero_dimension ... ok
[INFO] [stdout] test compute_kernels::tests::test_sobel_flat_image_is_zero ... ok
[INFO] [stdout] test compute_kernels::tests::test_rgba_to_yuv420_invalid_size ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_debug_fmt ... ok
[INFO] [stdout] test compute_kernels::tests::test_sobel_vertical_edge ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_flush_returns_all_pending ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_flush_empty_returns_empty ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_flush_sorts_by_pipeline_id ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_max_batch_size_accessor ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_submit_no_auto_flush_below_limit ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_similar_pipeline_ids_adjacent ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_submit_auto_flush_at_limit ... ok
[INFO] [stdout] test compute_pass::tests::test_batched_total_flushed_accumulates ... ok
[INFO] [stdout] test compute_pass::tests::test_buffer_binding_input ... ok
[INFO] [stdout] test compute_pass::tests::test_buffer_binding_output ... ok
[INFO] [stdout] test compute_pass::tests::test_compute_pass_new_defaults ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_queue_add_and_count ... ok
[INFO] [stdout] test compute_pass::tests::test_compute_pass_add_input_binding ... ok
[INFO] [stdout] test compute_pass::tests::test_compute_pass_add_output_binding ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_queue_empty ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_queue_passes_of_type ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_queue_passes_of_type_empty_result ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_type_audio_is_real_time ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_type_image_not_real_time ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_queue_total_bindings ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_type_video_is_real_time ... ok
[INFO] [stdout] test compute_kernels::tests::test_threshold_otsu_bimodal ... ok
[INFO] [stdout] test compute_kernels::tests::test_yuv420_roundtrip ... ok
[INFO] [stdout] test compute_pass::tests::test_pass_type_post_process_not_real_time ... ok
[INFO] [stdout] test compute_shader::tests::test_dispatch_with_barrier ... ok
[INFO] [stdout] test compute_kernels::tests::test_yuv420_to_rgba_invalid_size ... ok
[INFO] [stdout] test compute_pass::tests::test_total_work_items_custom ... ok
[INFO] [stdout] test compute_shader::tests::test_execute_single_work_group ... ok
[INFO] [stdout] test compute_pass::tests::test_total_work_items_1x1x1 ... ok
[INFO] [stdout] test compute_shader::tests::test_execute_empty_data_no_panic ... ok
[INFO] [stdout] test compute_shader::tests::test_execute_f32_scale ... ok
[INFO] [stdout] test compute_shader::tests::test_execute_multiply_by_two ... ok
[INFO] [stdout] test compute_shader::tests::test_execute_fill_with_global_id ... ok
[INFO] [stdout] test compute_shader::tests::test_kernel_captures_closure_state_with_atomic ... ok
[INFO] [stdout] test compute_shader::tests::test_shader_kernel_group_size_zero_normalised ... ok
[INFO] [stdout] test compute_shader::tests::test_execute_work_groups_larger_than_needed ... ok
[INFO] [stdout] test compute_shader::tests::test_multiple_kernels_on_same_data ... ok
[INFO] [stdout] test compute_shader::tests::test_shader_kernel_name_and_group_size ... ok
[INFO] [stdout] test compute_shader::tests::test_simulator_zero_group_size_normalised ... ok
[INFO] [stdout] test compute_shader::tests::test_simulator_create_kernel_with_group_size ... ok
[INFO] [stdout] test compute_shader::tests::test_simulator_default_group_size ... ok
[INFO] [stdout] test compute_shader::tests::test_thread_group_context_global_id ... ok
[INFO] [stdout] test compute_shader::tests::test_simulator_create_kernel_and_dispatch ... ok
[INFO] [stdout] test descriptor_set::tests::test_binding_type_is_buffer_texture_false ... ok
[INFO] [stdout] test descriptor_set::tests::test_binding_type_is_buffer_storage ... ok
[INFO] [stdout] test descriptor_set::tests::test_binding_type_is_buffer_uniform ... ok
[INFO] [stdout] test compute_shader::tests::test_thread_group_context_zero_group ... ok
[INFO] [stdout] test descriptor_set::tests::test_binding_type_is_texture ... ok
[INFO] [stdout] test descriptor_set::tests::test_binding_type_is_writable ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_binding_array_count ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_binding_is_valid ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_binding_with_label ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_layout_bindings ... ok
[INFO] [stdout] test compute_shader::tests::test_large_data_set ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_set_buffer_bindings ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_set_replace_binding ... ok
[INFO] [stdout] test double_buffer::tests::test_begin_encode_transitions_to_encoding ... ok
[INFO] [stdout] test double_buffer::tests::test_double_buffer_alternates_slots ... ok
[INFO] [stdout] test double_buffer::tests::test_estimated_fps_zero_when_no_frames ... ok
[INFO] [stdout] test double_buffer::tests::test_default_impl ... ok
[INFO] [stdout] test double_buffer::tests::test_frame_index_increments ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_set_add_binding_count ... ok
[INFO] [stdout] test double_buffer::tests::test_mark_complete_transitions ... ok
[INFO] [stdout] test descriptor_set::tests::test_descriptor_layout_empty ... ok
[INFO] [stdout] test double_buffer::tests::test_gpu_work_failure_records_stats ... ok
[INFO] [stdout] test double_buffer::tests::test_mark_complete_ignored_for_non_inflight ... ok
[INFO] [stdout] test double_buffer::tests::test_max_min_latency_with_empty_stats ... ok
[INFO] [stdout] test double_buffer::tests::test_new_submitter_is_idle ... ok
[INFO] [stdout] test double_buffer::tests::test_no_free_slot_when_both_in_flight ... ok
[INFO] [stdout] test double_buffer::tests::test_payload_size_tracking ... ok
[INFO] [stdout] test double_buffer::tests::test_reclaim_resets_slot ... ok
[INFO] [stdout] test double_buffer::tests::test_slot_state_display ... ok
[INFO] [stdout] test double_buffer::tests::test_stats_avg_latency_not_zero_after_frames ... ok
[INFO] [stdout] test double_buffer::tests::test_reset_clears_everything ... ok
[INFO] [stdout] test double_buffer::tests::test_submit_sync_full_cycle ... ok
[INFO] [stdout] test double_buffer::tests::test_slot_out_of_range ... ok
[INFO] [stdout] test double_buffer::tests::test_submit_transitions_to_in_flight ... ok
[INFO] [stdout] test double_buffer::tests::test_submit_wrong_state_returns_error ... ok
[INFO] [stdout] test fence_pool::tests::test_create_default_pool ... ok
[INFO] [stdout] test double_buffer::tests::test_stats_utilisation_bounded ... ok
[INFO] [stdout] test fence_pool::tests::test_acquire_fence ... ok
[INFO] [stdout] test fence_pool::tests::test_flush_all ... ok
[INFO] [stdout] test fence_pool::tests::test_has_available ... ok
[INFO] [stdout] test fence_pool::tests::test_fence_display ... ok
[INFO] [stdout] test fence_pool::tests::test_auto_grow ... ok
[INFO] [stdout] test fence_pool::tests::test_create_with_config ... ok
[INFO] [stdout] test fence_pool::tests::test_no_auto_grow ... ok
[INFO] [stdout] test fence_pool::tests::test_pending_fences ... ok
[INFO] [stdout] test fence_pool::tests::test_pooled_fence_latency ... ok
[INFO] [stdout] test fence_pool::tests::test_release_fence ... ok
[INFO] [stdout] test fence_pool::tests::test_reset_pool ... ok
[INFO] [stdout] test fence_pool::tests::test_max_size_limit ... ok
[INFO] [stdout] test fence_pool::tests::test_stats_utilization ... ok
[INFO] [stdout] test fence_pool::tests::test_stats_utilization_empty ... ok
[INFO] [stdout] test fence_pool::tests::test_stats ... ok
[INFO] [stdout] test fence_pool::tests::test_signal_fence ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_f32_wrong_size_rejected ... ok
[INFO] [stdout] test fence_pool::tests::test_wait_timeout ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_correct_size ... ok
[INFO] [stdout] test film_grain::tests::test_different_frame_indices_differ ... ok
[INFO] [stdout] test film_grain::tests::test_grain_alpha_unchanged ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_f32_basic ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_wrong_size_rejected ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_modifies_frame ... ok
[INFO] [stdout] test film_grain::tests::test_grain_statistics_from_empty_plane ... ok
[INFO] [stdout] test film_grain::tests::test_apply_yuv420 ... ok
[INFO] [stdout] test film_grain::tests::test_grain_statistics_bounds ... ok
[INFO] [stdout] test film_grain::tests::test_grain_statistics_std_dev_positive ... ok
[INFO] [stdout] test film_grain::tests::test_heavy_grain_larger_std_dev_than_light ... ok
[INFO] [stdout] test film_grain::tests::test_yuv420_wrong_y_size_rejected ... ok
[INFO] [stdout] test gpu_buffer::tests::test_buffer_usage_is_staging_upload ... ok
[INFO] [stdout] test film_grain::tests::test_light_heavy_presets_differ ... ok
[INFO] [stdout] test film_grain::tests::test_zero_gain_leaves_frame_unchanged ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_f32_alpha_unchanged ... ok
[INFO] [stdout] test gpu_buffer::tests::test_buffer_usage_label_non_empty ... ok
[INFO] [stdout] test gpu_buffer::tests::test_buffer_usage_is_writable_storage_rw ... ok
[INFO] [stdout] test gpu_buffer::tests::test_buffer_usage_not_staging_uniform ... ok
[INFO] [stdout] test gpu_buffer::tests::test_gpu_buffer_map_non_staging_err ... ok
[INFO] [stdout] test gpu_buffer::tests::test_buffer_usage_not_writable_storage_read ... ok
[INFO] [stdout] test gpu_buffer::tests::test_gpu_buffer_aligned_size ... ok
[INFO] [stdout] test gpu_buffer::tests::test_gpu_buffer_map_upload_ok ... ok
[INFO] [stdout] test gpu_buffer::tests::test_gpu_buffer_not_mapped_by_default ... ok
[INFO] [stdout] test gpu_buffer::tests::test_gpu_buffer_size_bytes ... ok
[INFO] [stdout] test gpu_buffer::tests::test_gpu_buffer_unmap_clears_flag ... ok
[INFO] [stdout] test gpu_buffer::tests::test_pool_release_and_reuse ... ok
[INFO] [stdout] test gpu_buffer::tests::test_pool_allocate_creates_buffer ... ok
[INFO] [stdout] test gpu_buffer::tests::test_pool_free_count_after_release ... ok
[INFO] [stdout] test gpu_buffer::tests::test_pool_total_allocated ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_buffers_within_tolerance_convenience ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_compare_f32_identical ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_compare_f32_small_diff ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_compute_buffer_psnr_convenience ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_compute_buffer_rms_convenience ... ok
[INFO] [stdout] test film_grain::tests::test_grain_statistics_mean_near_zero ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_diff_histogram_correct ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_diff_percentage ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_different_length_buffers_uses_shorter ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_empty_buffers ... ok
[INFO] [stdout] test film_grain::tests::test_same_frame_index_is_deterministic ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_identical_buffers_exact_match ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_max_diff_is_worst_case ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_psnr_high_for_small_differences ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_single_element_difference ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_suite_f32_case ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_tolerance_max_abs_diff_pass ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_tolerance_rms_error_pass ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_tolerance_mean_abs_diff_pass ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_tolerance_metric_display ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_tolerance_psnr_pass ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_verification_suite_all_pass ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_verification_suite_summary_format ... ok
[INFO] [stdout] test gpu_cpu_verify::tests::test_verification_suite_with_failure ... ok
[INFO] [stdout] test gpu_fence::tests::test_fence_status_is_complete_pending_false ... ok
[INFO] [stdout] test gpu_fence::tests::test_fence_status_is_complete_signalled ... ok
[INFO] [stdout] test gpu_fence::tests::test_fence_status_is_reusable_reset ... ok
[INFO] [stdout] test gpu_fence::tests::test_fence_status_is_reusable_signalled_false ... ok
[INFO] [stdout] test gpu_fence::tests::test_gpu_fence_new_pending ... ok
[INFO] [stdout] test gpu_fence::tests::test_gpu_fence_reset_clears_signal ... ok
[INFO] [stdout] test gpu_fence::tests::test_gpu_fence_signal_sets_status ... ok
[INFO] [stdout] test gpu_fence::tests::test_gpu_fence_wait_timeout_sets_timed_out ... ok
[INFO] [stdout] test gpu_fence::tests::test_gpu_fence_wait_when_signalled_returns_true ... ok
[INFO] [stdout] test gpu_fence::tests::test_gpu_fence_with_label ... ok
[INFO] [stdout] test gpu_fence::tests::test_pool_active_count_increments ... ok
[INFO] [stdout] test gpu_fence::tests::test_pool_completed_count_after_signal ... ok
[INFO] [stdout] test gpu_fence::tests::test_pool_create_fence_pending ... ok
[INFO] [stdout] test gpu_fence::tests::test_pool_return_fence_moves_to_free_list ... ok
[INFO] [stdout] test gpu_fence::tests::test_pool_total_created_monotonic ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_begin_end_records_stats ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_default_equals_new ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_end_unknown_label_no_panic ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_is_empty_initially ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_multiple_samples_accumulate ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_reset_clears_all ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_scope_count ... ok
[INFO] [stdout] test gpu_profiler::tests::profiler_scope_raii ... ok
[INFO] [stdout] test gpu_profiler::tests::scope_stats_empty_mean_none ... ok
[INFO] [stdout] test gpu_profiler::tests::timestamp_elapsed_us_none_when_unfinished ... ok
[INFO] [stdout] test gpu_profiler::tests::timestamp_elapsed_us_some ... ok
[INFO] [stdout] test gpu_profiler::tests::scope_stats_min_max ... ok
[INFO] [stdout] test gpu_profiler::tests::scope_stats_records_single ... ok
[INFO] [stdout] test gpu_profiler::tests::timestamp_begin_not_finished ... ok
[INFO] [stdout] test gpu_stats::tests::test_gpu_stat_unit_memory ... ok
[INFO] [stdout] test gpu_stats::tests::test_gpu_stat_is_percentage ... ok
[INFO] [stdout] test gpu_stats::tests::test_gpu_stat_is_thermal ... ok
[INFO] [stdout] test gpu_stats::tests::test_gpu_stat_unit_power ... ok
[INFO] [stdout] test gpu_stats::tests::test_gpu_stat_unit_temperature ... ok
[INFO] [stdout] test gpu_stats::tests::test_gpu_stat_unit_utilization ... ok
[INFO] [stdout] test gpu_stats::tests::test_sample_is_critical_at_threshold ... ok
[INFO] [stdout] test gpu_stats::tests::test_stats_avg_power_draw ... ok
[INFO] [stdout] test gpu_stats::tests::test_sample_headroom ... ok
[INFO] [stdout] test gpu_stats::tests::test_sample_is_critical_false ... ok
[INFO] [stdout] test gpu_stats::tests::test_sample_is_critical_true ... ok
[INFO] [stdout] test gpu_stats::tests::test_stats_memory_pct ... ok
[INFO] [stdout] test gpu_stats::tests::test_stats_record_and_utilization_pct ... ok
[INFO] [stdout] test gpu_stats::tests::test_stats_utilization_pct_empty ... ok
[INFO] [stdout] test gpu_stats::tests::test_stats_peak_temperature ... ok
[INFO] [stdout] test gpu_stats::tests::test_stats_sample_count ... ok
[INFO] [stdout] test gpu_timer::tests::test_frame_timer_basic ... ok
[INFO] [stdout] test gpu_profiler::tests::timestamp_finish_elapsed ... ok
[INFO] [stdout] test gpu_timer::tests::test_frame_timer_clear ... ok
[INFO] [stdout] test gpu_timer::tests::test_frame_timer_history_limit ... ok
[INFO] [stdout] test gpu_timer::tests::test_frame_timer_no_begin ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_disabled ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_frame_cycle ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_labels ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_create ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_over_budget ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_region ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_reset ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_set_enabled ... ok
[INFO] [stdout] test gpu_timer::tests::test_timer_region_start_stop ... ok
[INFO] [stdout] test gpu_timer::tests::test_timing_stats_empty ... ok
[INFO] [stdout] test gpu_timer::tests::test_timing_stats_single ... ok
[INFO] [stdout] test gpu_timer::tests::test_gpu_timer_stats_for_label ... ok
[INFO] [stdout] test gpu_timer::tests::test_timing_stats_mean_fps ... ok
[INFO] [stdout] test gpu_timer::tests::test_timer_region_label ... ok
[INFO] [stdout] test gpu_timer::tests::test_timing_stats_basic ... ok
[INFO] [stdout] test film_grain::tests::test_apply_rgba_large_frame ... ok
[INFO] [stdout] test histogram::tests::test_compute_mean_rgb ... ok
[INFO] [stdout] test histogram::tests::test_dominant_channel ... ok
[INFO] [stdout] test histogram::tests::test_compute_mean_single_channel ... ok
[INFO] [stdout] test histogram::tests::test_entropy_uniform_image_is_zero ... ok
[INFO] [stdout] test histogram::tests::test_from_rgb_2x2 ... ok
[INFO] [stdout] test histogram::tests::test_normal_exposure_neither ... ok
[INFO] [stdout] test histogram::tests::test_from_gray_single_channel ... ok
[INFO] [stdout] test histogram::tests::test_underexposed_detection ... ok
[INFO] [stdout] test histogram::tests::test_overexposed_detection ... ok
[INFO] [stdout] test histogram::tests::test_entropy_two_equally_likely_values ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_config_defaults ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_empty_frame ... ok
[INFO] [stdout] test histogram::tests::test_percentile_median ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_basic_8x8_tile ... ok
[INFO] [stdout] test histogram::tests::test_underexposed_rgb_one_channel_low ... ok
[INFO] [stdout] test histogram::tests::test_std_dev_constant_image ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalization_stats_compute ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_preserves_size ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_instance_method ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_tile_size_zero_returns_unchanged ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_mild_clip ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_tile_size_larger_than_image_falls_back ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalization_stats_empty ... ok
[INFO] [stdout] test buffer_pool::tests::test_buffer_pool_alloc_1000_then_free_all ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_all_same_value_unchanged ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_all_zeros ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_two_value_image ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_preserves_size ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_ramp_spreads_contrast ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_single_pixel ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_instance_method ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_default_dispatch_args ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_compute_dispatch_linear ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_compute_dispatch_tiled ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_compute_dispatch_volumetric ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_from_bytes_too_short ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_dispatch_args_new ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_dispatch_args_one_d ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_display ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_indirect_buffer_new ... ok
[INFO] [stdout] test histogram_equalization::tests::test_clahe_strong_clip ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_already_equalized ... ok
[INFO] [stdout] test histogram_equalization::tests::test_equalize_luma_empty ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_total_workgroups ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_to_from_bytes_roundtrip ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_indirect_buffer_update ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_is_valid ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_validate_dispatch_limits_exceeded ... ok
[INFO] [stdout] test indirect_dispatch::tests::test_validate_dispatch_limits_ok ... ok
[INFO] [stdout] test kernel::tests::test_cache_find_missing ... ok
[INFO] [stdout] test kernel::tests::test_cache_add_and_count ... ok
[INFO] [stdout] test kernel::tests::test_cache_empty_memory_estimate ... ok
[INFO] [stdout] test kernel::tests::test_color_convert_workgroup ... ok
[INFO] [stdout] test kernel::tests::test_estimated_flops_denoise_greater_than_histogram ... ok
[INFO] [stdout] test kernel::tests::test_estimated_flops_positive ... ok
[INFO] [stdout] test kernel::tests::test_motion_estimate_workgroup ... ok
[INFO] [stdout] test kernel::tests::test_no_shared_memory_sharpen ... ok
[INFO] [stdout] test kernel::tests::test_requires_shared_memory_histogram ... ok
[INFO] [stdout] test kernel::tests::test_no_shared_memory_video_scale ... ok
[INFO] [stdout] test kernel::tests::test_histogram_workgroup ... ok
[INFO] [stdout] test kernel::tests::test_requires_shared_memory_motion ... ok
[INFO] [stdout] test kernel::tests::test_total_elements_zero_width ... ok
[INFO] [stdout] test kernel::tests::test_kernel_spec_new ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_add_dependency_cycle_detected ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_add_dependency_unknown_dependency ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_add_dependency_unknown_dependent ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_add_duplicate_kernel_error ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_add_kernel_and_count ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_dependencies_of ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_kernel_spec_total_threads ... ok
[INFO] [stdout] test kernel::tests::test_total_elements ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_dependencies_of_no_deps ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_kernel_spec_zero_work_groups ... ok
[INFO] [stdout] test kernel::tests::test_video_scale_workgroup ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_launch_order_linear_chain ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_launch_order_diamond ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_launch_order_single_kernel ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_launch_order_independent_kernels_sorted_by_id ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_occupancy_capped_at_sm_limit ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_scheduler_occupancy ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_occupancy_full ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_scheduler_occupancy_unknown_kernel ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_occupancy_partial ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_simulate_warp_stats_basic ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_simulate_warp_stats_overflow_clamps ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_warp_stats_utilisation_all_active ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_warp_stats_zero_warps ... ok
[INFO] [stdout] test kernel_scheduler::tests::test_warp_stats_utilisation_half ... ok
[INFO] [stdout] test kernels::color::tests::test_apply_1d_identity ... ok
[INFO] [stdout] test kernels::color::tests::test_color_conversion_kernel ... ok
[INFO] [stdout] test kernels::color::tests::test_apply_1d_invert ... ok
[INFO] [stdout] test kernels::color::tests::test_color_space_properties ... ok
[INFO] [stdout] test kernels::color::tests::test_apply_3d_black_white ... ok
[INFO] [stdout] test kernels::color::tests::test_apply_3d_identity ... ok
[INFO] [stdout] test kernels::color::tests::test_flops_estimation ... ok
[INFO] [stdout] test kernels::filter::tests::test_box_blur_kernel ... ok
[INFO] [stdout] test kernels::filter::tests::test_separable_filter ... ok
[INFO] [stdout] test kernels::reduce::tests::test_f32_count_nonzero_direct ... ok
[INFO] [stdout] test kernels::filter::tests::test_convolution_kernel_creation ... ok
[INFO] [stdout] test kernels::filter::tests::test_filter_kernel_creation ... ok
[INFO] [stdout] test kernels::reduce::tests::test_f32_minmax_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_flops_estimation ... ok
[INFO] [stdout] test kernels::reduce::tests::test_histogram_kernel ... ok
[INFO] [stdout] test kernels::reduce::tests::test_histogram_kernel_execute_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_reduce_kernel_passes ... ok
[INFO] [stdout] test kernels::reduce::tests::test_reduce_operation_properties ... ok
[INFO] [stdout] test kernels::reduce::tests::test_scan_exclusive_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_scan_kernel ... ok
[INFO] [stdout] test kernels::reduce::tests::test_image_stats ... ok
[INFO] [stdout] test kernels::reduce::tests::test_scan_inclusive_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_stats_channels_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_u8_histogram_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_stats_direct ... ok
[INFO] [stdout] test kernels::reduce::tests::test_u8_sum_direct ... ok
[INFO] [stdout] test kernels::resize::tests::test_flops_estimation ... ok
[INFO] [stdout] test kernels::resize::tests::test_resize_filter_properties ... ok
[INFO] [stdout] test kernels::transform::tests::test_affine_matrix_combination ... ok
[INFO] [stdout] test kernels::transform::tests::test_affine_matrix_identity ... ok
[INFO] [stdout] test kernels::resize::tests::test_output_size_calculation ... ok
[INFO] [stdout] test kernels::transform::tests::test_affine_matrix_translation ... ok
[INFO] [stdout] test memory::tests::test_memory_allocator_tracking ... ignored
[INFO] [stdout] test kernels::transform::tests::test_transform_kernel_creation ... ok
[INFO] [stdout] test memory::tests::test_memory_stats ... ok
[INFO] [stdout] test kernels::transform::tests::test_affine_matrix_scaling ... ok
[INFO] [stdout] test kernels::transform::tests::test_flops_estimation ... ok
[INFO] [stdout] test memory_pool::tests::test_alignment_align_up ... ok
[INFO] [stdout] test memory::tests::test_memory_allocator_tracking_no_gpu ... ok
[INFO] [stdout] test memory_pool::tests::test_alignment_as_usize ... ok
[INFO] [stdout] test memory_pool::tests::test_alloc_and_free_stats ... ok
[INFO] [stdout] test memory_pool::tests::test_alloc_id_increments ... ok
[INFO] [stdout] test memory_pool::tests::test_block_coalescing_after_free ... ok
[INFO] [stdout] test memory_pool::tests::test_compact_identifies_sparse_blocks ... ok
[INFO] [stdout] test memory_pool::tests::test_compact_returns_plan ... ok
[INFO] [stdout] test memory_pool::tests::test_defragment_coalesces_ranges ... ok
[INFO] [stdout] test memory_pool::tests::test_defragment_empty_pool ... ok
[INFO] [stdout] test memory_pool::tests::test_defragment_removes_empty_blocks ... ok
[INFO] [stdout] test memory_pool::tests::test_defragment_updates_stats ... ok
[INFO] [stdout] test memory_pool::tests::test_fragmentation_ratio_no_fragmentation ... ok
[INFO] [stdout] test memory_pool::tests::test_fragmentation_ratio_with_holes ... ok
[INFO] [stdout] test memory_pool::tests::test_free_bytes_decreases_after_alloc ... ok
[INFO] [stdout] test memory_pool::tests::test_multiple_allocs_same_block ... ok
[INFO] [stdout] test memory_pool::tests::test_new_block_created_when_full ... ok
[INFO] [stdout] test memory_pool::tests::test_pool_stats_utilisation ... ok
[INFO] [stdout] test memory_pool::tests::test_reset_clears_all ... ok
[INFO] [stdout] test memory_pool::tests::test_shrink_removes_empty_blocks ... ok
[INFO] [stdout] test memory_pool::tests::test_simple_alloc ... ok
[INFO] [stdout] test memory_pool::tests::test_stats_free_bytes ... ok
[INFO] [stdout] test memory_pool::tests::test_zero_size_alloc_returns_none ... ok
[INFO] [stdout] test mipmap_gen::tests::test_compute_mip_count_nonsquare ... ok
[INFO] [stdout] test mipmap_gen::tests::test_compute_mip_count_one ... ok
[INFO] [stdout] test mipmap_gen::tests::test_compute_mip_count_square ... ok
[INFO] [stdout] test mipmap_gen::tests::test_compute_mip_count_zero ... ok
[INFO] [stdout] test mipmap_gen::tests::test_downsample_box_u8_gradient ... ok
[INFO] [stdout] test mipmap_gen::tests::test_downsample_box_u8_simple ... ok
[INFO] [stdout] test mipmap_gen::tests::test_generate_mip_chain_u8 ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_chain_compute ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_chain_is_single_level ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_chain_max_levels ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_chain_offsets ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_chain_total_size ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_dimension ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_level_display ... ok
[INFO] [stdout] test mipmap_gen::tests::test_mip_level_pixel_count ... ok
[INFO] [stdout] test motion_detect::tests::test_below_threshold_not_detected ... ok
[INFO] [stdout] test motion_detect::tests::test_different_frames_returns_motion ... ok
[INFO] [stdout] test motion_detect::tests::test_first_frame_returns_no_motion ... ok
[INFO] [stdout] test motion_detect::tests::test_identical_frames_returns_no_motion ... ok
[INFO] [stdout] test motion_detect::tests::test_invalid_dimensions ... ok
[INFO] [stdout] test motion_detect::tests::test_region_count ... ok
[INFO] [stdout] test motion_detect::tests::test_reset_clears_previous_frame ... ok
[INFO] [stdout] test motion_detect::tests::test_sensitivity_thresholds ... ok
[INFO] [stdout] test motion_estimation::tests::test_invalid_dimensions_rejected ... ok
[INFO] [stdout] test motion_estimation::tests::test_buffer_too_small_rejected ... ok
[INFO] [stdout] test motion_estimation::tests::test_estimator_default_config ... ok
[INFO] [stdout] test motion_estimation::tests::test_subpixel_refinement_absent_when_disabled ... ok
[INFO] [stdout] test motion_estimation::tests::test_subpixel_refinement_present ... ok
[INFO] [stdout] test motion_estimation::tests::test_vp9_default_config ... ok
[INFO] [stdout] test motion_estimation::tests::test_blocks_dimensions ... ok
[INFO] [stdout] test motion_estimation::tests::test_mean_mv_magnitude_zero_for_static ... ok
[INFO] [stdout] test kernel::tests::test_cache_find_existing ... ok
[INFO] [stdout] test motion_estimation::tests::test_zero_mv_for_identical_frames ... ok
[INFO] [stdout] test motion_estimation::tests::test_mv_detected_for_shifted_frame ... ok
[INFO] [stdout] test kernel::tests::test_cache_memory_estimate_nonzero ... ok
[INFO] [stdout] test multi_gpu::tests::test_device_ema_update ... ok
[INFO] [stdout] test kernel::tests::test_cache_find_first_match ... ok
[INFO] [stdout] test multi_gpu::tests::test_empty_device_list_is_error ... ok
[INFO] [stdout] test multi_gpu::tests::test_dispatch_failure_recorded ... ok
[INFO] [stdout] test multi_gpu::tests::test_dispatch_records_stats ... ok
[INFO] [stdout] test multi_gpu::tests::test_device_stats_snapshot ... ok
[INFO] [stdout] test multi_gpu::tests::test_distribute_frames_returns_results_in_order ... ok
[INFO] [stdout] test occupancy::tests::test_estimate_bandwidth ... ok
[INFO] [stdout] test occupancy::tests::test_estimate_bandwidth_clamping ... ok
[INFO] [stdout] test occupancy::tests::test_find_optimal_block_size ... ok
[INFO] [stdout] test occupancy::tests::test_gpu_spec_high_end ... ok
[INFO] [stdout] test occupancy::tests::test_gpu_spec_integrated ... ok
[INFO] [stdout] test occupancy::tests::test_gpu_spec_mid_range ... ok
[INFO] [stdout] test occupancy::tests::test_kernel_resources_simple ... ok
[INFO] [stdout] test occupancy::tests::test_occupancy_heavy_registers ... ok
[INFO] [stdout] test occupancy::tests::test_occupancy_heavy_shared_memory ... ok
[INFO] [stdout] test occupancy::tests::test_occupancy_limit_display ... ok
[INFO] [stdout] test occupancy::tests::test_occupancy_simple_kernel ... ok
[INFO] [stdout] test occupancy::tests::test_occupancy_zero_threads ... ok
[INFO] [stdout] test occupancy::tests::test_performance_tip_creation ... ok
[INFO] [stdout] test occupancy::tests::test_performance_tips_good_occupancy ... ok
[INFO] [stdout] test occupancy::tests::test_performance_tips_low_occupancy ... ok
[INFO] [stdout] test ops::chroma::tests::test_420_black ... ok
[INFO] [stdout] test ops::chroma::tests::test_420_odd_dimensions ... ok
[INFO] [stdout] test ops::chroma::tests::test_420_output_size ... ok
[INFO] [stdout] test ops::chroma::tests::test_420_roundtrip_gradient ... ok
[INFO] [stdout] test ops::chroma::tests::test_420_roundtrip_grey ... ok
[INFO] [stdout] test ops::chroma::tests::test_420_white ... ok
[INFO] [stdout] test ops::chroma::tests::test_422_odd_width ... ok
[INFO] [stdout] test ops::chroma::tests::test_422_output_size ... ok
[INFO] [stdout] test ops::chroma::tests::test_422_roundtrip_gradient ... ok
[INFO] [stdout] test ops::chroma::tests::test_422_roundtrip_grey ... ok
[INFO] [stdout] test ops::chroma::tests::test_bt2020_roundtrip ... ok
[INFO] [stdout] test ops::chroma::tests::test_buffer_too_small ... ok
[INFO] [stdout] test ops::chroma::tests::test_inverse_buffer_too_small ... ok
[INFO] [stdout] test ops::chroma::tests::test_output_size_420 ... ok
[INFO] [stdout] test ops::chroma::tests::test_output_size_422 ... ok
[INFO] [stdout] test ops::chroma::tests::test_zero_dimensions ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt2020_black_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt2020_red_luma ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt2020_roundtrip_colour ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt2020_roundtrip_white ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt2020_vs_bt601_luma_differ_for_red ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt2020_white_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_black_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_blue_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_cpu_vs_reference_batch ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_deterministic ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_green_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_red_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_reference_vectors ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_roundtrip_black ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_roundtrip_grey128 ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_roundtrip_white ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_vs_bt709_differ_for_primaries ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt601_white_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_batch_roundtrip_within_tolerance ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_black_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_red_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_reference_vectors ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_roundtrip_black ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_roundtrip_colour ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_roundtrip_white ... ok
[INFO] [stdout] test ops::colorspace::tests::test_bt709_white_rgb_to_ycbcr ... ok
[INFO] [stdout] test ops::colorspace::tests::test_grey_axis_chroma_neutral_all_standards ... ok
[INFO] [stdout] test ops::colorspace::tests::test_hlg_oetf_range ... ok
[INFO] [stdout] test ops::colorspace::tests::test_hlg_oetf_zero ... ok
[INFO] [stdout] test ops::colorspace::tests::test_hlg_roundtrip ... ok
[INFO] [stdout] test ops::colorspace::tests::test_pq_oetf_one ... ok
[INFO] [stdout] test ops::colorspace::tests::test_pq_oetf_zero ... ok
[INFO] [stdout] test ops::colorspace::tests::test_pq_roundtrip ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_layer_dimension_mismatch ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_layer_invalid_opacity ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_multiply_two_identical_layers ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_overlay_mode ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_screen_mode ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_single_fully_opaque_layer ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_two_layers_normal_over ... ok
[INFO] [stdout] test ops::composite::tests::test_blend_zero_layers_produces_black ... ok
[INFO] [stdout] test ops::composite::tests::test_color_burn_black_src_yields_zero ... ok
[INFO] [stdout] test ops::composite::tests::test_color_burn_white_src_yields_dst ... ok
[INFO] [stdout] test ops::composite::tests::test_color_dodge_black_src_yields_dst ... ok
[INFO] [stdout] test ops::composite::tests::test_color_dodge_blend_layers_brightens ... ok
[INFO] [stdout] test ops::composite::tests::test_color_dodge_white_src_yields_one ... ok
[INFO] [stdout] test ops::composite::tests::test_exclusion_blend_layers_round_trip ... ok
[INFO] [stdout] test ops::composite::tests::test_exclusion_midpoint_yields_zero_five ... ok
[INFO] [stdout] test ops::composite::tests::test_exclusion_with_black_src_yields_dst ... ok
[INFO] [stdout] test ops::composite::tests::test_hard_light_black_src_yields_zero ... ok
[INFO] [stdout] test ops::composite::tests::test_hard_light_blend_layers_round_trip ... ok
[INFO] [stdout] test ops::composite::tests::test_hard_light_white_src_yields_screen_like_max ... ok
[INFO] [stdout] test ops::composite::tests::test_hard_light_with_mid_grey_src ... ok
[INFO] [stdout] test ops::composite::tests::test_linear_burn_normal_case ... ok
[INFO] [stdout] test ops::composite::tests::test_linear_burn_saturates_to_zero ... ok
[INFO] [stdout] test ops::composite::tests::test_multiply_blend_zero ... ok
[INFO] [stdout] test ops::composite::tests::test_overlay_midpoint ... ok
[INFO] [stdout] test ops::composite::tests::test_screen_blend_identity ... ok
[INFO] [stdout] test ops::denoise::tests::test_bilateral_denoise_cpu_constant ... ok
[INFO] [stdout] test ops::denoise::tests::test_bilateral_denoise_params_struct_size ... ok
[INFO] [stdout] test multi_gpu::tests::test_single_device_always_selected ... ok
[INFO] [stdout] test ops::denoise::tests::test_denoise_kernel_bilateral ... ok
[INFO] [stdout] test ops::denoise::tests::test_denoise_kernel_gaussian ... ok
[INFO] [stdout] test ops::denoise::tests::test_denoise_kernel_nlm ... ok
[INFO] [stdout] test ops::denoise::tests::test_estimate_gflops_not_zero ... ok
[INFO] [stdout] test ops::denoise::tests::test_gaussian_denoise_cpu_constant_image ... ok
[INFO] [stdout] test ops::denoise::tests::test_gaussian_denoise_cpu_noisy ... ok
[INFO] [stdout] test ops::denoise::tests::test_nlm_denoise_cpu_constant ... ok
[INFO] [stdout] test ops::denoise::tests::test_nlm_denoise_invalid_h ... ok
[INFO] [stdout] test ops::filter::tests::test_blur_reduces_contrast ... ok
[INFO] [stdout] test ops::filter::tests::test_blur_single_pixel_passthrough ... ok
[INFO] [stdout] test ops::filter::tests::test_blur_size_mismatch_returns_error ... ok
[INFO] [stdout] test ops::filter::tests::test_blur_uniform_image_unchanged ... ok
[INFO] [stdout] test ops::filter::tests::test_kernel_center_is_largest ... ok
[INFO] [stdout] test ops::filter::tests::test_kernel_is_symmetric ... ok
[INFO] [stdout] test ops::filter::tests::test_kernel_negative_sigma_returns_identity ... ok
[INFO] [stdout] test ops::filter::tests::test_kernel_sums_to_one ... ok
[INFO] [stdout] test ops::filter::tests::test_kernel_zero_sigma_returns_identity ... ok
[INFO] [stdout] test ops::filter::tests::test_max_channel_diff_identical ... ok
[INFO] [stdout] test ops::filter::tests::test_max_channel_diff_known_values ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_large_sigma_heavy_smoothing ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_matches_serial_random_image ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_matches_serial_uniform_image ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_reduces_contrast ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_single_pixel_passthrough ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_size_mismatch_returns_error ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_tall_image ... ok
[INFO] [stdout] test ops::filter::tests::test_parallel_blur_wide_image ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_clip_limit_preserves_total ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_clip_limit_zero_no_change ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_alpha_passthrough_luma ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_alpha_passthrough_per_channel ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_buffer_too_small ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_constant_image_luma ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_gradient_luma_monotone ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_invalid_dimensions ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_equalize_per_channel ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_luma_black ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_luma_pure_green ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_luma_pure_red ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_luma_white ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_lut_single_value_histogram ... ok
[INFO] [stdout] test ops::histogram_eq::tests::test_lut_uniform_histogram ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_downsample_2x_preserves_solid ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_downsample_2x_size ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_gaussian_kernel_center_is_maximum ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_gaussian_kernel_sums_to_one ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_gaussian_kernel_symmetric ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ms_ssim_different ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ms_ssim_identical ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ms_ssim_small_image ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_psnr_buffer_size_mismatch ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_psnr_different_images ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_psnr_gradient_self ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_psnr_high_difference ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_psnr_identical_images ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_psnr_zero_dimensions ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ssim_buffer_mismatch ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ssim_identical_images ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ssim_per_channel ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ssim_slightly_different ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ssim_small_image_fallback ... ok
[INFO] [stdout] test ops::quality_metrics::tests::test_ssim_very_different_images ... ok
[INFO] [stdout] test ops::scale::tests::test_bilinear_downscale_checkerboard_average ... ok
[INFO] [stdout] test ops::scale::tests::test_bilinear_downscale_uniform_stable ... ok
[INFO] [stdout] test ops::scale::tests::test_lanczos3_1x1_identity ... ok
[INFO] [stdout] test ops::scale::tests::test_lanczos3_black_white_border ... ok
[INFO] [stdout] test ops::scale::tests::test_lanczos3_gradient_downscale_monotone ... ok
[INFO] [stdout] test ops::scale::tests::test_lanczos3_output_size_correct ... ok
[INFO] [stdout] test ops::scale::tests::test_lanczos3_uniform_downscale_preserves_colour ... ok
[INFO] [stdout] test ops::scale::tests::test_lanczos3_uniform_upscale_preserves_colour ... ok
[INFO] [stdout] test ops::tonemap::tests::test_aces_output_clamped ... ok
[INFO] [stdout] test ops::tonemap::tests::test_aces_zero ... ok
[INFO] [stdout] test ops::tonemap::tests::test_apply_gamma_clamps_above_one ... ok
[INFO] [stdout] test ops::tonemap::tests::test_apply_gamma_clamps_below_zero ... ok
[INFO] [stdout] test ops::tonemap::tests::test_apply_gamma_identity_at_one ... ok
[INFO] [stdout] test ops::tonemap::tests::test_apply_tonemap_frame_reinhard_rgb ... ok
[INFO] [stdout] test ops::tonemap::tests::test_apply_tonemap_frame_rgba_alpha_preserved ... ok
[INFO] [stdout] test ops::tonemap::tests::test_drago_output_range ... ok
[INFO] [stdout] test ops::tonemap::tests::test_drago_zero_input ... ok
[INFO] [stdout] test ops::tonemap::tests::test_hable_unity_exposure ... ok
[INFO] [stdout] test ops::tonemap::tests::test_reinhard_half_input ... ok
[INFO] [stdout] test ops::tonemap::tests::test_reinhard_large_input_approaches_one ... ok
[INFO] [stdout] test ops::tonemap::tests::test_reinhard_zero ... ok
[INFO] [stdout] test ops::transform::tests::test_lens_undistort_invalid_dims_return_error ... ok
[INFO] [stdout] test ops::transform::tests::test_lens_undistort_no_distortion_identity ... ok
[INFO] [stdout] test ops::transform::tests::test_lens_undistort_preserves_centre_pixel ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_identity_project ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_inverse_is_correct ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_singular_returns_none_inverse ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_translation ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_warp_identity_preserves_image ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_warp_invalid_dims_return_error ... ok
[INFO] [stdout] test ops::transform::tests::test_perspective_warp_out_of_bounds_uses_fill ... ok
[INFO] [stdout] test optical_flow::tests::test_buffer_size_mismatch_rejected ... ok
[INFO] [stdout] test optical_flow::tests::test_flow_field_get_oob_returns_none ... ok
[INFO] [stdout] test optical_flow::tests::test_flow_field_zeros ... ok
[INFO] [stdout] test optical_flow::tests::test_flow_vector_magnitude ... ok
[INFO] [stdout] test optical_flow::tests::test_invalid_dimensions_rejected ... ok
[INFO] [stdout] test optical_flow::tests::test_pyramid_dims_decreasing ... ok
[INFO] [stdout] test optical_flow::tests::test_static_scene_zero_flow ... ok
[INFO] [stdout] test optical_flow::tests::test_warp_frame_identity ... ok
[INFO] [stdout] test perspective_transform::tests::test_barrel_pincushion_differ ... ok
[INFO] [stdout] test perspective_transform::tests::test_compose ... ok
[INFO] [stdout] test perspective_transform::tests::test_identity_apply ... ok
[INFO] [stdout] test perspective_transform::tests::test_identity_warp_preserves_size ... ok
[INFO] [stdout] test perspective_transform::tests::test_inverse_of_identity ... ok
[INFO] [stdout] test perspective_transform::tests::test_no_distortion_identity ... ok
[INFO] [stdout] test perspective_transform::tests::test_rotation_preserves_magnitude ... ok
[INFO] [stdout] test perspective_transform::tests::test_scale_apply ... ok
[INFO] [stdout] test perspective_transform::tests::test_singular_homography_rejected ... ok
[INFO] [stdout] test perspective_transform::tests::test_singular_inverse_returns_none ... ok
[INFO] [stdout] test perspective_transform::tests::test_translation_roundtrip ... ok
[INFO] [stdout] test perspective_transform::tests::test_undistort_rgba_correct_size ... ok
[INFO] [stdout] test perspective_transform::tests::test_undistort_rgba_wrong_size_rejected ... ok
[INFO] [stdout] test perspective_transform::tests::test_warp_wrong_size_rejected ... ok
[INFO] [stdout] test pipeline::tests::test_activate_deactivate ... ok
[INFO] [stdout] test pipeline::tests::test_add_node_returns_id ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_batched_accumulates_before_flush ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_batched_two_batches ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_debug_fmt ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_deferred_does_not_auto_flush ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_eager_each_barrier_is_one_flush ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_eager_flushes_immediately ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_empty_flush_does_nothing ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_manual_flush_clears_pending ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_mixed_kinds_tracked_separately ... ok
[INFO] [stdout] test pipeline::tests::test_batcher_strategy_accessor ... ok
[INFO] [stdout] test pipeline::tests::test_connect_cycle_detected ... ok
[INFO] [stdout] test pipeline::tests::test_connect_duplicate_edge_err ... ok
[INFO] [stdout] test pipeline::tests::test_connect_missing_node_err ... ok
[INFO] [stdout] test pipeline::tests::test_connect_nodes_ok ... ok
[INFO] [stdout] test pipeline::tests::test_connect_self_loop_err ... ok
[INFO] [stdout] test pipeline::tests::test_metrics_drop_rate ... ok
[INFO] [stdout] test pipeline::tests::test_metrics_record_frame ... ok
[INFO] [stdout] test pipeline::tests::test_pipeline_new_is_empty ... ok
[INFO] [stdout] test pipeline::tests::test_port_counts_updated ... ok
[INFO] [stdout] test pipeline::tests::test_stage_display ... ok
[INFO] [stdout] test pipeline::tests::test_validate_empty_err ... ok
[INFO] [stdout] test pipeline::tests::test_validate_single_node_ok ... ok
[INFO] [stdout] test pipeline_cache::tests::test_clear_resets_state ... ok
[INFO] [stdout] test pipeline_cache::tests::test_different_keys_stored_separately ... ok
[INFO] [stdout] test pipeline_cache::tests::test_empty_binary_cached ... ok
[INFO] [stdout] test pipeline_cache::tests::test_get_or_create_miss_then_hit ... ok
[INFO] [stdout] test pipeline_cache::tests::test_hit_ratio_calculation ... ok
[INFO] [stdout] test pipeline_cache::tests::test_hit_ratio_no_lookups_returns_zero ... ok
[INFO] [stdout] test pipeline_cache::tests::test_invalidate_removes_entry ... ok
[INFO] [stdout] test pipeline_stages::tests::test_color_convert_identity ... ok
[INFO] [stdout] test pipeline_stages::tests::test_color_convert_rgba_to_bgra_swap ... ok
[INFO] [stdout] test pipeline_stages::tests::test_color_convert_rgba_to_gray ... ok
[INFO] [stdout] test pipeline_stages::tests::test_gaussian_blur_constant_gray ... ok
[INFO] [stdout] test pipeline_stages::tests::test_gaussian_blur_wrong_size ... ok
[INFO] [stdout] test pipeline_stages::tests::test_grayscale_format ... ok
[INFO] [stdout] test pipeline_stages::tests::test_grayscale_white ... ok
[INFO] [stdout] test pipeline_stages::tests::test_overlay_transparent_overlay ... ok
[INFO] [stdout] test pipeline_stages::tests::test_pipeline_add_stage_format_mismatch ... ok
[INFO] [stdout] test pipeline_stages::tests::test_pipeline_empty_passthrough ... ok
[INFO] [stdout] test pipeline_stages::tests::test_pipeline_full_rgba_to_binary ... ok
[INFO] [stdout] test pipeline_stages::tests::test_pipeline_stage_count ... ok
[INFO] [stdout] test pipeline_stages::tests::test_pipeline_validate_ok ... ok
[INFO] [stdout] test pipeline_stages::tests::test_pixel_format_display ... ok
[INFO] [stdout] test pipeline_stages::tests::test_sobel_flat_is_zero ... ok
[INFO] [stdout] test pipeline_stages::tests::test_sobel_output_format ... ok
[INFO] [stdout] test pipeline_stages::tests::test_threshold_binary ... ok
[INFO] [stdout] test queue::tests::test_batch_submitter ... ok
[INFO] [stdout] test queue::tests::test_queue_type ... ok
[INFO] [stdout] test readback::tests::test_download_identity ... ok
[INFO] [stdout] test readback::tests::test_download_region_basic ... ok
[INFO] [stdout] test readback::tests::test_download_region_zero_dimensions ... ok
[INFO] [stdout] test readback::tests::test_download_short_slice_returns_available_bytes ... ok
[INFO] [stdout] test readback::tests::test_download_truncates_to_expected_len ... ok
[INFO] [stdout] test readback::tests::test_expected_len ... ok
[INFO] [stdout] test readback::tests::test_split_channels_correctness ... ok
[INFO] [stdout] test readback::tests::test_split_channels_multiple_pixels ... ok
[INFO] [stdout] test readback::tests::test_validate_size_correct ... ok
[INFO] [stdout] test readback::tests::test_validate_size_wrong ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_config_has_depth_true ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_config_not_multisampled_by_default ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_config_with_sample_count ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_format_bytes_per_texel_rgba32 ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_format_has_depth_depth32 ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_format_has_stencil_depth24 ... ok
[INFO] [stdout] test render_pass::tests::test_attachment_format_rgba8_no_depth ... ok
[INFO] [stdout] test render_pass::tests::test_load_op_clear_does_not_preserve ... ok
[INFO] [stdout] test render_pass::tests::test_load_op_preserves_content_load ... ok
[INFO] [stdout] test render_pass::tests::test_render_pass_builder_build_no_color_err ... ok
[INFO] [stdout] test render_pass::tests::test_render_pass_builder_build_ok ... ok
[INFO] [stdout] test render_pass::tests::test_render_pass_builder_depth_non_depth_format_err ... ok
[INFO] [stdout] test render_pass::tests::test_render_pass_builder_with_depth ... ok
[INFO] [stdout] test render_pass::tests::test_render_pass_uniform_color_format_true_single ... ok
[INFO] [stdout] test render_pass::tests::test_store_op_discard_no_write ... ok
[INFO] [stdout] test render_pass::tests::test_store_op_writes_output_store ... ok
[INFO] [stdout] test resource_manager::tests::test_allocate_returns_valid_handle ... ok
[INFO] [stdout] test resource_manager::tests::test_allocate_zero_bytes_returns_error ... ok
[INFO] [stdout] test resource_manager::tests::test_allocated_handle_valid ... ok
[INFO] [stdout] test resource_manager::tests::test_allocation_count_increases ... ok
[INFO] [stdout] test resource_manager::tests::test_default_handle_invalid ... ok
[INFO] [stdout] test resource_manager::tests::test_free_invalid_handle_returns_false ... ok
[INFO] [stdout] test resource_manager::tests::test_free_removes_resource ... ok
[INFO] [stdout] test resource_manager::tests::test_gpu_buffer_is_gpu_memory ... ok
[INFO] [stdout] test resource_manager::tests::test_gpu_buffer_not_texture ... ok
[INFO] [stdout] test resource_manager::tests::test_host_buffer_not_gpu_memory ... ok
[INFO] [stdout] test resource_manager::tests::test_is_alive_after_free_is_false ... ok
[INFO] [stdout] test resource_manager::tests::test_resource_label_query ... ok
[INFO] [stdout] test multi_gpu::tests::test_adaptive_prefers_high_throughput ... ok
[INFO] [stdout] test resource_manager::tests::test_resource_size_query ... ok
[INFO] [stdout] test resource_manager::tests::test_sampler_not_gpu_memory ... ok
[INFO] [stdout] test resource_manager::tests::test_texture2d_is_gpu_memory ... ok
[INFO] [stdout] test resource_manager::tests::test_texture3d_is_texture ... ok
[INFO] [stdout] test resource_manager::tests::test_total_bytes_counts_all ... ok
[INFO] [stdout] test resource_manager::tests::test_resource_type_query ... ok
[INFO] [stdout] test resource_manager::tests::test_total_gpu_bytes_only_counts_gpu_resources ... ok
[INFO] [stdout] test sampler::tests::filter_mode_default_is_linear ... ok
[INFO] [stdout] test sampler::tests::filter_mode_linear_no_mipmap ... ok
[INFO] [stdout] test sampler::tests::filter_mode_mipmap_variants_use_mipmaps ... ok
[INFO] [stdout] test sampler::tests::filter_mode_nearest_no_mipmap ... ok
[INFO] [stdout] test sampler::tests::nearest_repeat_config_values ... ok
[INFO] [stdout] test sampler::tests::sampler_cache_clear_resets ... ok
[INFO] [stdout] test sampler::tests::sampler_cache_deduplicate ... ok
[INFO] [stdout] test sampler::tests::sampler_cache_different_configs_different_handles ... ok
[INFO] [stdout] test sampler::tests::sampler_cache_is_empty_initially ... ok
[INFO] [stdout] test sampler::tests::sampler_config_clamp_anisotropy ... ok
[INFO] [stdout] test sampler::tests::sampler_config_clamp_anisotropy_no_increase ... ok
[INFO] [stdout] test sampler::tests::sampler_config_default_is_linear_clamp ... ok
[INFO] [stdout] test sampler::tests::sampler_config_linear_clamp_no_mipmaps ... ok
[INFO] [stdout] test sampler::tests::sampler_config_trilinear_needs_mipmaps ... ok
[INFO] [stdout] test sampler::tests::sampler_handle_id ... ok
[INFO] [stdout] test sampler::tests::wrap_mode_default_is_clamp_to_edge ... ok
[INFO] [stdout] test scale_kernel::tests::test_bicubic_weight_at_two_is_zero ... ok
[INFO] [stdout] test scale_kernel::tests::test_bicubic_weight_at_zero_is_one ... ok
[INFO] [stdout] test scale_kernel::tests::test_downscale_output_size ... ok
[INFO] [stdout] test scale_kernel::tests::test_downscale_2x_preserves_constant_color ... ok
[INFO] [stdout] test scale_kernel::tests::test_identity_bicubic ... ok
[INFO] [stdout] test scale_kernel::tests::test_identity_nearest ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_filter_labels ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_plane_constant_value ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_plane_invalid_dims ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_rgba_buffer_mismatch ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_rgba_invalid_src_dims ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_stats_filter_recorded ... ok
[INFO] [stdout] test scale_kernel::tests::test_identity_bilinear ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_yuv420_output_sizes ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_yuv420_constant_neutral ... ok
[INFO] [stdout] test scale_kernel::tests::test_scale_yuv422_output_sizes ... ok
[INFO] [stdout] test shader::tests::test_bind_group_layout_builder ... ok
[INFO] [stdout] test shader_cache::tests::test_age_of_is_non_negative ... ok
[INFO] [stdout] test shader_cache::tests::test_cache_miss ... ok
[INFO] [stdout] test shader_cache::tests::test_clear ... ok
[INFO] [stdout] test shader_cache::tests::test_contains ... ok
[INFO] [stdout] test shader_cache::tests::test_default_cache_capacity ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_clear_removes_all_files ... ok
[INFO] [stdout] test scale_kernel::tests::test_upscale_output_size ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_invalidate_backend ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_miss_unknown_version ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_put_and_get ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_roundtrip_large_bytecode ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_stats_accumulate ... ok
[INFO] [stdout] test shader_cache::tests::test_eviction_by_bytes ... ok
[INFO] [stdout] test shader_cache::tests::test_eviction_by_entry_count ... ok
[INFO] [stdout] test shader_cache::tests::test_hash_source_deterministic ... ok
[INFO] [stdout] test shader_cache::tests::test_hash_source_differs_for_different_inputs ... ok
[INFO] [stdout] test shader_cache::tests::test_hit_count_increments ... ok
[INFO] [stdout] test shader_cache::tests::test_insert_and_get ... ok
[INFO] [stdout] test shader_cache::tests::test_disk_cache_version_mismatch_returns_none ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidate_backend ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidation_clear_invalidates_all ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidation_different_source_is_miss ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidation_initial_hit ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidation_old_version_not_accessible_after_remove ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidation_source_hash_changes_on_whitespace_edit ... ok
[INFO] [stdout] test shader_cache::tests::test_invalidation_disk_cache_version_change ... ok
[INFO] [stdout] test shader_cache::tests::test_shader_version_equality ... ok
[INFO] [stdout] test shader_cache::tests::test_remove ... ok
[INFO] [stdout] test shader_params::tests::test_float_byte_size ... ok
[INFO] [stdout] test shader_params::tests::test_int_byte_size ... ok
[INFO] [stdout] test shader_params::tests::test_matrix4x4_byte_size ... ok
[INFO] [stdout] test shader_params::tests::test_shader_param_end_offset ... ok
[INFO] [stdout] test shader_params::tests::test_shader_param_end_offset_matrix ... ok
[INFO] [stdout] test shader_params::tests::test_shader_param_end_offset_vec4 ... ok
[INFO] [stdout] test shader_params::tests::test_texture_byte_size ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_add_and_count ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_find_existing ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_is_aligned_false ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_find_missing ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_is_aligned_true ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_total_size ... ok
[INFO] [stdout] test shader_params::tests::test_vec2_byte_size ... ok
[INFO] [stdout] test shader_params::tests::test_vec3_byte_size ... ok
[INFO] [stdout] test shader_params::tests::test_vec4_byte_size ... ok
[INFO] [stdout] test sync::tests::test_barrier ... ok
[INFO] [stdout] test sync::tests::test_event ... ok
[INFO] [stdout] test sync::tests::test_semaphore ... ok
[INFO] [stdout] test sync_primitive::tests::test_barrier_wait_type ... ok
[INFO] [stdout] test sync_primitive::tests::test_enqueue_transitions_to_pending ... ok
[INFO] [stdout] test sync_primitive::tests::test_fence_is_cpu_visible ... ok
[INFO] [stdout] test sync_primitive::tests::test_fence_wait_type ... ok
[INFO] [stdout] test sync_primitive::tests::test_full_lifecycle ... ok
[INFO] [stdout] test sync_primitive::tests::test_label_stored ... ok
[INFO] [stdout] test sync_primitive::tests::test_new_sync_is_unsignaled ... ok
[INFO] [stdout] test sync_primitive::tests::test_pending_is_pending ... ok
[INFO] [stdout] test sync_primitive::tests::test_reset_from_pending_fails ... ok
[INFO] [stdout] test sync_primitive::tests::test_reset_from_signaled_succeeds ... ok
[INFO] [stdout] test sync_primitive::tests::test_semaphore_not_cpu_visible ... ok
[INFO] [stdout] test sync_primitive::tests::test_semaphore_wait_type ... ok
[INFO] [stdout] test sync_primitive::tests::test_signal_count_increments ... ok
[INFO] [stdout] test sync_primitive::tests::test_signal_transitions_to_signaled ... ok
[INFO] [stdout] test sync_primitive::tests::test_signaled_is_signaled ... ok
[INFO] [stdout] test sync_primitive::tests::test_signaled_not_pending ... ok
[INFO] [stdout] test sync_primitive::tests::test_sync_type_stored ... ok
[INFO] [stdout] test sync_primitive::tests::test_unsignaled_not_signaled ... ok
[INFO] [stdout] test sync_primitive::tests::test_wait_returns_false_when_unsignaled ... ok
[INFO] [stdout] test sync_primitive::tests::test_wait_returns_true_when_signaled ... ok
[INFO] [stdout] test texture::tests::test_allocate_with_lru_eviction_makes_space ... ok
[INFO] [stdout] test shader_params::tests::test_uniform_block_matrix_is_aligned ... ok
[INFO] [stdout] test texture::tests::test_allocate_with_lru_eviction_preserves_mru ... ok
[INFO] [stdout] test texture::tests::test_channel_counts ... ok
[INFO] [stdout] test texture::tests::test_descriptor_size_bytes_rgba8 ... ok
[INFO] [stdout] test texture::tests::test_descriptor_size_bytes_with_mips ... ok
[INFO] [stdout] test texture::tests::test_descriptor_total_pixels ... ok
[INFO] [stdout] test texture::tests::test_descriptor_new_defaults ... ok
[INFO] [stdout] test texture::tests::test_evict_lru_correct_order ... ok
[INFO] [stdout] test texture::tests::test_evict_lru_noop_when_under_capacity ... ok
[INFO] [stdout] test texture::tests::test_evict_lru_on_empty_pool ... ok
[INFO] [stdout] test texture::tests::test_evict_lru_reduces_count_to_capacity ... ok
[INFO] [stdout] test texture::tests::test_lru_eviction_returns_none_when_budget_impossible ... ok
[INFO] [stdout] test texture::tests::test_lru_handle_on_empty_pool ... ok
[INFO] [stdout] test texture::tests::test_pool_basic_allocation ... ok
[INFO] [stdout] test texture::tests::test_lru_handle_returns_oldest ... ok
[INFO] [stdout] test texture::tests::test_pool_budget_exceeded_returns_none ... ok
[INFO] [stdout] test texture::tests::test_pool_free_reduces_bytes ... ok
[INFO] [stdout] test texture::tests::test_pool_reuses_freed_slot ... ok
[INFO] [stdout] test texture::tests::test_pool_utilization_after_alloc ... ok
[INFO] [stdout] test texture::tests::test_rgba8_bytes_per_pixel ... ok
[INFO] [stdout] test texture::tests::test_touch_updates_lru_order ... ok
[INFO] [stdout] test texture::tests::test_with_capacity_allocate_after_evict ... ok
[INFO] [stdout] test texture::tests::test_with_capacity_rejects_when_full ... ok
[INFO] [stdout] test texture::tests::test_yuv_formats_are_yuv ... ok
[INFO] [stdout] test texture_atlas::tests::test_insert_multiple_rects ... ok
[INFO] [stdout] test texture_atlas::tests::test_insert_single_rect ... ok
[INFO] [stdout] test texture_atlas::tests::test_insert_too_large_returns_error ... ok
[INFO] [stdout] test texture_atlas::tests::test_clear_resets_state ... ok
[INFO] [stdout] test texture_atlas::tests::test_packer_oversized_sprite_returns_zero_rect ... ok
[INFO] [stdout] test texture_atlas::tests::test_packer_clear_resets ... ok
[INFO] [stdout] test texture_atlas::tests::test_packer_pack_multiple_sprites ... ok
[INFO] [stdout] test texture_atlas::tests::test_packer_pack_single_sprite ... ok
[INFO] [stdout] test texture_atlas::tests::test_packer_utilisation_increases ... ok
[INFO] [stdout] test texture_atlas::tests::test_pixel_data_written_to_correct_position ... ok
[INFO] [stdout] test texture_atlas::tests::test_rects_do_not_overlap ... ok
[INFO] [stdout] test texture_atlas::tests::test_upload_pixels_correct_dimensions ... ok
[INFO] [stdout] test texture_atlas::tests::test_upload_pixels_wrong_size_returns_error ... ok
[INFO] [stdout] test texture_atlas::tests::test_upload_pixels_invalid_id_returns_error ... ok
[INFO] [stdout] test texture_atlas::tests::test_utilisation_increases_with_inserts ... ok
[INFO] [stdout] test texture_atlas::tests::test_uv_normalized_range ... ok
[INFO] [stdout] test texture_atlas::tests::test_zero_dimension_returns_error ... ok
[INFO] [stdout] test texture_cache::tests::test_fetch_correct_texel_value ... ok
[INFO] [stdout] test texture_cache::tests::test_fetch_first_access_is_miss ... ok
[INFO] [stdout] test texture_cache::tests::test_fetch_second_access_same_tile_is_hit ... ok
[INFO] [stdout] test texture_cache::tests::test_flush_clears_cache ... ok
[INFO] [stdout] test texture_cache::tests::test_grid_size_exact_division ... ok
[INFO] [stdout] test texture_cache::tests::test_grid_size_non_exact ... ok
[INFO] [stdout] test texture_cache::tests::test_invalidate_tile ... ok
[INFO] [stdout] test texture_cache::tests::test_lru_eviction_when_full ... ok
[INFO] [stdout] test texture_cache::tests::test_lru_promotion_prevents_eviction ... ok
[INFO] [stdout] test texture_cache::tests::test_new_zero_capacity_error ... ok
[INFO] [stdout] test texture_cache::tests::test_new_zero_dimensions_error ... ok
[INFO] [stdout] test texture_cache::tests::test_new_zero_tile_size_error ... ok
[INFO] [stdout] test texture_cache::tests::test_prefetch_already_resident_is_noop ... ok
[INFO] [stdout] test texture_cache::tests::test_prefetch_loads_tile_without_hit_count ... ok
[INFO] [stdout] test texture_cache::tests::test_stats_hit_rate_all_hits ... ok
[INFO] [stdout] test texture_cache::tests::test_stats_hit_rate_zero_accesses ... ok
[INFO] [stdout] test texture_cache::tests::test_stats_total_accesses ... ok
[INFO] [stdout] test texture_cache::tests::test_tile_key_from_texel ... ok
[INFO] [stdout] test texture_cache::tests::test_tile_key_origin ... ok
[INFO] [stdout] test tone_curve::tests::test_apply_in_place ... ok
[INFO] [stdout] test tone_curve::tests::test_apply_luma ... ok
[INFO] [stdout] test tone_curve::tests::test_apply_luma_in_place ... ok
[INFO] [stdout] test texture_cache::tests::test_fetch_out_of_bounds ... ok
[INFO] [stdout] test tone_curve::tests::test_apply_mismatched_size_returns_error ... ok
[INFO] [stdout] test tone_curve::tests::test_apply_non_multiple_of_4_returns_error ... ok
[INFO] [stdout] test tone_curve::tests::test_apply_rgba_buffer ... ok
[INFO] [stdout] test tone_curve::tests::test_chain_bake_empty_is_identity ... ok
[INFO] [stdout] test tone_curve::tests::test_chain_bake_multiple ... ok
[INFO] [stdout] test tone_curve::tests::test_chain_bake_single ... ok
[INFO] [stdout] test tone_curve::tests::test_compose_two_curves ... ok
[INFO] [stdout] test tone_curve::tests::test_custom_lut_passthrough ... ok
[INFO] [stdout] test tone_curve::tests::test_filmic_s_curve_endpoints ... ok
[INFO] [stdout] test tone_curve::tests::test_filmic_s_curve_midpoint_shift ... ok
[INFO] [stdout] test tone_curve::tests::test_gamma_curve_brightens_midtones ... ok
[INFO] [stdout] test tone_curve::tests::test_gamma_curve_preserves_endpoints ... ok
[INFO] [stdout] test tone_curve::tests::test_gamma_unity_is_identity ... ok
[INFO] [stdout] test tone_curve::tests::test_label_includes_curve_name ... ok
[INFO] [stdout] test tone_curve::tests::test_linear_curve_is_identity ... ok
[INFO] [stdout] test tone_curve::tests::test_logc_maps_black_to_low ... ok
[INFO] [stdout] test tone_curve::tests::test_negative_gamma_returns_error ... ok
[INFO] [stdout] test tone_curve::tests::test_slog3_maps_black_to_low ... ok
[INFO] [stdout] test tone_curve::tests::test_spline_insufficient_points_error ... ok
[INFO] [stdout] test tone_curve::tests::test_spline_with_custom_control_points ... ok
[INFO] [stdout] test tone_curve::tests::test_spline_with_two_points ... ok
[INFO] [stdout] test tone_curve::tests::test_zero_gamma_returns_error ... ok
[INFO] [stdout] test upload_queue::tests::test_cancel_nonexistent ... ok
[INFO] [stdout] test upload_queue::tests::test_cancel_request ... ok
[INFO] [stdout] test upload_queue::tests::test_clear_queue ... ok
[INFO] [stdout] test tone_curve::tests::test_invert_linear_is_identity ... ok
[INFO] [stdout] test upload_queue::tests::test_create_queue ... ok
[INFO] [stdout] test upload_queue::tests::test_enqueue_byte_limit ... ok
[INFO] [stdout] test upload_queue::tests::test_enqueue_limit ... ok
[INFO] [stdout] test upload_queue::tests::test_failed_transfer ... ok
[INFO] [stdout] test upload_queue::tests::test_enqueue_request ... ok
[INFO] [stdout] test upload_queue::tests::test_flush_batch ... ok
[INFO] [stdout] test upload_queue::tests::test_flush_priority_ordering ... ok
[INFO] [stdout] test upload_queue::tests::test_peek_next ... ok
[INFO] [stdout] test upload_queue::tests::test_queued_bytes ... ok
[INFO] [stdout] test upload_queue::tests::test_request_state_tracking ... ok
[INFO] [stdout] test upload_queue::tests::test_stats ... ok
[INFO] [stdout] test upload_queue::tests::test_stats_mb_conversion ... ok
[INFO] [stdout] test upload_queue::tests::test_upload_target_fits ... ok
[INFO] [stdout] test vertex_buffer::tests::attribute_component_counts ... ok
[INFO] [stdout] test vertex_buffer::tests::attribute_float32x3_size ... ok
[INFO] [stdout] test vertex_buffer::tests::attribute_float32_size ... ok
[INFO] [stdout] test vertex_buffer::tests::attribute_unorm8x4_size ... ok
[INFO] [stdout] test vertex_buffer::tests::layout_offsets_are_cumulative ... ok
[INFO] [stdout] test vertex_buffer::tests::layout_slot_by_name ... ok
[INFO] [stdout] test vertex_buffer::tests::layout_stride_multiple_attrs ... ok
[INFO] [stdout] test vertex_buffer::tests::layout_stride_single_attr ... ok
[INFO] [stdout] test vertex_buffer::tests::vertex_buffer_byte_len ... ok
[INFO] [stdout] test vertex_buffer::tests::vertex_buffer_create_ok ... ok
[INFO] [stdout] test vertex_buffer::tests::vertex_buffer_empty_layout_error ... ok
[INFO] [stdout] test vertex_buffer::tests::vertex_buffer_stride_mismatch_error ... ok
[INFO] [stdout] test vertex_buffer::tests::vertex_buffer_vertex_bytes_valid ... ok
[INFO] [stdout] test video_process::tests::test_adjust_brightness_clamp_up ... ok
[INFO] [stdout] test video_process::tests::test_adjust_brightness_clamp_down ... ok
[INFO] [stdout] test video_process::tests::test_adjust_contrast ... ok
[INFO] [stdout] test video_process::tests::test_adjust_contrast_increase ... ok
[INFO] [stdout] test video_process::tests::test_adjust_saturation_no_change_at_one ... ok
[INFO] [stdout] test video_process::tests::test_adjust_saturation_zero_desaturates ... ok
[INFO] [stdout] test video_process::tests::test_config_accessor ... ok
[INFO] [stdout] test video_process::tests::test_frame_difference ... ok
[INFO] [stdout] test video_process::tests::test_histogram_rgb_frame ... ok
[INFO] [stdout] test video_process::tests::test_histogram_uniform_frame ... ok
[INFO] [stdout] test video_process::tests::test_invalid_frame_size ... ok
[INFO] [stdout] test video_process::tests::test_mean_absolute_error ... ok
[INFO] [stdout] test viewport::tests::test_scissor_area ... ok
[INFO] [stdout] test viewport::tests::test_scissor_clips_inside ... ok
[INFO] [stdout] test viewport::tests::test_scissor_clips_outside ... ok
[INFO] [stdout] test viewport::tests::test_scissor_is_non_empty ... ok
[INFO] [stdout] test viewport::tests::test_viewport_aspect_ratio ... ok
[INFO] [stdout] test viewport::tests::test_viewport_aspect_ratio_zero_height ... ok
[INFO] [stdout] test viewport::tests::test_viewport_invalid_depth_range ... ok
[INFO] [stdout] test viewport::tests::test_viewport_is_landscape ... ok
[INFO] [stdout] test viewport::tests::test_viewport_is_portrait ... ok
[INFO] [stdout] test viewport::tests::test_viewport_origin_is_top_left ... ok
[INFO] [stdout] test viewport::tests::test_viewport_stack_current ... ok
[INFO] [stdout] test viewport::tests::test_viewport_stack_pop_empty ... ok
[INFO] [stdout] test viewport::tests::test_viewport_stack_push_pop ... ok
[INFO] [stdout] test viewport::tests::test_viewport_valid_depth_range ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_1d_default_limits ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_1d_small_problem ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_2d_1080p ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_2d_4k ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_2d_non_square ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_2d_small_image ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_efficiency_estimate ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_respects_constrained_limits ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_with_large_shared_memory ... ok
[INFO] [stdout] test workgroup::tests::test_auto_tuner_with_shared_memory ... ok
[INFO] [stdout] test workgroup::tests::test_device_limits_default ... ok
[INFO] [stdout] test workgroup::tests::test_dispatch_dimensions_linear ... ok
[INFO] [stdout] test workgroup::tests::test_dispatch_total_invocations ... ok
[INFO] [stdout] test workgroup::tests::test_efficiency_partial ... ok
[INFO] [stdout] test workgroup::tests::test_div_ceil ... ok
[INFO] [stdout] test workgroup::tests::test_efficiency_perfect ... ok
[INFO] [stdout] test workgroup::tests::test_plan_1d ... ok
[INFO] [stdout] test workgroup::tests::test_plan_2d_square ... ok
[INFO] [stdout] test workgroup::tests::test_plan_2d_wide ... ok
[INFO] [stdout] test workgroup::tests::test_plan_3d ... ok
[INFO] [stdout] test workgroup::tests::test_shared_memory_exceeds_limit ... ok
[INFO] [stdout] test workgroup::tests::test_shared_memory_floats ... ok
[INFO] [stdout] test workgroup::tests::test_shared_memory_vec4s ... ok
[INFO] [stdout] test workgroup::tests::test_warp_alignment ... ok
[INFO] [stdout] test workgroup::tests::test_workgroup_size_3d ... ok
[INFO] [stdout] test workgroup::tests::test_workgroup_size_default ... ok
[INFO] [stdout] test workgroup::tests::test_workgroup_size_flat ... ok
[INFO] [stdout] test workgroup::tests::test_workgroup_size_invalid_exceeds_max ... ok
[INFO] [stdout] test workgroup::tests::test_workgroup_size_invalid_exceeds_total ... ok
[INFO] [stdout] test workgroup::tests::test_workgroup_size_linear ... ok
[INFO] [stdout] test workgroup::tests::test_round_up ... ok
[INFO] [stdout] test multi_gpu::tests::test_least_loaded_prefers_idle ... ok
[INFO] [stdout] test ops::denoise::tests::test_bilateral_denoise_via_denoise_fn_constant ... ok
[INFO] [stdout] test multi_gpu::tests::test_round_robin_cycles ... ok
[INFO] [stdout] test multi_gpu::tests::test_device_count ... ok
[INFO] [stdout] test multi_gpu::tests::test_total_dispatched_sum ... ok
[INFO] [stdout] test multi_gpu::tests::test_weighted_selects_highest_weight ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1237 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 3.59s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests oximedia_gpu
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test src/accelerator.rs - accelerator::AcceleratorBuilder (line 981) - compile ... ok
[INFO] [stdout] test src/accelerator.rs - accelerator (line 18) - compile ... ok
[INFO] [stdout] test src/film_grain.rs - film_grain (line 29) - compile ... ok
[INFO] [stdout] test src/optical_flow.rs - optical_flow (line 22) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 81) - compile ... ok
[INFO] [stdout] test src/perspective_transform.rs - perspective_transform (line 20) - compile ... ok
[INFO] [stdout] test src/pipeline_stages.rs - pipeline_stages (line 8) - compile ... ok
[INFO] [stdout] test src/color_convert_kernel.rs - color_convert_kernel (line 13) ... ok
[INFO] [stdout] test src/blend_kernel.rs - blend_kernel (line 21) ... ok
[INFO] [stdout] test src/gpu_profiler.rs - gpu_profiler::GpuProfiler (line 111) ... ok
[INFO] [stdout] test src/compute_shader.rs - compute_shader (line 10) ... ok
[INFO] [stdout] test src/pipeline_cache.rs - pipeline_cache (line 13) ... ok
[INFO] [stdout] test src/async_compute.rs - async_compute (line 11) ... ok
[INFO] [stdout] test src/sampler.rs - sampler::SamplerCache (line 152) ... ok
[INFO] [stdout] test src/gpu_cpu_verify.rs - gpu_cpu_verify (line 18) ... ok
[INFO] [stdout] test src/readback.rs - readback (line 10) ... ok
[INFO] [stdout] test src/vertex_buffer.rs - vertex_buffer::VertexBuffer (line 154) ... ok
[INFO] [stdout] test src/scale_kernel.rs - scale_kernel (line 17) ... ok
[INFO] [stdout] test src/texture_atlas.rs - texture_atlas (line 17) ... ok
[INFO] [stdout] test src/texture_atlas.rs - texture_atlas::TextureAtlasPacker (line 327) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.32s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "543466595c69b83720f8af50dd7fdb59530cceac1b3d58766efac8511fb2efd4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "543466595c69b83720f8af50dd7fdb59530cceac1b3d58766efac8511fb2efd4", kill_on_drop: false }`
[INFO] [stdout] 543466595c69b83720f8af50dd7fdb59530cceac1b3d58766efac8511fb2efd4
