[INFO] fetching crate presentar-core 0.3.4... [INFO] testing presentar-core-0.3.4 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate presentar-core 0.3.4 into /workspace/builds/worker-7-tc1/source [INFO] started tweaking crates.io crate presentar-core 0.3.4 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate presentar-core 0.3.4 [INFO] tweaked toml for crates.io crate presentar-core 0.3.4 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate presentar-core 0.3.4 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate presentar-core 0.3.4 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded hostname v0.4.2 [INFO] [stderr] Downloaded trueno v0.14.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] aeca586a0d2a9c8faf59029f45b05d1bd06696b35b7b4e69d898993fe087f330 [INFO] running `Command { std: "docker" "start" "-a" "aeca586a0d2a9c8faf59029f45b05d1bd06696b35b7b4e69d898993fe087f330", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "aeca586a0d2a9c8faf59029f45b05d1bd06696b35b7b4e69d898993fe087f330", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aeca586a0d2a9c8faf59029f45b05d1bd06696b35b7b4e69d898993fe087f330", kill_on_drop: false }` [INFO] [stdout] aeca586a0d2a9c8faf59029f45b05d1bd06696b35b7b4e69d898993fe087f330 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cfdc39484b3bfaf11936168f6b63374a76b682abdeb747f73b1e4fd59f2a06ac [INFO] running `Command { std: "docker" "start" "-a" "cfdc39484b3bfaf11936168f6b63374a76b682abdeb747f73b1e4fd59f2a06ac", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling zmij v1.0.19 [INFO] [stderr] Compiling anyhow v1.0.101 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling num_cpus v1.17.0 [INFO] [stderr] Compiling hostname v0.4.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling trueno v0.14.4 [INFO] [stderr] Compiling presentar-core v0.3.4 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.50s [INFO] running `Command { std: "docker" "inspect" "cfdc39484b3bfaf11936168f6b63374a76b682abdeb747f73b1e4fd59f2a06ac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cfdc39484b3bfaf11936168f6b63374a76b682abdeb747f73b1e4fd59f2a06ac", kill_on_drop: false }` [INFO] [stdout] cfdc39484b3bfaf11936168f6b63374a76b682abdeb747f73b1e4fd59f2a06ac [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b471deaf3b9fae6e155c66be4fe49203b2e4cef5d8a8b250806b7c2c291e7034 [INFO] running `Command { std: "docker" "start" "-a" "b471deaf3b9fae6e155c66be4fe49203b2e4cef5d8a8b250806b7c2c291e7034", kill_on_drop: false }` [INFO] [stderr] Compiling zerocopy v0.8.39 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling regex-syntax v0.8.9 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling clap_lex v0.7.7 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling clap_builder v4.5.57 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling clap v4.5.57 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerocopy-derive v0.8.39 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling proptest v1.10.0 [INFO] [stderr] Compiling trueno v0.14.4 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling presentar-core v0.3.4 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 46.74s [INFO] running `Command { std: "docker" "inspect" "b471deaf3b9fae6e155c66be4fe49203b2e4cef5d8a8b250806b7c2c291e7034", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b471deaf3b9fae6e155c66be4fe49203b2e4cef5d8a8b250806b7c2c291e7034", kill_on_drop: false }` [INFO] [stdout] b471deaf3b9fae6e155c66be4fe49203b2e4cef5d8a8b250806b7c2c291e7034 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 484351a3318dcb276ee9ce5be8fdb6610e5e81788ab12089421690ad51ac1049 [INFO] running `Command { std: "docker" "start" "-a" "484351a3318dcb276ee9ce5be8fdb6610e5e81788ab12089421690ad51ac1049", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/presentar_core-4a7940a4ca915490) [INFO] [stdout] [INFO] [stdout] running 1595 tests [INFO] [stdout] test accessibility::tests::test_accessible_node_contains_point ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_button ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_checkbox ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_id ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_slider ... ok [INFO] [stdout] test accessibility::tests::test_builder_basic ... ok [INFO] [stdout] test accessibility::tests::test_builder_with_children ... ok [INFO] [stdout] test accessibility::tests::test_hit_test_all ... ok [INFO] [stdout] test accessibility::tests::test_hit_test_focusable ... ok [INFO] [stdout] test accessibility::tests::test_hit_test_role ... ok [INFO] [stdout] test accessibility::tests::test_hit_tester_new ... ok [INFO] [stdout] test accessibility::tests::test_hit_test_single_node ... ok [INFO] [stdout] test accessibility::tests::test_live_region_default ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_heading ... ok [INFO] [stdout] test accessibility::tests::test_checked_state_equality ... ok [INFO] [stdout] test accessibility::tests::test_tree_clear ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_heading_level_clamp ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_id_default ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_text_input ... ok [INFO] [stdout] test accessibility::tests::test_tree_focus ... ok [INFO] [stdout] test accessibility::tests::test_tree_focus_next ... ok [INFO] [stdout] test accessibility::tests::test_tree_focus_previous ... ok [INFO] [stdout] test accessibility::tests::test_tree_insert_and_get ... ok [INFO] [stdout] test accessibility::tests::test_tree_new ... ok [INFO] [stdout] test accessibility::tests::test_tree_focus_non_focusable ... ok [INFO] [stdout] test accessibility::tests::test_builder_configure ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_new ... ok [INFO] [stdout] test accessibility::tests::test_hit_test_nested_nodes ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_builder_pattern ... ok [INFO] [stdout] test accessibility::tests::test_accessible_node_invisible_not_contains ... ok [INFO] [stdout] test accessibility::tests::test_tree_clear_focus ... ok [INFO] [stdout] test accessibility::tests::test_tree_remove ... ok [INFO] [stdout] test animation::tests::test_anim_color_clone ... ok [INFO] [stdout] test animation::tests::test_anim_color_constants ... ok [INFO] [stdout] test animation::tests::test_anim_color_interpolate_alpha ... ok [INFO] [stdout] test animation::tests::test_anim_color_debug ... ok [INFO] [stdout] test animation::tests::test_anim_color_new ... ok [INFO] [stdout] test animation::tests::test_animated_value_spring ... ok [INFO] [stdout] test animation::tests::test_animated_value_spring_complete ... ok [INFO] [stdout] test animation::tests::test_animated_value_update_eased ... ok [INFO] [stdout] test animation::tests::test_animated_value_update_spring ... ok [INFO] [stdout] test animation::tests::test_controller_active_count ... ok [INFO] [stdout] test animation::tests::test_controller_add_eased ... ok [INFO] [stdout] test animation::tests::test_controller_add_spring ... ok [INFO] [stdout] test animation::tests::test_controller_clear ... ok [INFO] [stdout] test animation::tests::test_controller_eased_completes ... ok [INFO] [stdout] test animation::tests::test_controller_get_nonexistent ... ok [INFO] [stdout] test animation::tests::test_animated_value_eased ... ok [INFO] [stdout] test animation::tests::test_controller_debug ... ok [INFO] [stdout] test animation::tests::test_controller_mixed_animations ... ok [INFO] [stdout] test animation::tests::test_controller_new ... ok [INFO] [stdout] test animation::tests::test_controller_default ... ok [INFO] [stdout] test animation::tests::test_controller_remove ... ok [INFO] [stdout] test animation::tests::test_controller_set_target ... ok [INFO] [stdout] test animation::tests::test_controller_set_target_nonexistent ... ok [INFO] [stdout] test animation::tests::test_eased_value_clone ... ok [INFO] [stdout] test animation::tests::test_eased_value_debug ... ok [INFO] [stdout] test animation::tests::test_eased_value_linear_interpolation ... ok [INFO] [stdout] test animation::tests::test_eased_value_negative_update ... ok [INFO] [stdout] test animation::tests::test_controller_update ... ok [INFO] [stdout] test animation::tests::test_eased_value_new ... ok [INFO] [stdout] test animation::tests::test_eased_value_progress ... ok [INFO] [stdout] test animation::tests::test_eased_value_progress_zero_duration ... ok [INFO] [stdout] test animation::tests::test_eased_value_update ... ok [INFO] [stdout] test animation::tests::test_eased_value_with_easing ... ok [INFO] [stdout] test animation::tests::test_eased_value_zero_duration ... ok [INFO] [stdout] test animation::tests::test_easing_all_variants_at_one ... ok [INFO] [stdout] test animation::tests::test_easing_back ... ok [INFO] [stdout] test animation::tests::test_easing_back_out_overshoots ... ok [INFO] [stdout] test animation::tests::test_easing_all_variants_at_zero ... ok [INFO] [stdout] test animation::tests::test_easing_bounce ... ok [INFO] [stdout] test animation::tests::test_easing_bounce_out_segments ... ok [INFO] [stdout] test animation::tests::test_easing_clamps_input ... ok [INFO] [stdout] test animation::tests::test_easing_elastic ... ok [INFO] [stdout] test animation::tests::test_easing_clone ... ok [INFO] [stdout] test animation::tests::test_easing_cubic ... ok [INFO] [stdout] test animation::tests::test_easing_cubic_in_out_midpoint ... ok [INFO] [stdout] test animation::tests::test_easing_elastic_out_zero ... ok [INFO] [stdout] test animation::tests::test_easing_debug ... ok [INFO] [stdout] test animation::tests::test_easing_default ... ok [INFO] [stdout] test animation::tests::test_easing_ease_in ... ok [INFO] [stdout] test animation::tests::test_easing_ease_in_out ... ok [INFO] [stdout] test animation::tests::test_easing_ease_out ... ok [INFO] [stdout] test animation::tests::test_easing_expo ... ok [INFO] [stdout] test animation::tests::test_easing_expo_in_zero ... ok [INFO] [stdout] test animation::tests::test_easing_expo_out_one ... ok [INFO] [stdout] test animation::tests::test_eased_value_complete ... ok [INFO] [stdout] test animation::tests::test_easing_linear ... ok [INFO] [stdout] test animation::tests::test_interpolate_color ... ok [INFO] [stdout] test animation::tests::test_interpolate_color_boundaries ... ok [INFO] [stdout] test animation::tests::test_interpolate_f32 ... ok [INFO] [stdout] test animation::tests::test_interpolate_f32_negative ... ok [INFO] [stdout] test animation::tests::test_interpolate_f64 ... ok [INFO] [stdout] test animation::tests::test_interpolate_f64_boundaries ... ok [INFO] [stdout] test animation::tests::test_interpolate_point ... ok [INFO] [stdout] test animation::tests::test_interpolate_point_negative ... ok [INFO] [stdout] test animation::tests::test_keyframe_clamps_negative_time ... ok [INFO] [stdout] test animation::tests::test_keyframe_clamps_time ... ok [INFO] [stdout] test animation::tests::test_keyframe_clone ... ok [INFO] [stdout] test animation::tests::test_keyframe_debug ... ok [INFO] [stdout] test animation::tests::test_keyframe_new ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_clone ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_interpolation ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_is_complete ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_keyframe_sorting ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_looping ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_looping_never_complete ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_debug ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_looping_wrap ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_multiple_keyframes ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_non_looping_clamps ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_single_keyframe ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_zero_duration ... ok [INFO] [stdout] test animation::tests::test_keyframe_with_easing ... ok [INFO] [stdout] test animation::tests::test_spring_clone ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_new ... ok [INFO] [stdout] test animation::tests::test_keyframe_track_reset ... ok [INFO] [stdout] test animation::tests::test_spring_config_all_presets_valid ... ok [INFO] [stdout] test animation::tests::test_spring_config_clone ... ok [INFO] [stdout] test animation::tests::test_spring_config_critically_damped ... ok [INFO] [stdout] test animation::tests::test_spring_config_custom ... ok [INFO] [stdout] test animation::tests::test_spring_config_damping_ratio ... ok [INFO] [stdout] test animation::tests::test_spring_config_damping_types ... ok [INFO] [stdout] test animation::tests::test_spring_config_debug ... ok [INFO] [stdout] test animation::tests::test_spring_config_default ... ok [INFO] [stdout] test animation::tests::test_spring_config_molasses ... ok [INFO] [stdout] test animation::tests::test_spring_config_presets ... ok [INFO] [stdout] test animation::tests::test_spring_converges ... ok [INFO] [stdout] test animation::tests::test_spring_debug ... ok [INFO] [stdout] test animation::tests::test_spring_negative_values ... ok [INFO] [stdout] test animation::tests::test_spring_new ... ok [INFO] [stdout] test animation::tests::test_spring_no_update_when_at_rest ... ok [INFO] [stdout] test animation::tests::test_spring_precision_threshold ... ok [INFO] [stdout] test animation::tests::test_spring_set_immediate ... ok [INFO] [stdout] test animation::tests::test_spring_set_target ... ok [INFO] [stdout] test animation::tests::test_spring_set_target_same_value ... ok [INFO] [stdout] test animation::tests::test_spring_update ... ok [INFO] [stdout] test animation::tests::test_spring_update_small_dt ... ok [INFO] [stdout] test animation::tests::test_spring_with_config ... ok [INFO] [stdout] test binding::tests::test_action_binding_batch ... ok [INFO] [stdout] test binding::tests::test_action_binding_clone ... ok [INFO] [stdout] test binding::tests::test_action_binding_debug ... ok [INFO] [stdout] test binding::tests::test_action_binding_dispatch ... ok [INFO] [stdout] test binding::tests::test_action_binding_dispatch_with ... ok [INFO] [stdout] test binding::tests::test_action_binding_empty_batch ... ok [INFO] [stdout] test binding::tests::test_action_binding_increment ... ok [INFO] [stdout] test binding::tests::test_action_binding_increment_by ... ok [INFO] [stdout] test binding::tests::test_action_binding_serialize ... ok [INFO] [stdout] test binding::tests::test_action_binding_set ... ok [INFO] [stdout] test binding::tests::test_active_binding_clone ... ok [INFO] [stdout] test binding::tests::test_active_binding_debug ... ok [INFO] [stdout] test binding::tests::test_binding_config_chained_builders ... ok [INFO] [stdout] test binding::tests::test_binding_config_clone ... ok [INFO] [stdout] test binding::tests::test_action_binding_navigate ... ok [INFO] [stdout] test binding::tests::test_action_binding_toggle ... ok [INFO] [stdout] test binding::tests::test_binding_config_debug ... ok [INFO] [stdout] test binding::tests::test_binding_config_fallback ... ok [INFO] [stdout] test binding::tests::test_binding_config_one_way ... ok [INFO] [stdout] test binding::tests::test_binding_config_transform ... ok [INFO] [stdout] test binding::tests::test_binding_direction_all_variants ... ok [INFO] [stdout] test binding::tests::test_binding_direction_clone ... ok [INFO] [stdout] test binding::tests::test_binding_config_two_way ... ok [INFO] [stdout] test binding::tests::test_binding_direction_default ... ok [INFO] [stdout] test binding::tests::test_binding_expression_clone ... ok [INFO] [stdout] test binding::tests::test_binding_expression_debug ... ok [INFO] [stdout] test binding::tests::test_binding_expression_multiple_deps ... ok [INFO] [stdout] test binding::tests::test_binding_direction_debug ... ok [INFO] [stdout] test binding::tests::test_binding_expression_complex ... ok [INFO] [stdout] test binding::tests::test_binding_expression_new ... ok [INFO] [stdout] test binding::tests::test_binding_expression_no_deps ... ok [INFO] [stdout] test binding::tests::test_binding_expression_not_simple ... ok [INFO] [stdout] test binding::tests::test_binding_expression_serialize ... ok [INFO] [stdout] test binding::tests::test_binding_expression_with_transform ... ok [INFO] [stdout] test binding::tests::test_binding_manager_debug ... ok [INFO] [stdout] test binding::tests::test_binding_manager_default ... ok [INFO] [stdout] test binding::tests::test_binding_manager_inactive_not_counted ... ok [INFO] [stdout] test binding::tests::test_binding_manager_on_state_change ... ok [INFO] [stdout] test binding::tests::test_binding_manager_on_state_change_inactive ... ok [INFO] [stdout] test binding::tests::test_binding_manager_on_widget_change_two_way ... ok [INFO] [stdout] test binding::tests::test_binding_manager_on_widget_change_one_way_no_propagate ... ok [INFO] [stdout] test binding::tests::test_binding_manager_unregister ... ok [INFO] [stdout] test binding::tests::test_binding_manager_queue_and_flush ... ok [INFO] [stdout] test binding::tests::test_binding_manager_queue_widget_update ... ok [INFO] [stdout] test binding::tests::test_binding_manager_bindings_for_widget ... ok [INFO] [stdout] test binding::tests::test_binding_manager_bindings_for_widget_empty ... ok [INFO] [stdout] test binding::tests::test_binding_manager_multiple_registers ... ok [INFO] [stdout] test binding::tests::test_binding_manager_unregister_nonexistent ... ok [INFO] [stdout] test binding::tests::test_binding_expression_property ... ok [INFO] [stdout] test binding::tests::test_bool_to_string_converter_custom ... ok [INFO] [stdout] test binding::tests::test_bool_to_string_converter_error ... ok [INFO] [stdout] test binding::tests::test_computed_caches ... ok [INFO] [stdout] test binding::tests::test_binding_id_default ... ok [INFO] [stdout] test binding::tests::test_binding_manager_register ... ok [INFO] [stdout] test binding::tests::test_binding_manager_new ... ok [INFO] [stdout] test binding::tests::test_binding_manager_bindings_for_path ... ok [INFO] [stdout] test binding::tests::test_binding_manager_bindings_for_path_empty ... ok [INFO] [stdout] test binding::tests::test_computed_invalidate_recomputes ... ok [INFO] [stdout] test binding::tests::test_binding_manager_clear ... ok [INFO] [stdout] test binding::tests::test_binding_manager_on_state_change_nested_path ... ok [INFO] [stdout] test binding::tests::test_bool_converter_debug ... ok [INFO] [stdout] test binding::tests::test_bool_converter_default ... ok [INFO] [stdout] test binding::tests::test_bool_to_string_converter ... ok [INFO] [stdout] test binding::tests::test_bool_converter_yes_no ... ok [INFO] [stdout] test binding::tests::test_computed_debug ... ok [INFO] [stdout] test binding::tests::test_computed_invalidate ... ok [INFO] [stdout] test binding::tests::test_computed_with_closure_capture ... ok [INFO] [stdout] test binding::tests::test_conversion_error_clone ... ok [INFO] [stdout] test binding::tests::test_conversion_error_display ... ok [INFO] [stdout] test binding::tests::test_conversion_error_debug ... ok [INFO] [stdout] test binding::tests::test_bool_converter_convert_back_error ... ok [INFO] [stdout] test binding::tests::test_event_binding_debug ... ok [INFO] [stdout] test binding::tests::test_binding_manager_with_debounce ... ok [INFO] [stdout] test binding::tests::test_computed_new ... ok [INFO] [stdout] test binding::tests::test_event_binding_clone ... ok [INFO] [stdout] test binding::tests::test_event_binding_new ... ok [INFO] [stdout] test binding::tests::test_identity_converter_default ... ok [INFO] [stdout] test binding::tests::test_identity_converter ... ok [INFO] [stdout] test binding::tests::test_event_binding_serialize ... ok [INFO] [stdout] test binding::tests::test_number_format_convert_back_error ... ok [INFO] [stdout] test binding::tests::test_number_format_converter_error ... ok [INFO] [stdout] test binding::tests::test_number_format_debug ... ok [INFO] [stdout] test binding::tests::test_identity_converter_debug ... ok [INFO] [stdout] test binding::tests::test_number_format_converter_with_prefix_suffix ... ok [INFO] [stdout] test binding::tests::test_number_format_default ... ok [INFO] [stdout] test binding::tests::test_event_binding_on_change ... ok [INFO] [stdout] test binding::tests::test_event_binding_on_click ... ok [INFO] [stdout] test binding::tests::test_number_format_converter ... ok [INFO] [stdout] test binding::tests::test_number_format_negative ... ok [INFO] [stdout] test binding::tests::test_number_format_strip_partial ... ok [INFO] [stdout] test binding::tests::test_pending_update_clone ... ok [INFO] [stdout] test binding::tests::test_pending_update_debug ... ok [INFO] [stdout] test binding::tests::test_property_path_display ... ok [INFO] [stdout] test binding::tests::test_property_path_clone ... ok [INFO] [stdout] test binding::tests::test_property_path_empty_string ... ok [INFO] [stdout] test binding::tests::test_property_path_from_str ... ok [INFO] [stdout] test binding::tests::test_property_path_leaf ... ok [INFO] [stdout] test binding::tests::test_property_path_debug ... ok [INFO] [stdout] test binding::tests::test_property_path_leading_dots ... ok [INFO] [stdout] test binding::tests::test_property_path_multiple_dots ... ok [INFO] [stdout] test binding::tests::test_property_path_new ... ok [INFO] [stdout] test binding::tests::test_property_path_parent_of_root ... ok [INFO] [stdout] test binding::tests::test_property_path_parent ... ok [INFO] [stdout] test binding::tests::test_property_path_root ... ok [INFO] [stdout] test binding::tests::test_property_path_serialize ... ok [INFO] [stdout] test binding::tests::test_property_path_single_segment ... ok [INFO] [stdout] test binding::tests::test_property_path_trailing_dots ... ok [INFO] [stdout] test binding::tests::test_property_path_hash ... ok [INFO] [stdout] test binding::tests::test_property_path_join ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_clone ... ok [INFO] [stdout] test binding::tests::test_property_path_deserialize ... ok [INFO] [stdout] test binding::tests::test_property_path_len ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_debug ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_default ... ok [INFO] [stdout] test binding::tests::test_property_path_leaf_of_root ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_multiple_subscribers ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_new ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_set ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_string ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_subscribe ... ok [INFO] [stdout] test binding::tests::test_reactive_cell_update ... ok [INFO] [stdout] test binding::tests::test_state_update_struct ... ok [INFO] [stdout] test binding::tests::test_update_source_eq ... ok [INFO] [stdout] test binding::tests::test_widget_update_struct ... ok [INFO] [stdout] test brick_types::tests::test_brick_assertion_contrast_ratio ... ok [INFO] [stdout] test brick_types::tests::test_brick_assertion_element_present ... ok [INFO] [stdout] test brick_types::tests::test_brick_assertion_max_latency ... ok [INFO] [stdout] test brick_types::tests::test_brick_assertion_text_visible ... ok [INFO] [stdout] test brick_types::tests::test_brick_budget_default ... ok [INFO] [stdout] test brick_types::tests::test_brick_budget_uniform ... ok [INFO] [stdout] test brick_types::tests::test_brick_error_budget_exceeded ... ok [INFO] [stdout] test brick_types::tests::test_brick_budget_as_duration ... ok [INFO] [stdout] test brick_types::tests::test_brick_error_display ... ok [INFO] [stdout] test brick_types::tests::test_brick_phase_variants ... ok [INFO] [stdout] test brick_types::tests::test_brick_verification_invalid ... ok [INFO] [stdout] test brick_types::tests::test_brick_verification_valid ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick_assertions_empty ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick_budget ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick_to_css ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick_copy ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick_to_html ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_can_render ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_clone ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_debug ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_to_css ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_new ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_to_html ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_with_assertion ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_with_budget ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_with_custom_verify_fail ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_with_custom_verify_pass ... ok [INFO] [stdout] test brick_widget::tests::test_verify_for_render ... ok [INFO] [stdout] test brick_widget::tests::test_verify_for_render_with_custom_fail ... ok [INFO] [stdout] test cache::tests::test_cache_access_count_increments ... ok [INFO] [stdout] test cache::tests::test_cache_builder ... ok [INFO] [stdout] test cache::tests::test_cache_builder_default_options ... ok [INFO] [stdout] test cache::tests::test_cache_builder_chaining ... ok [INFO] [stdout] test cache::tests::test_cache_builder_with_cache ... ok [INFO] [stdout] test cache::tests::test_cache_config_clone ... ok [INFO] [stdout] test cache::tests::test_cache_cleanup_triggered_by_tick ... ok [INFO] [stdout] test cache::tests::test_cache_contains ... ok [INFO] [stdout] test brick_types::tests::test_brick_error_is_error ... ok [INFO] [stdout] test cache::tests::test_cache_config_default ... ok [INFO] [stdout] test cache::tests::test_cache_config_custom ... ok [INFO] [stdout] test brick_types::tests::test_brick_verification_empty ... ok [INFO] [stdout] test brick_widget::tests::test_simple_brick_verify ... ok [INFO] [stdout] test cache::tests::test_cache_clear_empty ... ok [INFO] [stdout] test cache::tests::test_cache_contains_expired_entry ... ok [INFO] [stdout] test cache::tests::test_cache_default ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick ... ok [INFO] [stdout] test brick_widget::tests::test_default_brick_verify ... ok [INFO] [stdout] test cache::tests::test_cache_event_all_variants ... ok [INFO] [stdout] test cache::tests::test_cache_custom_ttl ... ok [INFO] [stdout] test cache::tests::test_cache_event_callback ... ok [INFO] [stdout] test cache::tests::test_cache_event_clone ... ok [INFO] [stdout] test cache::tests::test_cache_evict_all ... ok [INFO] [stdout] test cache::tests::test_cache_eviction_updates_stats ... ok [INFO] [stdout] test cache::tests::test_cache_expiration ... ok [INFO] [stdout] test cache::tests::test_cache_insert_get ... ok [INFO] [stdout] test cache::tests::test_cache_get_updates_lru_order ... ok [INFO] [stdout] test cache::tests::test_cache_get_with_state_miss ... ok [INFO] [stdout] test cache::tests::test_cache_key_clone ... ok [INFO] [stdout] test cache::tests::test_cache_integer_keys ... ok [INFO] [stdout] test cache::tests::test_cache_invalidate_nonexistent_tag ... ok [INFO] [stdout] test cache::tests::test_cache_key_debug ... ok [INFO] [stdout] test cache::tests::test_cache_get_with_state_fresh ... ok [INFO] [stdout] test cache::tests::test_cache_key_hash_distribution ... ok [INFO] [stdout] test cache::tests::test_cache_lru_order_updates_on_get ... ok [INFO] [stdout] test cache::tests::test_cache_invalidate_multiple_tags_same_entry ... ok [INFO] [stdout] test cache::tests::test_cache_key_from_str ... ok [INFO] [stdout] test cache::tests::test_cache_key_from_u64 ... ok [INFO] [stdout] test cache::tests::test_cache_key_empty_string ... ok [INFO] [stdout] test cache::tests::test_cache_memory_eviction_large_item ... ok [INFO] [stdout] test cache::tests::test_cache_lru_eviction ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_boundary_fresh ... ok [INFO] [stdout] test cache::tests::test_cache_key_long_string ... ok [INFO] [stdout] test cache::tests::test_cache_memory_accounting ... ok [INFO] [stdout] test cache::tests::test_cache_key_whitespace ... ok [INFO] [stdout] test cache::tests::test_cache_lru_disabled ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_created_in_future ... ok [INFO] [stdout] test cache::tests::test_cache_memory_limit ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_boundary_stale ... ok [INFO] [stdout] test cache::tests::test_cache_key_special_chars ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_clone ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_large_ttl ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_state ... ok [INFO] [stdout] test cache::tests::test_cache_builder_multiple_tags ... ok [INFO] [stdout] test cache::tests::test_cache_key_unicode ... ok [INFO] [stdout] test cache::tests::test_cache_clear ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_with_tags ... ok [INFO] [stdout] test cache::tests::test_cache_key_from_str_trait ... ok [INFO] [stdout] test cache::tests::test_cache_miss ... ok [INFO] [stdout] test cache::tests::test_cache_multiple_listeners ... ok [INFO] [stdout] test cache::tests::test_cache_multiple_removes ... ok [INFO] [stdout] test cache::tests::test_cache_options_clone ... ok [INFO] [stdout] test cache::tests::test_cache_options_max_priority ... ok [INFO] [stdout] test cache::tests::test_cache_remove ... ok [INFO] [stdout] test cache::tests::test_cache_replace_updates_memory ... ok [INFO] [stdout] test cache::tests::test_cache_remove_nonexistent ... ok [INFO] [stdout] test cache::tests::test_cache_options_multiple_tags ... ok [INFO] [stdout] test cache::tests::test_cache_size_box ... ok [INFO] [stdout] test cache::tests::test_cache_options_default ... ok [INFO] [stdout] test cache::tests::test_cache_size_empty_string ... ok [INFO] [stdout] test cache::tests::test_cache_options_builder ... ok [INFO] [stdout] test cache::tests::test_cache_size_f32 ... ok [INFO] [stdout] test cache::tests::test_cache_size_empty_vec ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_zero_stale ... ok [INFO] [stdout] test cache::tests::test_cache_same_key_multiple_times ... ok [INFO] [stdout] test cache::tests::test_cache_metadata_zero_ttl ... ok [INFO] [stdout] test cache::tests::test_cache_size_vec ... ok [INFO] [stdout] test cache::tests::test_cache_options_zero_duration ... ok [INFO] [stdout] test cache::tests::test_cache_size_i32 ... ok [INFO] [stdout] test cache::tests::test_cache_size_i64 ... ok [INFO] [stdout] test cache::tests::test_cache_size_unit ... ok [INFO] [stdout] test cache::tests::test_cache_state_variants ... ok [INFO] [stdout] test cache::tests::test_cache_stats ... ok [INFO] [stdout] test cache::tests::test_cache_stats_debug ... ok [INFO] [stdout] test cache::tests::test_cache_stats_hit_rate_all_hits ... ok [INFO] [stdout] test cache::tests::test_cache_stats_hit_rate_all_misses ... ok [INFO] [stdout] test cache::tests::test_cache_tags ... ok [INFO] [stdout] test cache::tests::test_cache_timestamp ... ok [INFO] [stdout] test cache::tests::test_cache_tick ... ok [INFO] [stdout] test cache::tests::test_cache_size_vec_of_structs ... ok [INFO] [stdout] test cache::tests::test_cache_stats_hit_rate_half ... ok [INFO] [stdout] test cache::tests::test_cache_update_entry ... ok [INFO] [stdout] test cache::tests::test_cache_with_custom_stale ... ok [INFO] [stdout] test cache::tests::test_cache_stats_clone ... ok [INFO] [stdout] test cache::tests::test_cache_state_clone ... ok [INFO] [stdout] test cache::tests::test_cache_state_debug ... ok [INFO] [stdout] test cache::tests::test_cache_rapid_insert_remove ... ok [INFO] [stdout] test cache::tests::test_cache_size_f64 ... ok [INFO] [stdout] test cache::tests::test_cache_size_string ... ok [INFO] [stdout] test cache::tests::test_cache_stale_while_revalidate ... ok [INFO] [stdout] test cache::tests::test_cache_tick_large_values ... ok [INFO] [stdout] test cache::tests::test_cache_stats_current_entries ... ok [INFO] [stdout] test cache::tests::test_string_cache_type_alias ... ok [INFO] [stdout] test canvas::tests::test_canvas_draw_path ... ok [INFO] [stdout] test canvas::tests::test_canvas_fill_arc ... ok [INFO] [stdout] test canvas::tests::test_canvas_draw_line ... ok [INFO] [stdout] test canvas::tests::test_canvas_fill_circle ... ok [INFO] [stdout] test canvas::tests::test_canvas_fill_polygon ... ok [INFO] [stdout] test canvas::tests::test_clear ... ok [INFO] [stdout] test canvas::tests::test_canvas_stroke_circle ... ok [INFO] [stdout] test canvas::tests::test_draw_line ... ok [INFO] [stdout] test cache::tests::test_cache_tick_zero ... ok [INFO] [stdout] test canvas::tests::test_draw_text ... ok [INFO] [stdout] test canvas::tests::test_draw_path ... ok [INFO] [stdout] test canvas::tests::test_add_command ... ok [INFO] [stdout] test canvas::tests::test_empty_text ... ok [INFO] [stdout] test canvas::tests::test_fill_rect ... ok [INFO] [stdout] test canvas::tests::test_pop_empty_clip_stack ... ok [INFO] [stdout] test canvas::tests::test_pop_empty_transform_stack ... ok [INFO] [stdout] test canvas::tests::test_fill_circle ... ok [INFO] [stdout] test canvas::tests::test_push_pop_clip ... ok [INFO] [stdout] test canvas::tests::test_multiple_commands_order ... ok [INFO] [stdout] test canvas::tests::test_fill_rounded_rect ... ok [INFO] [stdout] test canvas::tests::test_recording_canvas_new ... ok [INFO] [stdout] test canvas::tests::test_push_pop_transform ... ok [INFO] [stdout] test canvas::tests::test_recording_canvas_default ... ok [INFO] [stdout] test canvas::tests::test_zero_size_rect ... ok [INFO] [stdout] test chart::tests::test_arc_circle ... ok [INFO] [stdout] test chart::tests::test_arc_contains_angle ... ok [INFO] [stdout] test chart::tests::test_arc_contains_angle_wrap ... ok [INFO] [stdout] test chart::tests::test_arc_large_angles ... ok [INFO] [stdout] test chart::tests::test_arc_mid_point ... ok [INFO] [stdout] test chart::tests::test_arc_negative_angles ... ok [INFO] [stdout] test canvas::tests::test_zero_radius_circle ... ok [INFO] [stdout] test chart::tests::test_arc_new ... ok [INFO] [stdout] test chart::tests::test_arc_sweep ... ok [INFO] [stdout] test chart::tests::test_arc_start_end_points ... ok [INFO] [stdout] test canvas::tests::test_stroke_rect ... ok [INFO] [stdout] test chart::tests::test_arc_to_polyline ... ok [INFO] [stdout] test chart::tests::test_arc_point_at_angle ... ok [INFO] [stdout] test chart::tests::test_arc_pie_slice_segments ... ok [INFO] [stdout] test brick_types::tests::test_brick_budget_custom ... ok [INFO] [stdout] test cache::tests::test_stats_hit_rate_empty ... ok [INFO] [stdout] test chart::tests::test_arc_to_pie_slice ... ok [INFO] [stdout] test chart::tests::test_arc_length ... ok [INFO] [stdout] test chart::tests::test_arc_zero_radius ... ok [INFO] [stdout] test chart::tests::test_batch_add_circle ... ok [INFO] [stdout] test chart::tests::test_batch_add_line ... ok [INFO] [stdout] test chart::tests::test_batch_clear ... ok [INFO] [stdout] test chart::tests::test_batch_clone ... ok [INFO] [stdout] test chart::tests::test_batch_debug ... ok [INFO] [stdout] test chart::tests::test_batch_only_circles ... ok [INFO] [stdout] test chart::tests::test_batch_draw_call_counts ... ok [INFO] [stdout] test chart::tests::test_batch_efficiency ... ok [INFO] [stdout] test chart::tests::test_batch_only_lines ... ok [INFO] [stdout] test chart::tests::test_batch_only_rects ... ok [INFO] [stdout] test chart::tests::test_bezier_arc_length_zero_segments ... ok [INFO] [stdout] test chart::tests::test_bezier_polyline_min_segments ... ok [INFO] [stdout] test chart::tests::test_bezier_split ... ok [INFO] [stdout] test chart::tests::test_bezier_endpoints ... ok [INFO] [stdout] test chart::tests::test_bezier_split_at_one ... ok [INFO] [stdout] test chart::tests::test_bezier_split_at_zero ... ok [INFO] [stdout] test chart::tests::test_bezier_arc_length ... ok [INFO] [stdout] test chart::tests::test_batch_add_rect ... ok [INFO] [stdout] test chart::tests::test_bezier_clamp_t ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_empty ... ok [INFO] [stdout] test chart::tests::test_batch_all_types ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_passes_through ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_points_getter ... ok [INFO] [stdout] test chart::tests::test_batch_default_trait ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_single ... ok [INFO] [stdout] test chart::tests::test_batch_new ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_tension_clamp ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_tension ... ok [INFO] [stdout] test chart::tests::test_bezier_to_polyline ... ok [INFO] [stdout] test chart::tests::test_bezier_midpoint ... ok [INFO] [stdout] test chart::tests::test_histogram_bin_center ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_to_path ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_to_path_single ... ok [INFO] [stdout] test chart::tests::test_histogram_edge_case_max_value ... ok [INFO] [stdout] test chart::tests::test_histogram_empty ... ok [INFO] [stdout] test chart::tests::test_histogram_bin_center_out_of_bounds ... ok [INFO] [stdout] test chart::tests::test_histogram_bin_range ... ok [INFO] [stdout] test chart::tests::test_histogram_bin_range_out_of_bounds ... ok [INFO] [stdout] test chart::tests::test_catmull_rom_to_path_two_points ... ok [INFO] [stdout] test chart::tests::test_histogram_all_same_value ... ok [INFO] [stdout] test chart::tests::test_histogram_max_count ... ok [INFO] [stdout] test chart::tests::test_histogram_uniform ... ok [INFO] [stdout] test chart::tests::test_linear_empty ... ok [INFO] [stdout] test chart::tests::test_linear_extrapolate_left ... ok [INFO] [stdout] test chart::tests::test_histogram_zero_bins ... ok [INFO] [stdout] test chart::tests::test_linear_from_xy ... ok [INFO] [stdout] test chart::tests::test_linear_extrapolate_right ... ok [INFO] [stdout] test chart::tests::test_linear_sample_single_point ... ok [INFO] [stdout] test chart::tests::test_linear_single_point ... ok [INFO] [stdout] test chart::tests::test_linear_sample_too_few ... ok [INFO] [stdout] test chart::tests::test_linear_two_points ... ok [INFO] [stdout] test chart::tests::test_linear_points_getter ... ok [INFO] [stdout] test chart::tests::test_normalizer_denormalize ... ok [INFO] [stdout] test chart::tests::test_normalizer_from_data ... ok [INFO] [stdout] test chart::tests::test_linear_sample ... ok [INFO] [stdout] test chart::tests::test_normalizer_new ... ok [INFO] [stdout] test chart::tests::test_normalizer_negative_range ... ok [INFO] [stdout] test chart::tests::test_normalizer_nice_bounds_small_range ... ok [INFO] [stdout] test chart::tests::test_normalizer_normalize ... ok [INFO] [stdout] test chart::tests::test_normalizer_normalize_all ... ok [INFO] [stdout] test chart::tests::test_histogram_negative_values ... ok [INFO] [stdout] test chart::tests::test_histogram_single_value ... ok [INFO] [stdout] test chart::tests::test_normalizer_roundtrip ... ok [INFO] [stdout] test chart::tests::test_linear_multiple_points ... ok [INFO] [stdout] test chart::tests::test_normalizer_nice_bounds_large_range ... ok [INFO] [stdout] test chart::tests::test_linear_vertical_segment ... ok [INFO] [stdout] test chart::tests::test_linear_unsorted_input ... ok [INFO] [stdout] test chart::tests::test_point2d_debug ... ok [INFO] [stdout] test chart::tests::test_point2d_default ... ok [INFO] [stdout] test chart::tests::test_point2d_lerp ... ok [INFO] [stdout] test chart::tests::test_normalizer_zero_range ... ok [INFO] [stdout] test chart::tests::test_point2d_distance_to_self ... ok [INFO] [stdout] test chart::tests::test_point2d_distance ... ok [INFO] [stdout] test chart::tests::test_point2d_add ... ok [INFO] [stdout] test chart::tests::test_point2d_clone ... ok [INFO] [stdout] test chart::tests::test_point2d_mul_zero ... ok [INFO] [stdout] test chart::tests::test_point2d_new ... ok [INFO] [stdout] test chart::tests::test_point2d_origin ... ok [INFO] [stdout] test chart::tests::test_point2d_sub ... ok [INFO] [stdout] test chart::tests::test_spline_from_xy ... ok [INFO] [stdout] test chart::tests::test_spline_identical_x ... ok [INFO] [stdout] test chart::tests::test_point2d_lerp_boundaries ... ok [INFO] [stdout] test chart::tests::test_point2d_mul_negative ... ok [INFO] [stdout] test chart::tests::test_spline_passes_through_points ... ok [INFO] [stdout] test chart::tests::test_spline_smooth ... ok [INFO] [stdout] test chart::tests::test_spline_two_points ... ok [INFO] [stdout] test chart::tests::test_tessellator_circle ... ok [INFO] [stdout] test chart::tests::test_point2d_mul ... ok [INFO] [stdout] test chart::tests::test_spline_single_point ... ok [INFO] [stdout] test chart::tests::test_spline_points_getter ... ok [INFO] [stdout] test chart::tests::test_spline_empty ... ok [INFO] [stdout] test chart::tests::test_normalizer_from_empty ... ok [INFO] [stdout] test chart::tests::test_normalizer_from_single_value ... ok [INFO] [stdout] test chart::tests::test_tessellator_clear ... ok [INFO] [stdout] test chart::tests::test_point2d_lerp_extrapolate ... ok [INFO] [stdout] test chart::tests::test_tessellator_circle_min_segments ... ok [INFO] [stdout] test chart::tests::test_tessellator_multiple_shapes ... ok [INFO] [stdout] test chart::tests::test_tessellator_polygon ... ok [INFO] [stdout] test chart::tests::test_tessellator_new ... ok [INFO] [stdout] test chart::tests::test_tessellator_polygon_too_small ... ok [INFO] [stdout] test chart::tests::test_tessellator_default_trait ... ok [INFO] [stdout] test chart::tests::test_tessellator_multi_segment_stroke ... ok [INFO] [stdout] test chart::tests::test_tessellator_rect ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_available_formats ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_data_clear ... ok [INFO] [stdout] test chart::tests::test_tessellator_stroke ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_data_formats ... ok [INFO] [stdout] test chart::tests::test_tessellator_stroke_too_short ... ok [INFO] [stdout] test chart::tests::test_tessellator_stroke_zero_length_segment ... ok [INFO] [stdout] test chart::tests::test_tessellator_default ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_data_html ... ok [INFO] [stdout] test chart::tests::test_tessellator_tolerance_minimum ... ok [INFO] [stdout] test chart::tests::test_tessellator_quad ... ok [INFO] [stdout] test chart::tests::test_spline_extrapolate ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_data_new ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_data_text ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_event_new ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_format_from_mime ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_read ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_format_mime_type ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_read_html ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_new ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_data_set_get ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_on_change ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_format_is_text ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_unavailable ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_format_is_image ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_read_text ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_result_is_error ... ok [INFO] [stdout] test clipboard::tests::test_history_can_navigate ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_write_html ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_result_is_success ... ok [INFO] [stdout] test clipboard::tests::test_history_clear ... ok [INFO] [stdout] test clipboard::tests::test_history_get ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_signal_paste ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_write_text ... ok [INFO] [stdout] test clipboard::tests::test_history_new ... ok [INFO] [stdout] test clipboard::tests::test_history_max_size ... ok [INFO] [stdout] test clipboard::tests::test_history_current ... ok [INFO] [stdout] test color::tests::test_color_contrast_ratio_black_white ... ok [INFO] [stdout] test color::tests::test_color_constants ... ok [INFO] [stdout] test color::tests::test_color_contrast_ratio_same_color ... ok [INFO] [stdout] test color::tests::test_color_default ... ok [INFO] [stdout] test clipboard::tests::test_history_previous_next ... ok [INFO] [stdout] test clipboard::tests::test_history_truncate_on_push ... ok [INFO] [stdout] test color::tests::test_color_from_hex_6_char ... ok [INFO] [stdout] test color::tests::test_color_from_hex_8_char ... ok [INFO] [stdout] test clipboard::tests::test_history_push ... ok [INFO] [stdout] test color::tests::test_color_from_hex_invalid_chars ... ok [INFO] [stdout] test color::tests::test_color_from_hex_invalid_length ... ok [INFO] [stdout] test color::tests::test_color_from_hex_no_hash ... ok [INFO] [stdout] test color::tests::test_color_lerp_clamps_t ... ok [INFO] [stdout] test color::tests::test_color_lerp_endpoints ... ok [INFO] [stdout] test color::tests::test_color_relative_luminance_black ... ok [INFO] [stdout] test color::tests::test_color_rgb ... ok [INFO] [stdout] test color::tests::test_color_relative_luminance_white ... ok [INFO] [stdout] test color::tests::test_color_new_clamps_values ... ok [INFO] [stdout] test color::tests::test_color_to_hex_with_alpha ... ok [INFO] [stdout] test color::tests::test_color_lerp_midpoint ... ok [INFO] [stdout] test constraints::tests::test_biggest_tight_constraints ... ok [INFO] [stdout] test color::tests::test_color_to_hex ... ok [INFO] [stdout] test constraints::tests::test_biggest_with_infinity_height_only ... ok [INFO] [stdout] test color::tests::test_color_parse_error_display ... ok [INFO] [stdout] test constraints::tests::test_biggest_with_infinity_width_only ... ok [INFO] [stdout] test constraints::tests::test_constrain_at_maximum ... ok [INFO] [stdout] test constraints::tests::test_constrain_negative_clamped ... ok [INFO] [stdout] test constraints::tests::test_constrain_with_zero_constraints ... ok [INFO] [stdout] test constraints::tests::test_constrain_zero_size ... ok [INFO] [stdout] test constraints::tests::test_constraints_biggest ... ok [INFO] [stdout] test constraints::tests::test_constraints_clone ... ok [INFO] [stdout] test constraints::tests::test_constraints_copy ... ok [INFO] [stdout] test constraints::tests::test_constraints_debug ... ok [INFO] [stdout] test constraints::tests::test_constraints_constrain ... ok [INFO] [stdout] test constraints::tests::test_constraints_default ... ok [INFO] [stdout] test constraints::tests::test_constrain_at_minimum ... ok [INFO] [stdout] test constraints::tests::test_constraints_deflate_to_zero ... ok [INFO] [stdout] test constraints::tests::test_constraints_deserialize ... ok [INFO] [stdout] test constraints::tests::test_constraints_inequality_max_height ... ok [INFO] [stdout] test constraints::tests::test_constraints_equality ... ok [INFO] [stdout] test constraints::tests::test_constraints_biggest_unbounded ... ok [INFO] [stdout] test constraints::tests::test_constraints_has_bounded_width ... ok [INFO] [stdout] test constraints::tests::test_constraints_inequality_max_width ... ok [INFO] [stdout] test constraints::tests::test_constraints_deflate ... ok [INFO] [stdout] test constraints::tests::test_constraints_inequality_min_width ... ok [INFO] [stdout] test constraints::tests::test_constraints_is_bounded ... ok [INFO] [stdout] test constraints::tests::test_constraints_loose ... ok [INFO] [stdout] test constraints::tests::test_constraints_roundtrip_serialization ... ok [INFO] [stdout] test constraints::tests::test_constraints_tight ... ok [INFO] [stdout] test constraints::tests::test_constraints_serialize ... ok [INFO] [stdout] test constraints::tests::test_default_is_unbounded ... ok [INFO] [stdout] test constraints::tests::test_default_not_bounded ... ok [INFO] [stdout] test constraints::tests::test_constraints_with_methods ... ok [INFO] [stdout] test constraints::tests::test_constraints_is_tight_false ... ok [INFO] [stdout] test constraints::tests::test_constraints_unbounded ... ok [INFO] [stdout] test constraints::tests::test_constraints_smallest ... ok [INFO] [stdout] test constraints::tests::test_deflate_asymmetric ... ok [INFO] [stdout] test constraints::tests::test_deflate_exact_match ... ok [INFO] [stdout] test constraints::tests::test_constraints_inequality_min_height ... ok [INFO] [stdout] test constraints::tests::test_deflate_negative_becomes_zero ... ok [INFO] [stdout] test constraints::tests::test_is_tight_height_only ... ok [INFO] [stdout] test constraints::tests::test_is_tight_width_only ... ok [INFO] [stdout] test constraints::tests::test_is_tight_zero_size ... ok [INFO] [stdout] test constraints::tests::test_smallest_loose ... ok [INFO] [stdout] test constraints::tests::test_smallest_unbounded ... ok [INFO] [stdout] test constraints::tests::test_smallest_tight ... ok [INFO] [stdout] test constraints::tests::test_tight_with_large_values ... ok [INFO] [stdout] test constraints::tests::test_with_methods_chained ... ok [INFO] [stdout] test diff::tests::test_diff_child_added ... ok [INFO] [stdout] test constraints::tests::test_has_bounded_height_only ... ok [INFO] [stdout] test constraints::tests::test_loose_with_zero ... ok [INFO] [stdout] test diff::tests::test_diff_child_removed ... ok [INFO] [stdout] test constraints::tests::test_new_with_zero_values ... ok [INFO] [stdout] test constraints::tests::test_has_bounded_width_only ... ok [INFO] [stdout] test constraints::tests::test_deflate_zero ... ok [INFO] [stdout] test diff::tests::test_diff_keyed_child_updated ... ok [INFO] [stdout] test diff::tests::test_diff_keyed_children_reordered ... ok [INFO] [stdout] test diff::tests::test_diff_deeply_nested ... ok [INFO] [stdout] test diff::tests::test_diff_multiple_children_mixed ... ok [INFO] [stdout] test diff::tests::test_diff_node_new ... ok [INFO] [stdout] test diff::tests::test_diff_empty_to_tree ... ok [INFO] [stdout] test diff::tests::test_diff_identical_trees ... ok [INFO] [stdout] test diff::tests::test_diff_nested_changes ... ok [INFO] [stdout] test diff::tests::test_diff_node_with_child ... ok [INFO] [stdout] test diff::tests::test_diff_op_debug ... ok [INFO] [stdout] test diff::tests::test_diff_props_changed ... ok [INFO] [stdout] test diff::tests::test_diff_result_push ... ok [INFO] [stdout] test diff::tests::test_diff_tree_to_empty ... ok [INFO] [stdout] test diff::tests::test_tree_differ_reuse ... ok [INFO] [stdout] test diff::tests::test_widget_key_index ... ok [INFO] [stdout] test dnd::tests::test_drag_data_html ... ok [INFO] [stdout] test diff::tests::test_diff_node_with_key ... ok [INFO] [stdout] test dnd::tests::test_drag_data_text ... ok [INFO] [stdout] test diff::tests::test_widget_key_string ... ok [INFO] [stdout] test diff::tests::test_diff_result_empty ... ok [INFO] [stdout] test constraints::tests::test_with_methods_preserve_other_values ... ok [INFO] [stdout] test dnd::tests::test_drag_data_type ... ok [INFO] [stdout] test dnd::tests::test_drag_data_with_format ... ok [INFO] [stdout] test dnd::tests::test_drag_data_with_payload ... ok [INFO] [stdout] test dnd::tests::test_drag_state_new ... ok [INFO] [stdout] test canvas::tests::test_empty_path ... ok [INFO] [stdout] test dnd::tests::test_drag_state_offset ... ok [INFO] [stdout] test dnd::tests::test_drop_effect_default ... ok [INFO] [stdout] test dnd::tests::test_drag_data_url ... ok [INFO] [stdout] test canvas::tests::test_take_commands ... ok [INFO] [stdout] test dnd::tests::test_drag_id ... ok [INFO] [stdout] test chart::tests::test_histogram_bin_width ... ok [INFO] [stdout] test dnd::tests::test_drag_phase ... ok [INFO] [stdout] test chart::tests::test_histogram_densities ... ok [INFO] [stdout] test dnd::tests::test_drag_state_is_active ... ok [INFO] [stdout] test chart::tests::test_normalizer_nice_bounds ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_clear ... ok [INFO] [stdout] test clipboard::tests::test_clipboard_cut ... ok [INFO] [stdout] test diff::tests::test_diff_type_changed ... ok [INFO] [stdout] test dnd::tests::test_drag_data_custom ... ok [INFO] [stdout] test dnd::tests::test_drop_target_accepts ... ok [INFO] [stdout] test dnd::tests::test_drop_target_disabled ... ok [INFO] [stdout] test dnd::tests::test_drop_target_accept_types ... ok [INFO] [stdout] test dnd::tests::test_drop_target_new ... ok [INFO] [stdout] test dnd::tests::test_drop_target_accepts_all_types ... ok [INFO] [stdout] test dnd::tests::test_manager_cancel ... ok [INFO] [stdout] test dnd::tests::test_manager_drop_success ... ok [INFO] [stdout] test dnd::tests::test_manager_register_target ... ok [INFO] [stdout] test dnd::tests::test_drop_target_contains_point ... ok [INFO] [stdout] test dnd::tests::test_manager_move_over_target ... ok [INFO] [stdout] test dnd::tests::test_manager_clear ... ok [INFO] [stdout] test dnd::tests::test_manager_drop_failure ... ok [INFO] [stdout] test dnd::tests::test_manager_start_drag ... ok [INFO] [stdout] test dnd::tests::test_manager_unregister_target ... ok [INFO] [stdout] test draw::tests::test_box_style_with_shadow ... ok [INFO] [stdout] test dnd::tests::test_manager_move_drag ... ok [INFO] [stdout] test dnd::tests::test_manager_update_target_bounds ... ok [INFO] [stdout] test dnd::tests::test_manager_target_at ... ok [INFO] [stdout] test dnd::tests::test_manager_new ... ok [INFO] [stdout] test draw::tests::test_box_style_fill ... ok [INFO] [stdout] test draw::tests::test_box_style_default ... ok [INFO] [stdout] test draw::tests::test_box_style_stroke ... ok [INFO] [stdout] test draw::tests::test_draw_command_filled_rect ... ok [INFO] [stdout] test dnd::tests::test_manager_preview_position ... ok [INFO] [stdout] test draw::tests::test_draw_command_image ... ok [INFO] [stdout] test draw::tests::test_draw_command_rounded_rect ... ok [INFO] [stdout] test draw::tests::test_draw_command_stroked_rect ... ok [INFO] [stdout] test draw::tests::test_draw_command_path ... ok [INFO] [stdout] test draw::tests::test_draw_command_with_clip ... ok [INFO] [stdout] test draw::tests::test_draw_command_with_opacity ... ok [INFO] [stdout] test draw::tests::test_draw_command_with_transform ... ok [INFO] [stdout] test draw::tests::test_fill_rule_default ... ok [INFO] [stdout] test draw::tests::test_line_cap_variants ... ok [INFO] [stdout] test draw::tests::test_line_join_variants ... ok [INFO] [stdout] test draw::tests::test_sampling_default ... ok [INFO] [stdout] test draw::tests::test_shadow_default ... ok [INFO] [stdout] test draw::tests::test_stroke_style_default ... ok [INFO] [stdout] test draw::tests::test_draw_command_line ... ok [INFO] [stdout] test draw::tests::test_transform_chain ... ok [INFO] [stdout] test draw::tests::test_draw_command_fill ... ok [INFO] [stdout] test draw::tests::test_draw_command_nested_group ... ok [INFO] [stdout] test draw::tests::test_draw_command_filled_circle ... ok [INFO] [stdout] test draw::tests::test_transform_identity ... ok [INFO] [stdout] test draw::tests::test_draw_command_text ... ok [INFO] [stdout] test draw::tests::test_transform_scale ... ok [INFO] [stdout] test draw::tests::test_transform_translate ... ok [INFO] [stdout] test draw::tests::test_transform_rotate_90 ... ok [INFO] [stdout] test event::tests::test_event_category_exclusivity ... ok [INFO] [stdout] test event::tests::test_event_position ... ok [INFO] [stdout] test event::tests::test_event_resize ... ok [INFO] [stdout] test event::tests::test_event_scroll ... ok [INFO] [stdout] test event::tests::test_gesture_long_press ... ok [INFO] [stdout] test event::tests::test_event_mouse_up_position ... ok [INFO] [stdout] test event::tests::test_gesture_pan ... ok [INFO] [stdout] test event::tests::test_gesture_events_serialization ... ok [INFO] [stdout] test event::tests::test_event_debug ... ok [INFO] [stdout] test event::tests::test_event_is_focus ... ok [INFO] [stdout] test event::tests::test_event_is_keyboard ... ok [INFO] [stdout] test event::tests::test_event_is_mouse ... ok [INFO] [stdout] test event::tests::test_event_key_up ... ok [INFO] [stdout] test event::tests::test_event_mouse_leave ... ok [INFO] [stdout] test event::tests::test_event_clone ... ok [INFO] [stdout] test event::tests::test_gesture_pinch ... ok [INFO] [stdout] test event::tests::test_all_event_serialization ... ok [INFO] [stdout] test event::tests::test_gesture_rotate ... ok [INFO] [stdout] test event::tests::test_gesture_state_hash ... ok [INFO] [stdout] test event::tests::test_gesture_state_default ... ok [INFO] [stdout] test event::tests::test_key_control_keys ... ok [INFO] [stdout] test event::tests::test_key_debug ... ok [INFO] [stdout] test event::tests::test_gesture_tap ... ok [INFO] [stdout] test event::tests::test_gesture_pan_no_position ... ok [INFO] [stdout] test event::tests::test_gesture_state_helpers ... ok [INFO] [stdout] test event::tests::test_key_equality ... ok [INFO] [stdout] test event::tests::test_key_arrow_keys ... ok [INFO] [stdout] test event::tests::test_key_hash ... ok [INFO] [stdout] test event::tests::test_key_letters ... ok [INFO] [stdout] test event::tests::test_key_modifiers ... ok [INFO] [stdout] test event::tests::test_key_numbers ... ok [INFO] [stdout] test event::tests::test_key_punctuation ... ok [INFO] [stdout] test event::tests::test_mouse_button_debug ... ok [INFO] [stdout] test event::tests::test_mouse_button_equality ... ok [INFO] [stdout] test event::tests::test_mouse_button_all_variants ... ok [INFO] [stdout] test event::tests::test_mouse_button_hash ... ok [INFO] [stdout] test event::tests::test_mouse_event_has_no_touch_or_pointer_id ... ok [INFO] [stdout] test event::tests::test_pointer_cancel ... ok [INFO] [stdout] test event::tests::test_pointer_id_creation ... ok [INFO] [stdout] test event::tests::test_pointer_id_hash ... ok [INFO] [stdout] test event::tests::test_pointer_events_serialization ... ok [INFO] [stdout] test event::tests::test_pointer_leave ... ok [INFO] [stdout] test event::tests::test_pointer_move ... ok [INFO] [stdout] test event::tests::test_pointer_up ... ok [INFO] [stdout] test event::tests::test_resize_event ... ok [INFO] [stdout] test event::tests::test_pointer_type_hash ... ok [INFO] [stdout] test event::tests::test_serialization_roundtrip ... ok [INFO] [stdout] test event::tests::test_scroll_event_deltas ... ok [INFO] [stdout] test event::tests::test_text_input_event ... ok [INFO] [stdout] test event::tests::test_touch_end ... ok [INFO] [stdout] test event::tests::test_touch_events_serialization ... ok [INFO] [stdout] test event::tests::test_touch_cancel ... ok [INFO] [stdout] test event::tests::test_touch_move ... ok [INFO] [stdout] test event::tests::test_touch_id_creation ... ok [INFO] [stdout] test event::tests::test_pointer_type_helpers ... ok [INFO] [stdout] test event::tests::test_touch_start ... ok [INFO] [stdout] test event::tests::test_pointer_down_with_mouse_button ... ok [INFO] [stdout] test event::tests::test_touch_id_hash ... ok [INFO] [stdout] test event::tests::test_pointer_enter ... ok [INFO] [stdout] test geometry::tests::test_corner_radius_is_zero ... ok [INFO] [stdout] test geometry::tests::test_point_lerp ... ok [INFO] [stdout] test geometry::tests::test_corner_radius_is_uniform ... ok [INFO] [stdout] test geometry::tests::test_point_new ... ok [INFO] [stdout] test geometry::tests::test_rect_center ... ok [INFO] [stdout] test event::tests::test_key_function_keys ... ok [INFO] [stdout] test geometry::tests::test_point_add ... ok [INFO] [stdout] test geometry::tests::test_point_sub ... ok [INFO] [stdout] test event::tests::test_pointer_down ... ok [INFO] [stdout] test geometry::tests::test_rect_contains_point ... ok [INFO] [stdout] test geometry::tests::test_rect_corners ... ok [INFO] [stdout] test event::tests::test_pointer_type_default ... ok [INFO] [stdout] test geometry::tests::test_point_default ... ok [INFO] [stdout] test geometry::tests::test_point_distance ... ok [INFO] [stdout] test geometry::tests::test_rect_default ... ok [INFO] [stdout] test geometry::tests::test_rect_from_size ... ok [INFO] [stdout] test geometry::tests::test_rect_from_points ... ok [INFO] [stdout] test geometry::tests::test_rect_intersection_none ... ok [INFO] [stdout] test geometry::tests::test_rect_intersects ... ok [INFO] [stdout] test geometry::tests::test_rect_inset_clamps ... ok [INFO] [stdout] test geometry::tests::test_rect_inset ... ok [INFO] [stdout] test geometry::tests::test_rect_with_origin ... ok [INFO] [stdout] test geometry::tests::test_size_aspect_ratio ... ok [INFO] [stdout] test geometry::tests::test_rect_with_size ... ok [INFO] [stdout] test geometry::tests::test_size_aspect_ratio_zero_height ... ok [INFO] [stdout] test geometry::tests::test_size_contains ... ok [INFO] [stdout] test geometry::tests::test_size_area ... ok [INFO] [stdout] test geometry::tests::test_size_default ... ok [INFO] [stdout] test geometry::tests::test_size_new ... ok [INFO] [stdout] test geometry::tests::test_size_scale ... ok [INFO] [stdout] test gesture::tests::test_gesture_config_debug ... ok [INFO] [stdout] test geometry::tests::test_rect_intersection ... ok [INFO] [stdout] test gesture::tests::test_gesture_config_default ... ok [INFO] [stdout] test geometry::tests::test_rect_union ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_below_pinch_threshold ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_below_pan_threshold ... ok [INFO] [stdout] test gesture::tests::test_gesture_config_clone ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_debug ... ok [INFO] [stdout] test gesture::tests::test_gesture_config_custom ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_pan_end ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_rotate ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_touch_end_unknown_id ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_two_finger_end ... ok [INFO] [stdout] test gesture::tests::test_pointer_info_debug ... ok [INFO] [stdout] test gesture::tests::test_pointer_info_clone ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_cancel ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_default ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_first_non_primary_becomes_primary ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_ignores_non_pointer_events ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_new ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_touch_move_unknown_id ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_pointer_down ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_pointer_move ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_reset ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_pointer_up ... ok [INFO] [stdout] test gesture::tests::test_recognized_gesture_all_variants ... ok [INFO] [stdout] test gesture::tests::test_recognized_gesture_clone ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_primary_changes_on_remove ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_with_config ... ok [INFO] [stdout] test gesture::tests::test_recognized_gesture_debug ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_debug ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_default ... ok [INFO] [stdout] test gesture::tests::test_recognizer_new ... ok [INFO] [stdout] test gesture::tests::test_recognizer_pan ... ok [INFO] [stdout] test gesture::tests::test_recognizer_pan_continued ... ok [INFO] [stdout] test gesture::tests::test_recognizer_pinch ... ok [INFO] [stdout] test gesture::tests::test_recognizer_reset ... ok [INFO] [stdout] test gesture::tests::test_recognizer_tap ... ok [INFO] [stdout] test gesture::tests::test_recognizer_touch_end ... ok [INFO] [stdout] test gesture::tests::test_recognizer_touch_start ... ok [INFO] [stdout] test gesture::tests::test_recognized_gesture_default ... ok [INFO] [stdout] test gesture::tests::test_recognizer_touch_cancel ... ok [INFO] [stdout] test gesture::tests::test_recognizer_two_touches ... ok [INFO] [stdout] test gesture::tests::test_recognizer_ignores_non_touch_events ... ok [INFO] [stdout] test gesture::tests::test_recognizer_touch_move ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_move_unknown_pointer ... ok [INFO] [stdout] test gesture::tests::test_recognizer_with_config ... ok [INFO] [stdout] test gesture::tests::test_pointer_recognizer_multiple_pointers ... ok [INFO] [stdout] test gesture::tests::test_touch_point_clone ... ok [INFO] [stdout] test gesture::tests::test_touch_point_debug ... ok [INFO] [stdout] test gesture::tests::test_touch_point_delta ... ok [INFO] [stdout] test gesture::tests::test_touch_point_duration ... ok [INFO] [stdout] test gesture::tests::test_touch_point_new ... ok [INFO] [stdout] test history::tests::test_checkpoint_debug ... ok [INFO] [stdout] test history::tests::test_checkpoint_id ... ok [INFO] [stdout] test history::tests::test_checkpoint_clone ... ok [INFO] [stdout] test history::tests::test_checkpoint_id_debug ... ok [INFO] [stdout] test gesture::tests::test_touch_point_total_distance ... ok [INFO] [stdout] test history::tests::test_checkpoint_id_hash ... ok [INFO] [stdout] test history::tests::test_basic_execute ... ok [INFO] [stdout] test history::tests::test_can_undo_redo ... ok [INFO] [stdout] test gesture::tests::test_touch_point_update ... ok [INFO] [stdout] test history::tests::test_command_descriptions ... ok [INFO] [stdout] test history::tests::test_command_groups ... ok [INFO] [stdout] test history::tests::test_command_id_debug ... ok [INFO] [stdout] test history::tests::test_command_id_eq ... ok [INFO] [stdout] test history::tests::test_command_id ... ok [INFO] [stdout] test history::tests::test_command_result_debug ... ok [INFO] [stdout] test history::tests::test_command_result_helpers ... ok [INFO] [stdout] test history::tests::test_command_id_hash ... ok [INFO] [stdout] test history::tests::test_command_result_clone ... ok [INFO] [stdout] test history::tests::test_composite_command_description ... ok [INFO] [stdout] test history::tests::test_composite_command ... ok [INFO] [stdout] test history::tests::test_default_command_methods ... ok [INFO] [stdout] test history::tests::test_composite_command_rollback_on_failure ... ok [INFO] [stdout] test history::tests::test_default_config ... ok [INFO] [stdout] test history::tests::test_composite_command_memory_size ... ok [INFO] [stdout] test history::tests::test_execute_group ... ok [INFO] [stdout] test history::tests::test_failed_command_not_added ... ok [INFO] [stdout] test history::tests::test_empty_composite_command ... ok [INFO] [stdout] test history::tests::test_get_checkpoint ... ok [INFO] [stdout] test history::tests::test_get_nonexistent_checkpoint ... ok [INFO] [stdout] test history::tests::test_group_id ... ok [INFO] [stdout] test history::tests::test_group_id_debug ... ok [INFO] [stdout] test history::tests::test_group_redo ... ok [INFO] [stdout] test history::tests::test_history_clear_resets_memory ... ok [INFO] [stdout] test history::tests::test_event_callbacks ... ok [INFO] [stdout] test history::tests::test_history_config_debug ... ok [INFO] [stdout] test history::tests::test_history_config_clone ... ok [INFO] [stdout] test history::tests::test_group_id_hash ... ok [INFO] [stdout] test history::tests::test_memory_tracking ... ok [INFO] [stdout] test history::tests::test_multiple_event_listeners ... ok [INFO] [stdout] test history::tests::test_pause_resume_recording ... ok [INFO] [stdout] test history::tests::test_multiple_undo_redo ... ok [INFO] [stdout] test history::tests::test_redo ... ok [INFO] [stdout] test history::tests::test_redo_cleared_on_new_execute ... ok [INFO] [stdout] test history::tests::test_checkpoint_position_updates_on_trim ... ok [INFO] [stdout] test history::tests::test_redo_clears_on_new_execute ... ok [INFO] [stdout] test history::tests::test_checkpoints ... ok [INFO] [stdout] test history::tests::test_redo_count ... ok [INFO] [stdout] test history::tests::test_clear ... ok [INFO] [stdout] test history::tests::test_command_merging ... ok [INFO] [stdout] test history::tests::test_command_result_all_variants ... ok [INFO] [stdout] test history::tests::test_history_event_clone ... ok [INFO] [stdout] test history::tests::test_history_event_debug ... ok [INFO] [stdout] test history::tests::test_history_event_variants ... ok [INFO] [stdout] test history::tests::test_list_checkpoints ... ok [INFO] [stdout] test history::tests::test_max_commands_limit ... ok [INFO] [stdout] test gesture::tests::test_gesture_recognizer_three_touches ... ok [INFO] [stdout] test history::tests::test_memory_limit_trimming ... ok [INFO] [stdout] test history::tests::test_set_value_command ... ok [INFO] [stdout] test history::tests::test_redo_description ... ok [INFO] [stdout] test history::tests::test_redo_on_empty_returns_none ... ok [INFO] [stdout] test history::tests::test_restore_invalid_checkpoint ... ok [INFO] [stdout] test history::tests::test_set_value_command_description ... ok [INFO] [stdout] test history::tests::test_undo_without_old_value ... ok [INFO] [stdout] test lifecycle::tests::test_effect_deps_changed ... ok [INFO] [stdout] test lifecycle::tests::test_effect_cleanup ... ok [INFO] [stdout] test lifecycle::tests::test_effect_manager_new ... ok [INFO] [stdout] test lifecycle::tests::test_effect_run ... ok [INFO] [stdout] test lifecycle::tests::test_effect_with_deps ... ok [INFO] [stdout] test lifecycle::tests::test_hook_id ... ok [INFO] [stdout] test history::tests::test_tick ... ok [INFO] [stdout] test lifecycle::tests::test_manager_emit_wrong_phase ... ok [INFO] [stdout] test lifecycle::tests::test_manager_emit ... ok [INFO] [stdout] test history::tests::test_undo_on_empty_returns_none ... ok [INFO] [stdout] test lifecycle::tests::test_lifecycle_phase_equality ... ok [INFO] [stdout] test lifecycle::tests::test_effect_manager_add ... ok [INFO] [stdout] test lifecycle::tests::test_effect_manager_cleanup_widget ... ok [INFO] [stdout] test lifecycle::tests::test_effect_manager_clear ... ok [INFO] [stdout] test lifecycle::tests::test_lifecycle_event_new ... ok [INFO] [stdout] test lifecycle::tests::test_manager_clear ... ok [INFO] [stdout] test lifecycle::tests::test_effect_new ... ok [INFO] [stdout] test lifecycle::tests::test_manager_on_mount ... ok [INFO] [stdout] test lifecycle::tests::test_manager_on_unmount ... ok [INFO] [stdout] test lifecycle::tests::test_manager_unregister ... ok [INFO] [stdout] test lifecycle::tests::test_manager_unregister_widget ... ok [INFO] [stdout] test runtime::tests::test_animated_property_default ... ok [INFO] [stdout] test lifecycle::tests::test_manager_queue_and_flush ... ok [INFO] [stdout] test lifecycle::tests::test_manager_register ... ok [INFO] [stdout] test lifecycle::tests::test_manager_tick ... ok [INFO] [stdout] test runtime::tests::test_animated_property_advance ... ok [INFO] [stdout] test lifecycle::tests::test_manager_multiple_widgets ... ok [INFO] [stdout] test lifecycle::tests::test_manager_new ... ok [INFO] [stdout] test runtime::tests::test_animated_property_color ... ok [INFO] [stdout] test lifecycle::tests::test_effect_manager_run_effects ... ok [INFO] [stdout] test runtime::tests::test_animated_property_new ... ok [INFO] [stdout] test runtime::tests::test_animated_property_point ... ok [INFO] [stdout] test runtime::tests::test_animated_property_progress ... ok [INFO] [stdout] test runtime::tests::test_animated_property_set ... ok [INFO] [stdout] test runtime::tests::test_animated_property_set_immediate ... ok [INFO] [stdout] test runtime::tests::test_animated_property_size ... ok [INFO] [stdout] test runtime::tests::test_animated_property_with_delay ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_complete ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_loop ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_infinite_loop ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_pause_resume ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_start ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_stop ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_new ... ok [INFO] [stdout] test runtime::tests::test_animator_multiple_animations ... ok [INFO] [stdout] test runtime::tests::test_animator_has_running ... ok [INFO] [stdout] test runtime::tests::test_animator_create ... ok [INFO] [stdout] test runtime::tests::test_animator_remove ... ok [INFO] [stdout] test runtime::tests::test_animator_start_and_value ... ok [INFO] [stdout] test runtime::tests::test_animator_stop ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_with_easing ... ok [INFO] [stdout] test runtime::tests::test_animator_unique_ids ... ok [INFO] [stdout] test runtime::tests::test_animator_cleanup_completed ... ok [INFO] [stdout] test history::tests::test_undo ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_default ... ok [INFO] [stdout] test runtime::tests::test_animator_pause_resume ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_force_refresh_nonexistent ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_is_due_nonexistent ... ok [INFO] [stdout] test runtime::tests::test_animator_new ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_is_due ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_force_refresh ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_get_task ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_is_due_paused ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_multiple_refresh_cycles ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_new ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_pause ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_pause_nonexistent ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_unregister ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_register_duplicate_updates ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_resume ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_resume_nonexistent ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_saturating_arithmetic ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_register_multiple ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_time_until_refresh ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_reactivate_updates_interval ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_time_until_refresh_nonexistent ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_time_until_refresh_paused ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_register ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_unregister_nonexistent ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_update_after_interval ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_update_initial ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_update_multiple_sources ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_update_before_interval ... ok [INFO] [stdout] test runtime::tests::test_easing_bounce ... ok [INFO] [stdout] test runtime::tests::test_default_executor ... ok [INFO] [stdout] test runtime::tests::test_easing_clamps_input ... ok [INFO] [stdout] test runtime::tests::test_data_refresh_manager_update_paused_skipped ... ok [INFO] [stdout] test runtime::tests::test_easing_cubic ... ok [INFO] [stdout] test runtime::tests::test_easing_default ... ok [INFO] [stdout] test runtime::tests::test_easing_linear ... ok [INFO] [stdout] test runtime::tests::test_easing_in_out_quad ... ok [INFO] [stdout] test runtime::tests::test_execution_result_into_messages_multiple ... ok [INFO] [stdout] test runtime::tests::test_execution_result_into_messages_none ... ok [INFO] [stdout] test runtime::tests::test_execution_result_into_messages_single ... ok [INFO] [stdout] test runtime::tests::test_execution_result_none ... ok [INFO] [stdout] test runtime::tests::test_execution_result_message ... ok [INFO] [stdout] test runtime::tests::test_execution_result_pending ... ok [INFO] [stdout] test runtime::tests::test_execution_result_into_messages_pending ... ok [INFO] [stdout] test runtime::tests::test_easing_elastic ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_batch_navigations ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_load_state_not_found ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_batch_empty ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_batch_mixed ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_save_state ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_task_returns_pending ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_load_state_found ... ok [INFO] [stdout] test runtime::tests::test_focus_direction_variants ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_blur ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_empty_ring ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_focus ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_navigate_multiple ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_navigate ... ok [INFO] [stdout] test runtime::tests::test_execution_result_messages ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_move_backward ... ok [INFO] [stdout] test runtime::tests::test_executor_execute_none ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_move_forward ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_nested_traps ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_new ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_pop_trap ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_default ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_fps ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_trap ... ok [INFO] [stdout] test runtime::tests::test_focus_manager_set_ring ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_is_on_target ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_frame ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_new ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_slow_frames ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_clear ... ok [INFO] [stdout] test runtime::tests::test_load_state_with_serialized_data ... ok [INFO] [stdout] test runtime::tests::test_memory_router_history ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_load_missing ... ok [INFO] [stdout] test runtime::tests::test_memory_router_default ... ok [INFO] [stdout] test runtime::tests::test_memory_router_navigate ... ok [INFO] [stdout] test runtime::tests::test_memory_router_new ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_contains ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_new ... ok [INFO] [stdout] test runtime::tests::test_frame_timer_zero_fps ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_overwrite ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_at_rest ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_bouncy ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_set_immediate ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_set_target ... ok [INFO] [stdout] test runtime::tests::test_spring_config_default ... ok [INFO] [stdout] test runtime::tests::test_state_update_with_command_execution ... ok [INFO] [stdout] test runtime::tests::test_spring_config_presets ... ok [INFO] [stdout] test runtime::tests::test_timer_advance ... ok [INFO] [stdout] test runtime::tests::test_timer_max_ticks ... ok [INFO] [stdout] test runtime::tests::test_timer_new ... ok [INFO] [stdout] test runtime::tests::test_timer_multiple_ticks ... ok [INFO] [stdout] test runtime::tests::test_animated_property_f64 ... ok [INFO] [stdout] test runtime::tests::test_animated_property_interrupt ... ok [INFO] [stdout] test runtime::tests::test_animation_instance_alternate ... ok [INFO] [stdout] test runtime::tests::test_easing_quad ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_save_load ... ok [INFO] [stdout] test runtime::tests::test_navigation_state_flow ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_advance ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_new ... ok [INFO] [stdout] test runtime::tests::test_spring_animation_overdamped ... ok [INFO] [stdout] test runtime::tests::test_timer_not_running ... ok [INFO] [stdout] test runtime::tests::test_timer_progress ... ok [INFO] [stdout] test runtime::tests::test_timer_start_stop ... ok [INFO] [stdout] test runtime::tests::test_timer_zero_interval ... ok [INFO] [stdout] test runtime::tests::test_transition_config_default ... ok [INFO] [stdout] test runtime::tests::test_transition_config_new ... ok [INFO] [stdout] test runtime::tests::test_transition_config_presets ... ok [INFO] [stdout] test runtime::tests::test_tween_advance_overflow ... ok [INFO] [stdout] test runtime::tests::test_tween_is_complete ... ok [INFO] [stdout] test runtime::tests::test_tween_new ... ok [INFO] [stdout] test runtime::tests::test_tween_progress ... ok [INFO] [stdout] test runtime::tests::test_tween_reset ... ok [INFO] [stdout] test runtime::tests::test_tween_value ... ok [INFO] [stdout] test runtime::tests::test_tween_with_easing ... ok [INFO] [stdout] test runtime::tests::test_tween_zero_duration ... ok [INFO] [stdout] test shortcut::tests::test_builder ... ok [INFO] [stdout] test runtime::tests::test_transition_config_builder ... ok [INFO] [stdout] test runtime::tests::test_tween_f64_value ... ok [INFO] [stdout] test shortcut::tests::test_builder_for_widget ... ok [INFO] [stdout] test runtime::tests::test_timer_reset ... ok [INFO] [stdout] test runtime::tests::test_memory_storage_remove ... ok [INFO] [stdout] test shortcut::tests::test_manager_find_conflicts ... ok [INFO] [stdout] test shortcut::tests::test_manager_new ... ok [INFO] [stdout] test shortcut::tests::test_manager_priority ... ok [INFO] [stdout] test shortcut::tests::test_modifiers_constants ... ok [INFO] [stdout] test shortcut::tests::test_modifiers_display ... ok [INFO] [stdout] test shortcut::tests::test_modifiers_new ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_constants ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_constructors ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_context_default ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_display ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_equality ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_id ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_new ... ok [INFO] [stdout] test shortcut::tests::test_shortcut_priority_ordering ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_mean_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_mean_f64_empty ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_min_max_f64_empty ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_min_max_f64_large ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_min_max_f64_single ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_min_max_f64_small ... ok [INFO] [stdout] test shortcut::tests::test_manager_shortcuts ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_scale_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_scale_offset_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_stddev_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_sum_f64_large ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_sum_f64_small ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_variance_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_variance_f64_empty ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_variance_f64_single ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_histogram_f64 ... ok [INFO] [stdout] test shortcut::tests::test_manager_unregister ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_histogram_f64_edge_values ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_histogram_f64_empty ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_histogram_f64_uniform ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_normalize_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_normalize_f64_empty ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_normalize_with_range_f64 ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_percentile_sorted_f64_empty ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_percentile_sorted_f64_median ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_percentile_sorted_f64_quartiles ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_percentile_sorted_f64_single ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_weighted_sum_f64_large ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_weighted_sum_f64_small ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_sum_f64_empty ... ok [INFO] [stdout] test simd::tests::simd_tests::test_batch_add_simd ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_batch_sum_f64_exact_chunks ... ok [INFO] [stdout] test simd::tests::simd_tests::test_best_backend ... ok [INFO] [stdout] test simd::tests::simd_tests::test_batch_dot_product ... ok [INFO] [stdout] test simd::tests::simd_tests::test_dot_simd ... ok [INFO] [stdout] test simd::tests::simd_tests::test_scale_simd ... ok [INFO] [stdout] test simd::tests::simd_tests::test_vec4_to_simd_roundtrip ... ok [INFO] [stdout] test simd::tests::test_batch_transform_points ... ok [INFO] [stdout] test simd::tests::test_batch_transform_vec4 ... ok [INFO] [stdout] test simd::tests::test_bounding_box ... ok [INFO] [stdout] test simd::tests::test_bounding_box_empty ... ok [INFO] [stdout] test simd::tests::test_centroid ... ok [INFO] [stdout] test simd::tests::test_centroid_empty ... ok [INFO] [stdout] test simd::tests::test_mat4_column ... ok [INFO] [stdout] test simd::tests::test_mat4_default ... ok [INFO] [stdout] test simd::tests::test_mat4_identity ... ok [INFO] [stdout] test simd::tests::test_mat4_mul_combined_transform ... ok [INFO] [stdout] test simd::tests::test_mat4_mul_identity ... ok [INFO] [stdout] test simd::tests::test_mat4_mul_operator ... ok [INFO] [stdout] test simd::tests::test_mat4_mul_vec4_operator ... ok [INFO] [stdout] test simd::tests::test_mat4_ortho_screen ... ok [INFO] [stdout] test simd::tests::test_mat4_rotation_z ... ok [INFO] [stdout] test shortcut::tests::test_builder_register ... ok [INFO] [stdout] test simd::tests::test_batch_lerp_points ... ok [INFO] [stdout] test simd::tests::test_mat4_row ... ok [INFO] [stdout] test simd::tests::test_mat4_scale_2d ... ok [INFO] [stdout] test shortcut::tests::test_manager_context ... ok [INFO] [stdout] test simd::tests::test_mat4_scale ... ok [INFO] [stdout] test shortcut::tests::test_manager_push_pop_context ... ok [INFO] [stdout] test shortcut::tests::test_manager_clear ... ok [INFO] [stdout] test simd::tests::test_mat4_scale_uniform ... ok [INFO] [stdout] test simd::tests::test_mat4_translation ... ok [INFO] [stdout] test simd::tests::test_mat4_translation_2d ... ok [INFO] [stdout] test simd::tests::test_mat4_transpose ... ok [INFO] [stdout] test simd::tests::test_point_in_convex_polygon ... ok [INFO] [stdout] test simd::tests::test_mat4_zero ... ok [INFO] [stdout] test simd::tests::test_mat4_transform_rect ... ok [INFO] [stdout] test simd::tests::test_point_in_convex_polygon_edge ... ok [INFO] [stdout] test simd::tests::test_polygon_area_square ... ok [INFO] [stdout] test simd::tests::test_polygon_area_too_few_points ... ok [INFO] [stdout] test simd::tests::test_vec4_default ... ok [INFO] [stdout] test simd::tests::test_vec4_dot ... ok [INFO] [stdout] test simd::tests::test_vec4_length ... ok [INFO] [stdout] test simd::tests::test_vec4_from_impl ... ok [INFO] [stdout] test simd::tests::test_vec4_from_point ... ok [INFO] [stdout] test simd::tests::test_vec4_normalize ... ok [INFO] [stdout] test simd::tests::test_vec4_scale ... ok [INFO] [stdout] test simd::tests::test_vec4_sub ... ok [INFO] [stdout] test simd::tests::test_vec4_to_point ... ok [INFO] [stdout] test simd::tests::test_vec4_zero ... ok [INFO] [stdout] test state::tests::test_command_batch ... ok [INFO] [stdout] test state::tests::test_command_batch_map ... ok [INFO] [stdout] test state::tests::test_command_default ... ok [INFO] [stdout] test state::tests::test_command_map_none ... ok [INFO] [stdout] test state::tests::test_command_navigate ... ok [INFO] [stdout] test state::tests::test_command_none ... ok [INFO] [stdout] test state::tests::test_command_save_state ... ok [INFO] [stdout] test state::tests::test_counter_decrement ... ok [INFO] [stdout] test state::tests::test_counter_increment ... ok [INFO] [stdout] test simd::tests::test_vec4_lerp ... ok [INFO] [stdout] test state::tests::test_counter_reset ... ok [INFO] [stdout] test simd::tests::test_vec4_add ... ok [INFO] [stdout] test state::tests::test_counter_serialization ... ok [INFO] [stdout] test state::tests::test_command_map ... ok [INFO] [stdout] test state::tests::test_counter_set ... ok [INFO] [stdout] test state::tests::test_store_dispatch ... ok [INFO] [stdout] test simd::tests::test_polygon_area_triangle ... ok [INFO] [stdout] test state::tests::test_store_clear_history ... ok [INFO] [stdout] test state::tests::test_store_history_truncation ... ok [INFO] [stdout] test state::tests::test_store_jump_invalid ... ok [INFO] [stdout] test state::tests::test_store_no_history ... ok [INFO] [stdout] test state::tests::test_store_redo_at_end ... ok [INFO] [stdout] test state::tests::test_store_redo ... ok [INFO] [stdout] test simd::tests::test_vec4_mul ... ok [INFO] [stdout] test simd::tests::test_vec4_new ... ok [INFO] [stdout] test state::tests::test_store_subscribe ... ok [INFO] [stdout] test state::tests::test_store_undo_at_start ... ok [INFO] [stdout] test state::tests::test_store_undo ... ok [INFO] [stdout] test state::tests::test_store_new ... ok [INFO] [stdout] test state::tests::test_store_with_history_limit ... ok [INFO] [stdout] test streaming::tests::test_connection_state_debug ... ok [INFO] [stdout] test streaming::tests::test_connection_state_is_connecting ... ok [INFO] [stdout] test streaming::tests::test_data_stream_clear ... ok [INFO] [stdout] test streaming::tests::test_data_stream_default ... ok [INFO] [stdout] test streaming::tests::test_data_stream_get_nonexistent_subscription ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_ack ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_data ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_error ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_error_no_id ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_error_unknown_id ... ok [INFO] [stdout] test streaming::tests::test_connection_state_clone ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_ping ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_pong ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_data_unknown_subscription ... ok [INFO] [stdout] test streaming::tests::test_data_stream_multiple_data_updates ... ok [INFO] [stdout] test streaming::tests::test_connection_state_default ... ok [INFO] [stdout] test streaming::tests::test_data_stream_handle_subscribe ... ok [INFO] [stdout] test streaming::tests::test_connection_state_is_active ... ok [INFO] [stdout] test streaming::tests::test_data_stream_new ... ok [INFO] [stdout] test streaming::tests::test_data_stream_reconnect_logic ... ok [INFO] [stdout] test streaming::tests::test_data_stream_resubscribe_all ... ok [INFO] [stdout] test streaming::tests::test_data_stream_send ... ok [INFO] [stdout] test streaming::tests::test_data_stream_subscribe ... ok [INFO] [stdout] test streaming::tests::test_data_stream_set_state ... ok [INFO] [stdout] test streaming::tests::test_data_stream_unsubscribe ... ok [INFO] [stdout] test streaming::tests::test_data_stream_subscriptions_list ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_in_order ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_duplicate ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_clear ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_clear_all ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_debug ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_last_seq ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_multiple_subscriptions ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_large_gap ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_nonexistent_subscription ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_at_boundary ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_old_message ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_out_of_order ... ok [INFO] [stdout] test streaming::tests::test_message_buffer_pending_count ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_allows_under_limit ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_default ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_blocks_over_limit ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_reset ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_current_count ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_debug ... ok [INFO] [stdout] test streaming::tests::test_reconnect_delay_capped ... ok [INFO] [stdout] test streaming::tests::test_rate_limiter_window_expiry ... ok [INFO] [stdout] test streaming::tests::test_reconnect_config_clone ... ok [INFO] [stdout] test streaming::tests::test_reconnect_config_debug ... ok [INFO] [stdout] test streaming::tests::test_reconnect_config_default ... ok [INFO] [stdout] test streaming::tests::test_reconnect_infinite_attempts ... ok [INFO] [stdout] test streaming::tests::test_reconnect_delay_for_attempt ... ok [INFO] [stdout] test streaming::tests::test_reconnect_max_attempts ... ok [INFO] [stdout] test streaming::tests::test_reconnect_delay_large_attempt ... ok [INFO] [stdout] test streaming::tests::test_reconnect_disabled ... ok [INFO] [stdout] test streaming::tests::test_stream_config_builder ... ok [INFO] [stdout] test streaming::tests::test_stream_config_clone ... ok [INFO] [stdout] test streaming::tests::test_stream_config_new ... ok [INFO] [stdout] test streaming::tests::test_stream_config_with_reconnect ... ok [INFO] [stdout] test streaming::tests::test_stream_message_ack ... ok [INFO] [stdout] test streaming::tests::test_stream_message_clone ... ok [INFO] [stdout] test streaming::tests::test_stream_message_data ... ok [INFO] [stdout] test streaming::tests::test_stream_message_debug ... ok [INFO] [stdout] test streaming::tests::test_stream_message_deserialize ... ok [INFO] [stdout] test streaming::tests::test_stream_message_error ... ok [INFO] [stdout] test streaming::tests::test_stream_message_error_for ... ok [INFO] [stdout] test streaming::tests::test_stream_message_ping_pong ... ok [INFO] [stdout] test streaming::tests::test_stream_message_serialize ... ok [INFO] [stdout] test streaming::tests::test_stream_message_serialize_all_variants ... ok [INFO] [stdout] test streaming::tests::test_stream_message_subscribe ... ok [INFO] [stdout] test streaming::tests::test_stream_message_subscribe_with_transform ... ok [INFO] [stdout] test streaming::tests::test_stream_message_subscription_id ... ok [INFO] [stdout] test streaming::tests::test_stream_message_unsubscribe ... ok [INFO] [stdout] test streaming::tests::test_stream_subscription_clone ... ok [INFO] [stdout] test streaming::tests::test_stream_subscription_debug ... ok [INFO] [stdout] test streaming::tests::test_stream_subscription_empty_source ... ok [INFO] [stdout] test streaming::tests::test_stream_subscription_hash_consistency ... ok [INFO] [stdout] test streaming::tests::test_stream_subscription_hash_different ... ok [INFO] [stdout] test streaming::tests::test_stream_subscription_unicode_source ... ok [INFO] [stdout] test streaming::tests::test_subscription_new ... ok [INFO] [stdout] test streaming::tests::test_subscription_to_message ... ok [INFO] [stdout] test streaming::tests::test_subscription_with_id ... ok [INFO] [stdout] test streaming::tests::test_subscription_with_interval ... ok [INFO] [stdout] test streaming::tests::test_subscription_with_transform ... ok [INFO] [stdout] test shortcut::tests::test_manager_description ... ok [INFO] [stdout] test shortcut::tests::test_manager_disabled_shortcut_not_triggered ... ok [INFO] [stdout] test shortcut::tests::test_manager_handle_key ... ok [INFO] [stdout] test shortcut::tests::test_manager_handler_consumes ... ok [INFO] [stdout] test shortcut::tests::test_manager_register ... ok [INFO] [stdout] test shortcut::tests::test_manager_set_enabled ... ok [INFO] [stdout] test shortcut::tests::test_manager_trigger ... ok [INFO] [stdout] test simd::tests::compute_block_tests::test_normalize_f64_constant ... ok [INFO] [stdout] test state::tests::test_store_history ... ok [INFO] [stdout] test state::tests::test_store_jump_to ... ok [INFO] [stdout] test streaming::tests::test_data_stream_get_nonexistent_data ... ok [INFO] [stdout] test streaming::tests::test_stream_config_debug ... ok [INFO] [stdout] test streaming::tests::test_stream_config_default ... ok [INFO] [stdout] test tests::color_tests::test_color_contrast_ratio_black_white ... ok [INFO] [stdout] test tests::color_tests::test_color_contrast_ratio_symmetric ... ok [INFO] [stdout] test tests::color_tests::test_color_from_hex_invalid ... ok [INFO] [stdout] test tests::color_tests::test_color_from_hex_with_alpha ... ok [INFO] [stdout] test tests::color_tests::test_color_from_rgb ... ok [INFO] [stdout] test tests::color_tests::test_color_new_clamps_values ... ok [INFO] [stdout] test tests::color_tests::test_color_relative_luminance_black ... ok [INFO] [stdout] test tests::color_tests::test_color_to_hex ... ok [INFO] [stdout] test tests::constraints_tests::test_constraints_constrain ... ok [INFO] [stdout] test tests::constraints_tests::test_constraints_has_bounded_width ... ok [INFO] [stdout] test tests::color_tests::test_color_contrast_ratio_wcag_aa ... ok [INFO] [stdout] test tests::color_tests::test_color_from_hex ... ok [INFO] [stdout] test tests::constraints_tests::test_constraints_unbounded ... ok [INFO] [stdout] test tests::constraints_tests::test_constraints_is_tight ... ok [INFO] [stdout] test tests::event_tests::test_event_key ... ok [INFO] [stdout] test tests::color_tests::test_color_relative_luminance_white ... ok [INFO] [stdout] test tests::color_tests::test_color_lerp ... ok [INFO] [stdout] test tests::constraints_tests::test_constraints_loose ... ok [INFO] [stdout] test tests::color_tests::prop_contrast_ratio_always_positive ... ok [INFO] [stdout] test tests::constraints_tests::test_constraints_tight ... ok [INFO] [stdout] test tests::event_tests::test_event_scroll ... ok [INFO] [stdout] test tests::event_tests::test_event_text_input ... ok [INFO] [stdout] test tests::geometry_tests::prop_rect_contains_center ... ok [INFO] [stdout] test tests::event_tests::test_event_mouse_button ... ok [INFO] [stdout] test tests::event_tests::test_event_mouse_move ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_center ... ok [INFO] [stdout] test tests::geometry_tests::test_corner_radius ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_contains_point ... ok [INFO] [stdout] test tests::color_tests::prop_color_clamps_to_valid_range ... ok [INFO] [stdout] test tests::color_tests::prop_lerp_at_one_returns_other ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_corners ... ok [INFO] [stdout] test tests::geometry_tests::test_point_add ... ok [INFO] [stdout] test tests::geometry_tests::test_point_distance ... ok [INFO] [stdout] test tests::geometry_tests::test_point_new ... ok [INFO] [stdout] test tests::geometry_tests::test_point_origin ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_from_size ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_inset ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_origin_and_size ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_intersection ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_union ... ok [INFO] [stdout] test tests::geometry_tests::test_size_aspect_ratio ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_from_points ... ok [INFO] [stdout] test tests::geometry_tests::test_point_sub ... ok [INFO] [stdout] test tests::geometry_tests::test_size_area ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_intersects ... ok [INFO] [stdout] test tests::geometry_tests::prop_point_distance_non_negative ... ok [INFO] [stdout] test tests::geometry_tests::test_size_contains ... ok [INFO] [stdout] test tests::geometry_tests::test_rect_new ... ok [INFO] [stdout] test theme::tests::test_color_palette_light ... ok [INFO] [stdout] test theme::tests::test_contrast_check_ratios ... ok [INFO] [stdout] test theme::tests::test_dark_palette_contrast_aa ... ok [INFO] [stdout] test theme::tests::test_failing_aa ... ok [INFO] [stdout] test theme::tests::test_light_palette_contrast_aa ... ok [INFO] [stdout] test theme::tests::test_passes_wcag_aa ... ok [INFO] [stdout] test theme::tests::test_radii_default ... ok [INFO] [stdout] test theme::tests::test_radii_presets ... ok [INFO] [stdout] test tests::geometry_tests::test_size_new ... ok [INFO] [stdout] test tests::geometry_tests::test_size_zero ... ok [INFO] [stdout] test theme::tests::test_color_palette_dark ... ok [INFO] [stdout] test tests::geometry_tests::prop_point_distance_symmetric ... ok [INFO] [stdout] test tests::geometry_tests::prop_rect_area_non_negative ... ok [INFO] [stdout] test theme::tests::test_color_palette_default ... ok [INFO] [stdout] test theme::tests::test_shadows_default ... ok [INFO] [stdout] test theme::tests::test_theme_light ... ok [INFO] [stdout] test theme::tests::test_shadows_presets ... ok [INFO] [stdout] test theme::tests::test_spacing_compact ... ok [INFO] [stdout] test theme::tests::test_spacing_default ... ok [INFO] [stdout] test theme::tests::test_spacing_get ... ok [INFO] [stdout] test theme::tests::test_spacing_presets ... ok [INFO] [stdout] test theme::tests::test_spacing_standard ... ok [INFO] [stdout] test theme::tests::test_theme_builder_chain ... ok [INFO] [stdout] test theme::tests::test_theme_dark ... ok [INFO] [stdout] test theme::tests::test_theme_default ... ok [INFO] [stdout] test theme::tests::test_theme_with_radii ... ok [INFO] [stdout] test theme::tests::test_typography_heading_size_out_of_range ... ok [INFO] [stdout] test theme::tests::test_typography_standard ... ok [INFO] [stdout] test theme::tests::test_theme_with_spacing ... ok [INFO] [stdout] test validation::tests::test_custom_validator ... ok [INFO] [stdout] test validation::tests::test_custom_validator_debug ... ok [INFO] [stdout] test theme::tests::test_theme_serialization ... ok [INFO] [stdout] test theme::tests::test_theme_with_colors ... ok [INFO] [stdout] test theme::tests::test_theme_with_name ... ok [INFO] [stdout] test theme::tests::test_theme_with_typography ... ok [INFO] [stdout] test theme::tests::test_typography_heading_size ... ok [INFO] [stdout] test theme::tests::test_typography_caption_size ... ok [INFO] [stdout] test validation::tests::test_field_state_default ... ok [INFO] [stdout] test validation::tests::test_custom_validator_pending ... ok [INFO] [stdout] test validation::tests::test_field_state_first_error ... ok [INFO] [stdout] test validation::tests::test_field_config_builder ... ok [INFO] [stdout] test validation::tests::test_field_config_debug ... ok [INFO] [stdout] test validation::tests::test_field_config_default ... ok [INFO] [stdout] test validation::tests::test_field_config_multiple_validators_all_fail ... ok [INFO] [stdout] test validation::tests::test_field_config_validate ... ok [INFO] [stdout] test validation::tests::test_field_config_validate_on ... ok [INFO] [stdout] test validation::tests::test_field_state_clone ... ok [INFO] [stdout] test validation::tests::test_field_state_has_errors ... ok [INFO] [stdout] test validation::tests::test_field_config_range ... ok [INFO] [stdout] test theme::tests::test_typography_body_size ... ok [INFO] [stdout] test theme::tests::test_typography_default ... ok [INFO] [stdout] test theme::tests::test_typography_compact ... ok [INFO] [stdout] test validation::tests::test_field_state_new ... ok [INFO] [stdout] test validation::tests::test_field_state_set_value ... ok [INFO] [stdout] test validation::tests::test_field_state_is_valid_no_result ... ok [INFO] [stdout] test validation::tests::test_field_state_set_value_same_value ... ok [INFO] [stdout] test validation::tests::test_field_state_touch ... ok [INFO] [stdout] test validation::tests::test_form_validator_all_errors_multiple ... ok [INFO] [stdout] test validation::tests::test_field_state_with_value ... ok [INFO] [stdout] test validation::tests::test_form_validator_all_errors_empty ... ok [INFO] [stdout] test validation::tests::test_form_validator_complex_scenario ... ok [INFO] [stdout] test validation::tests::test_form_validator_debug ... ok [INFO] [stdout] test validation::tests::test_field_state_is_valid_with_result ... ok [INFO] [stdout] test validation::tests::test_form_validator_field_is_valid_nonexistent ... ok [INFO] [stdout] test validation::tests::test_form_validator_field_nonexistent ... ok [INFO] [stdout] test validation::tests::test_form_validator_is_valid ... ok [INFO] [stdout] test validation::tests::test_form_validator_register ... ok [INFO] [stdout] test validation::tests::test_form_validator_is_dirty_multiple_fields ... ok [INFO] [stdout] test validation::tests::test_form_validator_register_field ... ok [INFO] [stdout] test validation::tests::test_form_validator_reset ... ok [INFO] [stdout] test validation::tests::test_form_validator_errors_nonexistent ... ok [INFO] [stdout] test tests::geometry_tests::prop_rect_intersects_self ... ok [INFO] [stdout] test validation::tests::test_form_validator_reset_clears_all ... ok [INFO] [stdout] test validation::tests::test_form_validator_set_value_nonexistent ... ok [INFO] [stdout] test validation::tests::test_form_validator_touch_nonexistent ... ok [INFO] [stdout] test validation::tests::test_form_validator_validate_all ... ok [INFO] [stdout] test validation::tests::test_max_length_boundary_exact ... ok [INFO] [stdout] test validation::tests::test_form_validator_validate_returns_true_when_valid ... ok [INFO] [stdout] test validation::tests::test_max_length_boundary_one ... ok [INFO] [stdout] test validation::tests::test_form_validator_set_value ... ok [INFO] [stdout] test validation::tests::test_form_validator_validate_on_change ... ok [INFO] [stdout] test validation::tests::test_form_validator_validate_on_blur ... ok [INFO] [stdout] test validation::tests::test_form_validator_validate_submit_only ... ok [INFO] [stdout] test validation::tests::test_max_length_boundary_zero ... ok [INFO] [stdout] test validation::tests::test_max_length_unicode ... ok [INFO] [stdout] test validation::tests::test_max_length_clone ... ok [INFO] [stdout] test validation::tests::test_max_length_validator ... ok [INFO] [stdout] test validation::tests::test_max_length_custom_message ... ok [INFO] [stdout] test validation::tests::test_min_length_boundary_exact ... ok [INFO] [stdout] test validation::tests::test_form_validator_default ... ok [INFO] [stdout] test validation::tests::test_min_length_boundary_zero ... ok [INFO] [stdout] test validation::tests::test_form_validator_new ... ok [INFO] [stdout] test validation::tests::test_min_length_custom_message ... ok [INFO] [stdout] test validation::tests::test_min_length_validator ... ok [INFO] [stdout] test validation::tests::test_pattern_clone ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_glob_exact ... ok [INFO] [stdout] test tests::color_tests::prop_lerp_at_zero_returns_self ... ok [INFO] [stdout] test validation::tests::test_pattern_alphanumeric_unicode ... ok [INFO] [stdout] test validation::tests::test_min_length_boundary_one ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_glob_multiple_wildcards ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_glob_middle ... ok [INFO] [stdout] test validation::tests::test_min_length_clone ... ok [INFO] [stdout] test validation::tests::test_pattern_alphanumeric ... ok [INFO] [stdout] test validation::tests::test_min_length_unicode ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_glob_prefix ... ok [INFO] [stdout] test validation::tests::test_pattern_email ... ok [INFO] [stdout] test validation::tests::test_pattern_email_edge_cases ... ok [INFO] [stdout] test validation::tests::test_pattern_phone ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_glob_suffix ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_message ... ok [INFO] [stdout] test validation::tests::test_pattern_phone_international ... ok [INFO] [stdout] test validation::tests::test_pattern_url ... ok [INFO] [stdout] test validation::tests::test_range_clone ... ok [INFO] [stdout] test validation::tests::test_range_custom_message ... ok [INFO] [stdout] test validation::tests::test_range_float_precision ... ok [INFO] [stdout] test validation::tests::test_pattern_url_protocols ... ok [INFO] [stdout] test validation::tests::test_range_boundary_exact ... ok [INFO] [stdout] test validation::tests::test_range_scientific_notation ... ok [INFO] [stdout] test validation::tests::test_range_with_decimals ... ok [INFO] [stdout] test validation::tests::test_range_validator ... ok [INFO] [stdout] test validation::tests::test_range_invalid_number ... ok [INFO] [stdout] test validation::tests::test_range_negative_values ... ok [INFO] [stdout] test validation::tests::test_required_custom_message ... ok [INFO] [stdout] test validation::tests::test_required_default ... ok [INFO] [stdout] test validation::tests::test_required_validator ... ok [INFO] [stdout] test validation::tests::test_required_whitespace_only ... ok [INFO] [stdout] test validation::tests::test_validate_on_debug ... ok [INFO] [stdout] test validation::tests::test_required_single_char ... ok [INFO] [stdout] test validation::tests::test_validation_result_debug ... ok [INFO] [stdout] test validation::tests::test_validation_result_clone ... ok [INFO] [stdout] test validation::tests::test_validation_result_invalid ... ok [INFO] [stdout] test validation::tests::test_validation_result_valid ... ok [INFO] [stdout] test validation::tests::test_validate_on_clone ... ok [INFO] [stdout] test virtualization::tests::test_cell_layout ... ok [INFO] [stdout] test virtualization::tests::test_grid_cell ... ok [INFO] [stdout] test virtualization::tests::test_item_layout ... ok [INFO] [stdout] test validation::tests::test_validation_result_partial_eq ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_cell_conversion ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_cell_layout ... ok [INFO] [stdout] test validation::tests::test_validation_result_pending ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_config_default ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_content_height ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_default ... ok [INFO] [stdout] test virtualization::tests::test_scroll_align_variants ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_reset ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_scroll_position ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_scroll_to_item ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_set_item_count ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_content_height ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_empty ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_config_default ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_row_count ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_default ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_visible_range ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_empty ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_is_near_start ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_item_layout ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_reset ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_max_scroll ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_position ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_to_item_auto ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_is_near_end ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_to_item_center ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_to_item_start ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_to_item_end ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_set_item_count ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_variable_heights ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_viewport ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_visible_range ... ok [INFO] [stdout] test virtualization::tests::test_visible_grid_range_cells ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_visible_range_scrolled ... ok [INFO] [stdout] test virtualization::tests::test_visible_grid_range_should_render ... ok [INFO] [stdout] test widget::tests::test_accessible_role_variants ... ok [INFO] [stdout] test widget::tests::test_font_style_variants ... ok [INFO] [stdout] test widget::tests::test_font_weight_variants ... ok [INFO] [stdout] test widget::tests::test_accessible_role_default ... ok [INFO] [stdout] test virtualization::tests::test_visible_range_methods ... ok [INFO] [stdout] test widget::tests::test_layout_result_default ... ok [INFO] [stdout] test widget::tests::test_text_style_default ... ok [INFO] [stdout] test widget::tests::test_text_style_eq ... ok [INFO] [stdout] test widget::tests::test_transform2d_default ... ok [INFO] [stdout] test widget::tests::test_text_style_custom ... ok [INFO] [stdout] test widget::tests::test_transform2d_identity ... ok [INFO] [stdout] test widget::tests::test_transform2d_rotate ... ok [INFO] [stdout] test widget::tests::test_transform2d_scale ... ok [INFO] [stdout] test widget::tests::test_transform2d_translate ... ok [INFO] [stdout] test widget::tests::test_layout_result_with_size ... ok [INFO] [stdout] test widget::tests::test_type_id ... ok [INFO] [stdout] test widget::tests::test_type_id_hash ... ok [INFO] [stdout] test widget::tests::test_widget_id ... ok [INFO] [stdout] test widget::tests::test_widget_id_hash ... ok [INFO] [stdout] test widget::tests::test_widget_id_eq ... ok [INFO] [stdout] test validation::tests::test_pattern_digits_edge_cases ... ok [INFO] [stdout] test validation::tests::test_pattern_digits ... ok [INFO] [stdout] test validation::tests::test_range_empty_string ... ok [INFO] [stdout] test validation::tests::test_required_clone ... ok [INFO] [stdout] test validation::tests::test_validate_on_default ... ok [INFO] [stdout] test virtualization::tests::test_item_index ... ok [INFO] [stdout] test virtualization::tests::test_virtual_grid_viewport ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_by ... ok [INFO] [stdout] test virtualization::tests::test_virtual_list_scroll_clamped ... ok [INFO] [stdout] test validation::tests::test_pattern_phone_too_short ... ok [INFO] [stdout] test validation::tests::test_pattern_custom_glob_empty ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1595 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.54s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test test_color_lerp_gradient ... ok [INFO] [stdout] test test_color_roundtrip_hex ... ok [INFO] [stdout] test test_constraints_layout_flow ... ok [INFO] [stdout] test test_color_wcag_contrast ... ok [INFO] [stdout] test test_constraints_deflate_for_padding ... ok [INFO] [stdout] test test_rect_no_intersection ... ok [INFO] [stdout] test test_rect_contains_point ... ok [INFO] [stdout] test test_rect_intersection ... ok [INFO] [stdout] test test_text_style_customization ... ok [INFO] [stdout] test test_state_serialization ... ok [INFO] [stdout] test test_transform_composition ... ok [INFO] [stdout] test test_transform_rotation ... ok [INFO] [stdout] test test_todo_state_workflow ... ok [INFO] [stderr] Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-8f104abda1257500) [INFO] [stdout] test test_widget_id_uniqueness ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests presentar_core [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test src/binding.rs - binding (line 14) ... ignored [INFO] [stdout] test src/brick_types.rs - brick_types::Brick (line 190) ... ignored [INFO] [stdout] test src/brick_widget.rs - brick_widget (line 8) ... ignored [INFO] [stdout] test src/lib.rs - (line 48) ... ignored [INFO] [stdout] test src/color.rs - color (line 5) ... ok [INFO] [stdout] test src/color.rs - color::Color (line 26) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_variance_f64 (line 859) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_scale_offset_f64 (line 840) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_scale_f64 (line 822) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_sum_f64 (line 651) ... ok [INFO] [stdout] test src/constraints.rs - constraints (line 5) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_min_max_f64 (line 707) ... ok [INFO] [stdout] test src/simd.rs - simd::histogram_f64 (line 983) ... ok [INFO] [stdout] test src/geometry.rs - geometry (line 8) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_stddev_f64 (line 882) ... ok [INFO] [stdout] test src/constraints.rs - constraints::Constraints (line 25) ... ok [INFO] [stdout] test src/chart.rs - chart (line 13) ... ok [INFO] [stdout] test src/simd.rs - simd (line 12) ... ok [INFO] [stdout] test src/lib.rs - (line 29) ... ok [INFO] [stdout] test src/simd.rs - simd::batch_mean_f64 (line 687) ... ok [INFO] [stdout] test src/state.rs - state (line 8) ... ok [INFO] [stdout] test src/simd.rs - simd::percentile_sorted_f64 (line 948) ... ok [INFO] [stdout] test src/streaming.rs - streaming (line 17) ... ok [INFO] [stdout] test src/widget.rs - widget::TextStyle (line 218) ... ok [INFO] [stdout] test src/widget.rs - widget (line 26) ... ok [INFO] [stdout] test src/simd.rs - simd::normalize_with_range_f64 (line 799) ... ok [INFO] [stdout] test src/simd.rs - simd::normalize_f64 (line 767) ... ok [INFO] [stdout] test src/simd.rs - simd::weighted_sum_f64 (line 900) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 24 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out; finished in 3.29s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "484351a3318dcb276ee9ce5be8fdb6610e5e81788ab12089421690ad51ac1049", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "484351a3318dcb276ee9ce5be8fdb6610e5e81788ab12089421690ad51ac1049", kill_on_drop: false }` [INFO] [stdout] 484351a3318dcb276ee9ce5be8fdb6610e5e81788ab12089421690ad51ac1049