[INFO] fetching crate goud-engine-core 0.0.828...
[INFO] testing goud-engine-core-0.0.828 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] extracting crate goud-engine-core 0.0.828 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate goud-engine-core 0.0.828
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate goud-engine-core 0.0.828
[INFO] tweaked toml for crates.io crate goud-engine-core 0.0.828 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate goud-engine-core 0.0.828 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate goud-engine-core 0.0.828 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" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1d7fdcb72137df4db6a4f52fb4cf79333648adff619c67994262943d73ab1120
[INFO] running `Command { std: "docker" "start" "-a" "1d7fdcb72137df4db6a4f52fb4cf79333648adff619c67994262943d73ab1120", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1d7fdcb72137df4db6a4f52fb4cf79333648adff619c67994262943d73ab1120", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1d7fdcb72137df4db6a4f52fb4cf79333648adff619c67994262943d73ab1120", kill_on_drop: false }`
[INFO] [stdout] 1d7fdcb72137df4db6a4f52fb4cf79333648adff619c67994262943d73ab1120
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 038a7d30ab07682c5a95ee3865fb7ace86b9e08659b6732489593ba7fb742480
[INFO] running `Command { std: "docker" "start" "-a" "038a7d30ab07682c5a95ee3865fb7ace86b9e08659b6732489593ba7fb742480", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling symphonia-core v0.5.5
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling zerocopy v0.8.40
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling symphonia-metadata v0.5.5
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling rand_core v0.10.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling as-slice v0.2.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling symphonia-utils-xiph v0.5.5
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling built v0.8.0
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling av-scenechange v0.14.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]    Compiling aligned v0.4.3
[INFO] [stderr]    Compiling alsa-sys v0.4.0
[INFO] [stderr]    Compiling core2 v0.4.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling clap_lex v1.0.0
[INFO] [stderr]    Compiling y4m v0.8.0
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling pastey v0.1.1
[INFO] [stderr]    Compiling cbindgen v0.29.2
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling itoa v1.0.17
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.40
[INFO] [stderr]    Compiling equator v0.4.2
[INFO] [stderr]    Compiling aligned-vec v0.6.4
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling v_frame v0.3.9
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling av1-grain v0.2.5
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling profiling v1.0.17
[INFO] [stderr]    Compiling toml_parser v1.0.9+spec-1.1.0
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling bitstream-io v4.9.0
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling imgref v1.12.0
[INFO] [stderr]    Compiling cpufeatures v0.3.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling xml-rs v0.8.28
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling zune-core v0.4.12
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling zune-jpeg v0.4.21
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling chacha20 v0.10.0
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling glfw-sys v5.0.0+3.3.9
[INFO] [stderr]    Compiling toml v0.9.12+spec-1.1.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling fax v0.2.6
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling avif-serialize v0.8.8
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling extended v0.1.0
[INFO] [stderr]    Compiling bit_field v0.10.3
[INFO] [stderr]    Compiling lebe v0.5.3
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling pxfm v0.1.28
[INFO] [stderr]    Compiling zune-core v0.5.1
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling cpal v0.17.3
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling rgb v0.8.53
[INFO] [stderr]    Compiling zune-jpeg v0.5.12
[INFO] [stderr]    Compiling image-webp v0.2.4
[INFO] [stderr]    Compiling exr v1.74.0
[INFO] [stderr]    Compiling gltf-derive v1.4.1
[INFO] [stderr]    Compiling gif v0.14.1
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling alsa v0.11.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling ravif v0.12.0
[INFO] [stderr]    Compiling symphonia-format-riff v0.5.5
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling tiff v0.10.3
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling rand v0.10.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling symphonia-codec-vorbis v0.5.5
[INFO] [stderr]    Compiling symphonia-format-ogg v0.5.5
[INFO] [stderr]    Compiling symphonia-bundle-flac v0.5.5
[INFO] [stderr]    Compiling symphonia-format-isomp4 v0.5.5
[INFO] [stderr]    Compiling symphonia-bundle-mp3 v0.5.5
[INFO] [stderr]    Compiling symphonia-codec-aac v0.5.5
[INFO] [stderr]    Compiling symphonia-codec-pcm v0.5.5
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]    Compiling bindgen v0.64.0
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling dasp_sample v0.11.0
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling image v0.25.9
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling symphonia v0.5.5
[INFO] [stderr]    Compiling inotify v0.11.0
[INFO] [stderr]    Compiling goud-engine-core v0.0.828 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rand_distr v0.6.0
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling gltf-json v1.4.1
[INFO] [stderr]    Compiling env_filter v1.0.0
[INFO] [stderr]    Compiling approx v0.4.0
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling raw-window-handle v0.6.2
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling jiff v0.2.22
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling rtrb v0.3.3
[INFO] [stderr]    Compiling ttf-parser v0.21.1
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling tiled v0.15.0
[INFO] [stderr]    Compiling fontdue v0.9.3
[INFO] [stderr]    Compiling gltf v1.4.1
[INFO] [stderr]    Compiling rodio v0.22.1
[INFO] [stderr]    Compiling env_logger v0.11.9
[INFO] [stderr]    Compiling glfw v0.59.0
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling tobj v4.0.3
[INFO] [stderr]    Compiling goud_engine_macros v0.0.828
[INFO] [stderr] warning: goud-engine-core@0.0.828: 
[INFO] [stderr] warning: goud-engine-core@0.0.828: GoudEngine Build
[INFO] [stderr] warning: goud-engine-core@0.0.828:   FFI Manifest [OK]: codegen/ffi_manifest.json (280 functions)
[INFO] [stderr] warning: goud-engine-core@0.0.828: 
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 00s
[INFO] running `Command { std: "docker" "inspect" "038a7d30ab07682c5a95ee3865fb7ace86b9e08659b6732489593ba7fb742480", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "038a7d30ab07682c5a95ee3865fb7ace86b9e08659b6732489593ba7fb742480", kill_on_drop: false }`
[INFO] [stdout] 038a7d30ab07682c5a95ee3865fb7ace86b9e08659b6732489593ba7fb742480
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 02a30f385e5fa51644dd6889538edf936d79732ac0ad9543783203a49a661769
[INFO] running `Command { std: "docker" "start" "-a" "02a30f385e5fa51644dd6889538edf936d79732ac0ad9543783203a49a661769", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling husky-rs v0.1.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling tempfile v3.26.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling tobj v4.0.3
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling hound v3.5.1
[INFO] [stderr]    Compiling cbindgen v0.29.2
[INFO] [stderr]    Compiling goud_engine_macros v0.0.828
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling gltf-json v1.4.1
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling gltf v1.4.1
[INFO] [stderr]    Compiling goud-engine-core v0.0.828 (/opt/rustwide/workdir)
[INFO] [stderr] warning: goud-engine-core@0.0.828: 
[INFO] [stderr] warning: goud-engine-core@0.0.828: GoudEngine Build
[INFO] [stderr] warning: goud-engine-core@0.0.828:   FFI Manifest [OK]: codegen/ffi_manifest.json (280 functions)
[INFO] [stderr] warning: goud-engine-core@0.0.828: 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 15s
[INFO] running `Command { std: "docker" "inspect" "02a30f385e5fa51644dd6889538edf936d79732ac0ad9543783203a49a661769", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "02a30f385e5fa51644dd6889538edf936d79732ac0ad9543783203a49a661769", kill_on_drop: false }`
[INFO] [stdout] 02a30f385e5fa51644dd6889538edf936d79732ac0ad9543783203a49a661769
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9b46769a85c9b09fea6a8d325e57de37423977991b257a9ade1f3a13f0e572dd
[INFO] running `Command { std: "docker" "start" "-a" "9b46769a85c9b09fea6a8d325e57de37423977991b257a9ade1f3a13f0e572dd", kill_on_drop: false }`
[INFO] [stderr]    Compiling goud-engine-core v0.0.828 (/opt/rustwide/workdir)
[INFO] [stderr] warning: goud-engine-core@0.0.828: 
[INFO] [stderr] warning: goud-engine-core@0.0.828: GoudEngine Build
[INFO] [stderr] warning: goud-engine-core@0.0.828:   FFI Manifest [OK]: codegen/ffi_manifest.json (280 functions)
[INFO] [stderr] warning: goud-engine-core@0.0.828: 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 13s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/goud_engine-a5e005321925b9c8)
[INFO] [stdout] 
[INFO] [stdout] running 3775 tests
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_id_is_send ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_id_is_sync ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_align ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_default_asset ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_extensions ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_id ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_is_send ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_is_sync ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_of ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_size ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_clone ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_debug ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_default ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_debug ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_eq ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_discriminant ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_error ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_failure_path ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_display ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_display ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_info_clone ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_is_failed ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_is_loading ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_is_ready ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_progress ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_transitions ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_workflow ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_is_sync ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_type_is_send ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_multiple_asset_types ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_state_is_send ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_different_types ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_hash ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_of_raw ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_ord ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_is_send ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_is_static ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_display ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_of ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_trait_bounds ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_is_sync ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_type_id ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_count ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_all ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_debug ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_default ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_clone ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_is_gpu_asset ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_is_streamable ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_name ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_copy ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_debug ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_from_u8 ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_name_default ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_roundtrip_conversion ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_hash ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_try_from_u8 ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_extensions ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_extensions_default ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_active_count ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_allocate_player_id ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_cleanup_finished ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_debug ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_global_volume ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_is_finished ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_is_playing ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_is_send ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_is_sync ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_new ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_pause_resume ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_play_empty_asset ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_play_looped ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_play_with_settings ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_set_sink_speed ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_set_sink_volume ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_stop ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_stop_all ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_audio_manager_volume_clamping ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_exponential_beyond_max ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_exponential_dramatic_falloff ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_id_clone ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_exponential_half_distance ... ok
[INFO] [stdout] test assets::asset::tests::test_state_info::test_asset_type_is_sync ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_exponential_max_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_exponential_zero_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_inverse_beyond_max ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_inverse_max_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_inverse_realistic ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_linear_half_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_linear_quadratic_rolloff ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_inverse_zero_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_linear_max_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_linear_zero_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_linear_zero_max_distance ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_spatial_audio_attenuation_at_max ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_spatial_audio_attenuation_at_source ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_spatial_audio_play_empty_asset ... ignored
[INFO] [stdout] test assets::audio_manager::tests::test_spatial_audio_attenuation_diagonal ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_spatial_audio_update_volume_nonexistent ... ignored
[INFO] [stdout] test assets::dependency::tests::test_add_dependency_basic ... ok
[INFO] [stdout] test assets::dependency::tests::test_add_dependency_records_forward_and_reverse ... ok
[INFO] [stdout] test assets::dependency::tests::test_cascade_order_chain ... ok
[INFO] [stdout] test assets::dependency::tests::test_cascade_order_diamond ... ok
[INFO] [stdout] test assets::dependency::tests::test_cascade_order_no_dependents ... ok
[INFO] [stdout] test assets::dependency::tests::test_cascade_order_single_dependent ... ok
[INFO] [stdout] test assets::dependency::tests::test_clear ... ok
[INFO] [stdout] test assets::dependency::tests::test_cycle_error_display ... ok
[INFO] [stdout] test assets::dependency::tests::test_debug_format ... ok
[INFO] [stdout] test assets::dependency::tests::test_default ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_trait_asset_type_default ... ok
[INFO] [stdout] test assets::dependency::tests::test_asset_count ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_trait_asset_type_name ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_attenuation_comparison ... ok
[INFO] [stdout] test assets::asset::tests::test_trait_id_type::test_asset_type_display ... ok
[INFO] [stdout] test assets::audio_manager::tests::test_compute_attenuation_linear_beyond_max ... ok
[INFO] [stdout] test assets::dependency::tests::test_cascade_excludes_changed_asset ... ok
[INFO] [stdout] test assets::dependency::tests::test_duplicate_dependency_is_idempotent ... ok
[INFO] [stdout] test assets::dependency::tests::test_direct_cycle_detected ... ok
[INFO] [stdout] test assets::dependency::tests::test_multiple_dependencies_single_asset ... ok
[INFO] [stdout] test assets::dependency::tests::test_indirect_cycle_detected ... ok
[INFO] [stdout] test assets::dependency::tests::test_non_cycle_allowed ... ok
[INFO] [stdout] test assets::dependency::tests::test_remove_asset_cleans_forward_edges ... ok
[INFO] [stdout] test assets::dependency::tests::test_remove_asset_cleans_reverse_edges ... ok
[INFO] [stdout] test assets::dependency::tests::test_remove_asset_preserves_unrelated ... ok
[INFO] [stdout] test assets::dependency::tests::test_remove_nonexistent_is_noop ... ok
[INFO] [stdout] test assets::dependency::tests::test_self_dependency_is_cycle ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_allocate ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_deallocate_invalid ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_deallocate ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_deallocate_twice ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_allocate_unique ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_default ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_debug ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_generation_wrap ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_is_send ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_generation_at ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_clear ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_is_alive ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_len_and_capacity ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_new ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_shrink_to_fit ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_slot_reuse ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_with_capacity ... ok
[INFO] [stdout] test assets::handle::tests::integration_tests::test_mixed_handle_collection ... ok
[INFO] [stdout] test assets::handle::tests::integration_tests::test_weak_handle_usage ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_slot_reuse_multiple ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_clone ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_into_handle ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_default ... ok
[INFO] [stdout] test assets::handle::tests::integration_tests::test_handle_lifecycle ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_invalid ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_is_failed ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_is_loading ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_is_ready ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_stress_allocate_deallocate ... ok
[INFO] [stdout] test assets::handle::tests::allocator_tests::test_stress_churn ... ok
[INFO] [stdout] test assets::handle::tests::integration_tests::test_path_to_handle_workflow ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_new ... ok
[INFO] [stdout] test assets::handle::tests::load_state_tests::test_set_state ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_as_ref ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_debug ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_directory ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_display ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_equality ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_equality_with_str ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_file_name ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_from_str ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_from_string_into ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_from_path ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_extension ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_from_string ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_hash ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_into_owned ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_is_empty ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_join ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_new ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_stem ... ok
[INFO] [stdout] test assets::handle::tests::path_tests::test_with_extension ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_asset_id ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_asset_type ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_clone_copy ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_debug ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_equality ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_default ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_from_u64 ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_hash ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_from_into_u64 ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_is_send ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_invalid ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_display ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_is_sync ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_is_valid ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_new ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_ord ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_to_u64 ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_size_and_align ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_u64_roundtrip ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_debug ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::asset_handle::test_untyped ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_from_handle ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_default ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_clone_copy ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_equality ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_hash ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_from_ref ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_invalid ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_is_send ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_is_sync ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_new ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_size_and_align ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_clone_copy ... ok
[INFO] [stdout] test assets::handle::tests::typed_tests::weak_asset_handle::test_upgrade ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_default ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_equality ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_invalid ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_is_send ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_is_type ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_from_typed ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_new ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_hash ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_debug ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_display ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_is_sync ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_typed ... ok
[INFO] [stdout] test assets::handle::tests::untyped_tests::test_typed_unchecked ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_clone ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_default ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_should_watch_all ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_should_watch_allow_hidden ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_should_watch_hidden_files ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_should_watch_with_extension_filter ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_with_debounce ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_watch_extension ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_with_recursive ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_with_enabled ... ok
[INFO] [stdout] test assets::hot_reload::events::tests::test_created ... ok
[INFO] [stdout] test assets::hot_reload::events::tests::test_clone ... ok
[INFO] [stdout] test assets::hot_reload::events::tests::test_deleted ... ok
[INFO] [stdout] test assets::hot_reload::events::tests::test_display ... ok
[INFO] [stdout] test assets::hot_reload::events::tests::test_modified ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_debug ... ok
[INFO] [stdout] test assets::hot_reload::config::tests::test_should_watch_temp_files ... ok
[INFO] [stdout] test assets::hot_reload::events::tests::test_renamed ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_is_send ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_new ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_config_mut ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_custom ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_clone ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_watch ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_with_config ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_clear_debounce ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_decode_failed ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_io_error ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_unwatch ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_not_found ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_dependency_failed ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_binary_loader ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_debug ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_loader_with_settings ... ok
[INFO] [stdout] test assets::loader::tests::asset_load_error::test_unsupported_format ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_text_loader_extensions ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_text_loader_load_success ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_text_loader_supports_extension ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_loader_settings_limit_exceeded ... ok
[INFO] [stdout] test assets::loader::tests::integration::test_error_propagation ... ok
[INFO] [stdout] test assets::loader::tests::asset_loader::test_text_loader_load_invalid_utf8 ... ok
[INFO] [stdout] test assets::loader::tests::integration::test_full_workflow ... ok
[INFO] [stdout] test assets::loader::tests::integration::test_loader_registry_pattern ... ok
[INFO] [stdout] test assets::loader::tests::load_context::test_debug ... ok
[INFO] [stdout] test assets::loader::tests::load_context::test_extension ... ok
[INFO] [stdout] test assets::loader::tests::load_context::test_file_name ... ok
[INFO] [stdout] test assets::loader::tests::thread_safety::test_text_loader_sync ... ok
[INFO] [stdout] test assets::loader::tests::thread_safety::test_asset_load_error_sync ... ok
[INFO] [stdout] test assets::loader::tests::thread_safety::test_typed_loader_send ... ok
[INFO] [stdout] test assets::loader::tests::load_context::test_path_str ... ok
[INFO] [stdout] test assets::loader::tests::load_context::test_new ... ok
[INFO] [stdout] test assets::loader::tests::thread_safety::test_text_loader_send ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_boxed_collection ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_erased_load_failure ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_erased_supports_extension ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_erased_load_success ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_multiple_loaders ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_new ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_settings_accessor ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_settings_mut_accessor ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_with_settings ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_loader_accessor ... ok
[INFO] [stdout] test assets::loader::tests::typed_asset_loader::test_erased_extensions ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_channel_by_property ... ok
[INFO] [stdout] test assets::loader::tests::thread_safety::test_asset_load_error_send ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_clone ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_is_send ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_is_sync ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_asset_trait ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_is_empty ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_new ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_animation_channel_serde_roundtrip ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_serde_roundtrip ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_cubic_bezier_boundaries ... ok
[INFO] [stdout] test assets::loaders::animation::asset::tests::test_keyframe_animation_total_keyframe_count ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_ease_in_out_midpoint ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_ease_in_out_quarter ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_empty_keyframes_returns_zero ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_ease_out_faster_at_start ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_cubic_bezier_serde_roundtrip ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_easing_function_default_is_linear ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_linear_after_end_clamps ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_linear_at_end ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_ease_in_slower_at_start ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_linear_at_start ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_linear_before_start_clamps ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_single_keyframe_returns_value ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_step_holds_from_value ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_keyframe_serde_roundtrip ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_extensions ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_clone ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_is_send ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_is_sync ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_invalid_gltf ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_load_empty_bytes ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_load_empty_channels ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_load_invalid_json ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_load_invalid_utf8 ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_load_with_default_easing ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_bits_per_sample ... ok
[INFO] [stdout] test assets::loaders::animation::loader::tests::test_animation_loader_load_valid_json ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_linear_midpoint ... ok
[INFO] [stdout] test assets::loaders::animation::keyframe::tests::test_interpolate_linear_multiple_segments ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_clone ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_debug ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_duration_secs ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_is_mono ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_empty ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_new ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_clone ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_asset_trait ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_default ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_display ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_eq ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_extension ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_debug ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_debug ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_from_extension ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_default ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_format_name ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_clone ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_empty_bytes_returns_error ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_invalid_bytes_returns_error ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_load_unknown_extension ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_extensions ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_new ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_with_settings ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_settings_custom ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_settings_debug ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_extracts_wav_metadata ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_settings_default ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_asset_trait ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_types_are_send_and_sync ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_load_wav ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_clone ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_debug ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_deserialize_type_mismatch ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_deserialize_into_struct ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_get_missing_key ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_get_existing_key ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_is_array ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_into_data ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_is_object ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_default ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_asset::test_new ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_display ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_equality ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_shared_decode_path ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_settings_clone ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_from_extension_unknown ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_name ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_clone ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_debug ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_extensions ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_from_extension_toml ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_from_extension_json ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_format::test_extension ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_invalid_json ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_json_array ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_json_then_deserialize ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_invalid_toml ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_empty_json_object ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_valid_json ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_new ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_valid_toml ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_load_toml_with_types ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_debug ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_clone ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_is_send ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_is_empty ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_size_bytes ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_is_sync ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_new ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_trait_asset_type ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_clone_and_copy ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_trait_extensions ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_debug ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_asset_trait_type_name ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_default ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_display ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_eq ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_from_extension_case_insensitive ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_from_extension_otf ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_extension ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_from_extension_ttf ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_from_extension_unknown ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_debug ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_clone ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_is_send ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_format_name ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_extensions ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_is_sync ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_load_invalid_bytes_returns_decode_failed ... ok
[INFO] [stdout] test assets::loaders::config::tests::config_loader::test_default ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_load_empty_bytes_returns_error ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_settings_clone ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_registration_with_asset_server ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_settings_debug ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_loader_load_valid_ttf_success ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_settings_default ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_settings_custom ... ok
[INFO] [stdout] test assets::loaders::font::tests::test_font_style_default ... ok
[INFO] [stdout] test assets::loaders::gltf_utils::tests::test_decode_base64_empty ... ok
[INFO] [stdout] test assets::loaders::gltf_utils::tests::test_decode_base64_invalid ... ok
[INFO] [stdout] test assets::loaders::gltf_utils::tests::test_decode_base64_no_padding ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_asset_trait ... ok
[INFO] [stdout] test assets::loaders::gltf_utils::tests::test_decode_base64_simple ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_clone ... ok
[INFO] [stdout] test assets::loaders::gltf_utils::tests::test_decode_data_uri ... ok
[INFO] [stdout] test assets::loaders::gltf_utils::tests::test_decode_data_uri_unsupported ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_empty_uniforms_and_textures ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_get_texture_slot_missing ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_get_uniform_existing ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_debug ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_new_and_accessors ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_get_texture_slot_existing ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_default ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_all_uniform_variants_in_json ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_clone ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_debug ... ok
[INFO] [stdout] test assets::loaders::audio::tests::test_audio_loader_duration_calculated ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_dependency_count ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_asset::test_get_uniform_missing ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_dependency_declaration_textures ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_extensions ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_dependency_declaration_shader ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_load_missing_required_name_field ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_load_missing_required_shader_path_field ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_new ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_clone ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_load_invalid_json ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_load_minimal_material_defaults_optional_fields ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_debug ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_inequality ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_int_variant ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_float_variant ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_mat4_variant ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_vec2_variant ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_vec3_variant ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_serialize_deserialize_roundtrip ... ok
[INFO] [stdout] test assets::loaders::material::tests::uniform_value::test_vec4_variant ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_minimal_material_has_only_shader_dependency ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::gltf_tests::test_gltf_parse_invalid_data ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::gltf_tests::test_gltf_parse_empty_glb ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::gltf_tests::test_gltf_submesh_extraction ... ok
[INFO] [stdout] test assets::loaders::material::tests::material_loader::test_load_valid_material ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::obj_tests::test_obj_parse_invalid_data ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::gltf_tests::test_gltf_parse_triangle_glb ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::obj_tests::test_obj_parse_no_normals_defaults ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::obj_tests::test_obj_parse_multi_object ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::obj_tests::test_obj_submesh_indices ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_asset_counts ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::obj_tests::test_obj_parse_triangle ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_asset_extensions ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_format_from_extension ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_asset_empty ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_loader_extensions ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_asset_to_interleaved_floats ... ok
[INFO] [stdout] test assets::loaders::rodio_integration::tests::test_rodio_availability ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_sub_mesh_serde_roundtrip ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_asset_type ... ok
[INFO] [stdout] test assets::loaders::rodio_integration::tests::test_rodio_decoder_available ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_default ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_add_stage ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_defines ... ok
[INFO] [stdout] test assets::loaders::rodio_integration::tests::test_rodio_source_traits_available ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_implements_asset ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_get_stage ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_is_compute_shader ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_display ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_loader_unsupported_extension ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_new ... ok
[INFO] [stdout] test assets::loaders::mesh::tests::test_mesh_vertex_serde_roundtrip ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_is_send_sync ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_remove_stage ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_stages_iterator ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_validate_compute_only ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_total_size_bytes ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_is_graphics_shader ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_validate_compute_with_others ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_validate_empty ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_validate_graphics_missing_fragment ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_validate_graphics_complete ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_validate_graphics_missing_vertex ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_asset_with_name ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_format_default ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_format_name ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_settings_default ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_full_workflow_combined ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_settings_clone ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_detect_format_combined ... ok
[INFO] [stdout] test assets::loaders::shader::tests::asset_tests::test_shader_format_display ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_detect_format_single_stage ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_is_send_sync ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_extensions ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_invalid_utf8 ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_no_extension ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_combined_case_insensitive ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_combined ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_no_validation ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_single_stage_fragment ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_single_stage_vertex ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_sets_name ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_validation_failure ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_load_unsupported_extension ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_new ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_default_version ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_with_defines ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_extract_version ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_is_empty ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_display ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_line_count ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_size_bytes ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_validate_empty ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_validate_no_main ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_validate_no_version ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_validate_success ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_shader_loader_with_settings ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_is_send_sync ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_all ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_source_new ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_display ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_extensions ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_is_send_sync ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_default ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_names ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_from_directive ... ok
[INFO] [stdout] test assets::loaders::shader::tests::stage_tests::test_shader_stage_from_extension ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_aspect_ratio ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_asset_trait ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_clone ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_get_pixel ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_new ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_bytes_per_pixel ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_debug ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_pixel_count ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_is_power_of_two ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_color_space::test_display ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_size_bytes ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_color_space::test_equality ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_color_space::test_name ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_color_space::test_default ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_clone ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_default ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_equality ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_extension ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_display ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_clone ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_from_extension ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_debug ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_default ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_extensions ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_load_invalid_data ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_load_from_bytes ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_load_png ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_settings::test_clone ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_settings::test_debug ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_load_with_flip ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_settings::test_default ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_loader::test_new ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_format::test_name ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_wrap_mode::test_default ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_wrap_mode::test_equality ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_wrap_mode::test_display ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_wrap_mode::test_name ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::integration::test_full_workflow ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::integration::test_error_handling ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::thread_safety::test_texture_asset_send ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::thread_safety::test_texture_asset_sync ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::thread_safety::test_texture_loader_sync ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::thread_safety::test_texture_settings_sync ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::integration::test_different_formats ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_asset_type_metadata ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::thread_safety::test_texture_settings_send ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_camera_beyond_map ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_tiled_map_asset_layer_count ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_clamped_to_map ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_exact_tile_boundary ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_full_map ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_negative_camera ... ok
[INFO] [stdout] test assets::loaders::texture::tests_integration::thread_safety::test_texture_loader_send ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_partial ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_zero_map_size ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_visible_tile_range_zero_tile_size ... ok
[INFO] [stdout] test assets::loaders::tiled_map::layer::tests::test_map_object_default_properties ... ok
[INFO] [stdout] test assets::loaders::tiled_map::layer::tests::test_object_layer_construction ... ok
[INFO] [stdout] test assets::loaders::tiled_map::layer::tests::test_tile_layer_get_gid_out_of_bounds ... ok
[INFO] [stdout] test assets::loaders::tiled_map::layer::tests::test_tile_layer_get_gid_valid ... ok
[INFO] [stdout] test assets::loaders::tiled_map::layer::tests::test_tile_layer_is_empty_at ... ok
[INFO] [stdout] test assets::loaders::tiled_map::loader::tests::test_tiled_map_loader_empty_bytes ... ok
[INFO] [stdout] test assets::loaders::tiled_map::loader::tests::test_tiled_map_loader_extensions ... ok
[INFO] [stdout] test assets::loaders::tiled_map::loader::tests::test_tiled_map_loader_invalid_bytes ... ok
[INFO] [stdout] test assets::loaders::tiled_map::loader::tests::test_tiled_map_loader_supports_extension ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_load_async_deduplication ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_load_async_becomes_loaded_after_process ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_load_async_failed_file_not_found ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_load_async_no_loader_fails_immediately ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_load_async_multiple_asset_types ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_load_async_returns_handle_in_loading_state ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_clear ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_clear_type ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_main_thread_not_blocked ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_get_mut ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_handles_iterator ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_iter ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_load_and_get ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_load_deduplication ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_load_nonexistent_file ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_load_unsupported_extension ... ok
[INFO] [stdout] test assets::server::async_tests::async_loading_tests::test_process_loads_returns_count ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_loaded_count ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_registered_type_count ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_multiple_asset_types ... ok
[INFO] [stdout] test assets::server::tests::asset_operations::test_unload ... ok
[INFO] [stdout] test assets::server::tests::asset_server::test_debug ... ok
[INFO] [stdout] test assets::server::tests::asset_server::test_default ... ok
[INFO] [stdout] test assets::server::tests::asset_server::test_new ... ok
[INFO] [stdout] test assets::server::tests::asset_server::test_set_asset_root ... ok
[INFO] [stdout] test assets::server::tests::asset_server::test_with_root ... ok
[INFO] [stdout] test assets::server::tests::load_from_bytes::test_load_from_bytes_decode_error ... ok
[INFO] [stdout] test assets::server::tests::load_from_bytes::test_load_from_bytes_deduplication ... ok
[INFO] [stdout] test assets::server::tests::load_from_bytes::test_load_from_bytes_multiple_types ... ok
[INFO] [stdout] test assets::server::tests::load_from_bytes::test_load_from_bytes_success ... ok
[INFO] [stdout] test assets::server::tests::load_from_bytes::test_load_from_bytes_unsupported_extension ... ok
[INFO] [stdout] test assets::server::tests::loader_registration::test_has_loader_for_extension ... ok
[INFO] [stdout] test assets::server::tests::loader_registration::test_has_loader_for_type ... ok
[INFO] [stdout] test assets::server::tests::loader_registration::test_register_loader ... ok
[INFO] [stdout] test assets::server::tests::loader_registration::test_register_loader_with_settings ... ok
[INFO] [stdout] test assets::server::tests::loader_registration::test_register_multiple_loaders ... ok
[INFO] [stdout] test assets::server::tests::thread_safety::test_asset_server_is_send ... ok
[INFO] [stdout] test assets::server::tests_dependency::test_compound_extension_loader_lookup ... ok
[INFO] [stdout] test assets::server::tests_dependency::test_dependency_graph_accessible ... ok
[INFO] [stdout] test assets::server::tests_dependency::test_load_records_dependencies_in_graph ... ok
[INFO] [stdout] test assets::server::tests_dependency::test_manual_dependency_and_cascade ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_clear ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_clear_type ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_debug ... ok
[INFO] [stdout] test assets::server::tests_dependency::test_unload_cleans_dependency_graph ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_default ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_entry ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_mut ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_or_create_storage ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_state ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_state_untyped ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_storage ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_handles ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_has_type ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_get_by_path ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_insert ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_insert_with_path ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_insert_multiple_types ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_is_empty_type ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_iter ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_new ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_len ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_registered_types ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_remove ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_reserve ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_remove_untyped ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_set_loaded ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_is_alive_untyped ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_type_isolation ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_set_path ... ok
[INFO] [stdout] test assets::storage::tests::test_container::test_stress_multiple_types ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_asset_mut ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_clear_path ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_clone ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_debug ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_default ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_loaded ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_loading ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_set_failed ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_set_loaded ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_empty ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_set_progress ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_set_unloaded ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_failed ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_take_asset ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_set_path ... ok
[INFO] [stdout] test assets::loader::tests::thread_safety::test_typed_loader_sync ... ok
[INFO] [stdout] test assets::loaders::shader::tests::loader_tests::test_full_workflow_single_stage ... ok
[INFO] [stdout] test assets::loaders::tiled_map::asset::tests::test_tiled_map_asset_pixel_dimensions ... ok
[INFO] [stdout] test assets::storage::tests::test_entry::test_with_path ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_as_any_downcast ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_asset_storage_is_send ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_asset_entry_is_send ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_asset_entry_is_sync ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_asset_id ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_asset_info ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_asset_storage_is_sync ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_get_path_untyped ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_get_state_untyped ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_remove_untyped ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_clear ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_remove_untyped_wrong_type ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_typed_storage_is_send ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_clear_path ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_debug ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_clear ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_by_path ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_entry ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_invalid ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_typed_storage_is_sync ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_handle_by_path ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_is_alive_raw ... ok
[INFO] [stdout] test assets::storage::tests::test_thread_safety::test_len_and_is_empty ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_state ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_mut ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_handles ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_insert_multiple ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_default ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_insert ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_insert_with_path_deduplication ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_insert_with_path ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_get_stale ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_paths ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_remove_with_path ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_reserve ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_iter ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_reserve_with_path ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_remove ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_remove_invalid ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_set_loaded ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_set_path_replaces_old ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_set_loaded_invalid_handle ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_slot_reuse ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_set_path ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_stale_path_index ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_new ... ok
[INFO] [stdout] test assets::storage::tests::test_typed::test_with_capacity ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_load_duplicate_name_errors ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_load_scene_from_json ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_load_then_unload_entity_count_returns_to_zero ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_deferred_load_invalid_json_returns_error ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_load_scene_creates_entities ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_deferred_load_creates_scene ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_create_duplicate_fails ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_save_scene_to_json ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_unload_nonexistent_scene_errors ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_destroy_default_fails ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_create_scene ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_destroy_removes_from_active ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_default_scene_on_new ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_destroy_nonexistent_fails ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_destroy_scene ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_entity_isolation ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_get_scene_by_name ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_multiple_active_scenes ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_set_active_nonexistent_fails ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_set_inactive ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_slot_reuse_after_destroy ... ok
[INFO] [stdout] test context_registry::scene::manager::tests::test_set_active_idempotent ... ok
[INFO] [stdout] test context_registry::scene::prefab::tests::test_nested_prefab_instantiation ... ok
[INFO] [stdout] test context_registry::scene::prefab::tests::test_prefab_from_entity_and_instantiate ... ok
[INFO] [stdout] test context_registry::scene::prefab::tests::test_prefab_from_invalid_json_errors ... ok
[INFO] [stdout] test context_registry::scene::loading::tests::test_unload_scene_removes_from_manager ... ok
[INFO] [stdout] test context_registry::scene::prefab::tests::test_cycle_detection_errors ... ok
[INFO] [stdout] test context_registry::scene::prefab_asset::tests::test_prefab_asset_loader_invalid_utf8_errors ... ok
[INFO] [stdout] test context_registry::scene::prefab_asset::tests::test_prefab_asset_loader_invalid_json_errors ... ok
[INFO] [stdout] test context_registry::scene::prefab_asset::tests::test_prefab_asset_loader_roundtrip ... ok
[INFO] [stdout] test context_registry::scene::prefab::tests::test_prefab_json_roundtrip ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_binary_from_invalid_bytes_returns_error ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_binary_roundtrip ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_json_roundtrip ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_roundtrip_empty_scene ... ok
[INFO] [stdout] test context_registry::scene::prefab::tests::test_instantiate_100_times_isolation ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_roundtrip_with_transform_and_name ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_sprite_texture_path_roundtrip ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_roundtrip_with_hierarchy ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_roundtrip_multiple_entities ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_scene_from_invalid_json_returns_error ... ok
[INFO] [stdout] test context_registry::tests::test_context_debug ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_copy_clone ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_default ... ok
[INFO] [stdout] test context_registry::scene::serialization::tests::test_serialize_empty_scene ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_display ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_equality ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_hash ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_invalid ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_is_send ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_new ... ok
[INFO] [stdout] test context_registry::tests::test_context_id_is_sync ... ok
[INFO] [stdout] test context_registry::tests::test_full_lifecycle ... ok
[INFO] [stdout] test context_registry::tests::test_context_new ... ok
[INFO] [stdout] test context_registry::tests::test_context_validate_thread ... ok
[INFO] [stdout] test context_registry::tests::test_context_world_access ... ok
[INFO] [stdout] test context_registry::tests::test_handle_create_multiple ... ok
[INFO] [stdout] test context_registry::tests::test_handle_default ... ok
[INFO] [stdout] test context_registry::tests::test_handle_create ... ok
[INFO] [stdout] test context_registry::tests::test_handle_debug ... ok
[INFO] [stdout] test context_registry::tests::test_handle_new ... ok
[INFO] [stdout] test context_registry::tests::test_registry_create ... ok
[INFO] [stdout] test context_registry::tests::test_handle_destroy ... ok
[INFO] [stdout] test context_registry::tests::test_registry_debug ... ok
[INFO] [stdout] test context_registry::tests::test_multiple_contexts_isolation ... ok
[INFO] [stdout] test context_registry::tests::test_many_concurrent_contexts ... ok
[INFO] [stdout] test context_registry::tests::test_registry_destroy ... ok
[INFO] [stdout] test context_registry::tests::test_registry_create_multiple ... ok
[INFO] [stdout] test context_registry::tests::test_handle_clone ... ok
[INFO] [stdout] test context_registry::tests::test_registry_destroy_invalid ... ok
[INFO] [stdout] test context_registry::tests::test_registry_destroy_twice ... ok
[INFO] [stdout] test context_registry::tests::test_registry_generation_increment ... ok
[INFO] [stdout] test context_registry::tests::test_registry_free_list_reuse ... ok
[INFO] [stdout] test context_registry::tests::test_registry_get ... ok
[INFO] [stdout] test context_registry::tests::test_registry_get_invalid ... ok
[INFO] [stdout] test context_registry::tests::test_registry_is_valid ... ok
[INFO] [stdout] test context_registry::tests::test_registry_get_mut ... ok
[INFO] [stdout] test context_registry::tests::test_registry_new ... ok
[INFO] [stdout] test context_registry::tests::test_stale_id_detection ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_error_category_classification ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_input_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_is_success_and_is_error ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_error_code_ranges_are_non_overlapping ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_success_code_is_zero ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_unknown_category_for_out_of_range ... ok
[INFO] [stdout] test core::error::tests::codes_tests::test_error_codes_within_category_bounds ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_all_context_errors_in_context_category ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_context_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_already_initialized_error_code ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_initialization_failed_preserves_message ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_initialization_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_goud_error_derives ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_context_destroyed_error_code ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_invalid_context_error_code ... ok
[INFO] [stdout] test core::error::tests::context_propagation::test_clear_last_error_clears_context ... ok
[INFO] [stdout] test core::error::tests::context_errors::test_not_initialized_error_code ... ok
[INFO] [stdout] test core::error::tests::context_propagation::test_context_defaults_to_none_when_not_provided ... ok
[INFO] [stdout] test core::error::tests::context_propagation::test_set_last_error_with_context_populates_subsystem_and_operation ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_component_already_exists_error_code ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_component_not_found_error_code ... ok
[INFO] [stdout] test core::error::tests::context_propagation::test_take_last_error_clears_context ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_already_exists_error_code ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_error_code_gaps_for_future_expansion ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_error_codes_are_distinct ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_error_debug_format ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_not_found_error_code ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_all_entity_errors_in_entity_category ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_query_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_entity_error_equality ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_clear_last_error ... ok
[INFO] [stdout] test core::error::tests::entity_errors::test_query_failed_preserves_message ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_default ... ok
[INFO] [stdout] test core::error::tests::context_propagation::test_set_last_error_without_context_clears_previous_context ... ok
[INFO] [stdout] test context_registry::tests::test_stress_create_destroy ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_code_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_goud_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_derive_traits ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_goud_result ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_code_success ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_error_with_message ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_success_workflow_simulation ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_result_ok ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_from_result_err ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_success ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_result_repr_c ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_get_does_not_clear_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_last_error_code_no_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_overwrite_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_ffi_workflow_simulation ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_set_and_get_last_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_take_clears_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_last_error_code_with_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_multiple_threads_independent_errors ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_backend_not_supported_error_code ... ok
[INFO] [stdout] test assets::hot_reload::watcher::tests::test_process_events_disabled ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_last_error_message_with_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_last_error_message_no_error ... ok
[INFO] [stdout] test core::error::tests::ffi_tests::test_thread_isolation ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_all_graphics_errors_in_graphics_category ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_draw_call_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_graphics_error_code_gaps_for_future_expansion ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_graphics_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_graphics_error_codes_are_distinct ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_graphics_error_equality ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_graphics_error_debug_format ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_graphics_errors_preserve_message ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_shader_link_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_render_target_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_texture_creation_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_buffer_creation_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::graphics_errors::test_shader_compilation_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_error_codes_are_distinct ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_all_internal_errors_in_internal_category ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_error_debug_format ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_error_error_code ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_error_equality ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_invalid_state_error_code ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_errors_preserve_message ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_not_implemented_error_code ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_degraded_codes_return_degraded ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_every_error_code_has_nonempty_hint ... ok
[INFO] [stdout] test core::error::tests::internal_errors::test_internal_error_code_ordering ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_fatal_codes_return_fatal ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_is_recoverable_helper ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_is_fatal_helper ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_recoverable_codes_return_recoverable ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_recovery_class_repr_values ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_specific_recovery_hints ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_success_returns_recoverable ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_success_has_empty_hint ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_handle_expired_error_code ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_handle_type_mismatch_error_code ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_all_resource_errors_in_resource_category ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_invalid_handle_error_code ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_handle_error_codes_are_distinct ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_error_debug_format ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_error_equality ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_already_exists_error_code ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_load_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_not_found_error_code ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_unknown_code_has_fallback_hint ... ok
[INFO] [stdout] test core::error::tests::recovery_tests::test_unknown_code_returns_recoverable ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_errors_preserve_message ... ok
[INFO] [stdout] test core::error::tests::resource_errors::test_resource_invalid_format_error_code ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_all_err_constants_have_mappings ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_internal_errors ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_from_error_code_uses_empty_string_for_payloads ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_context_errors ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_entity_errors ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_graphics_errors ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_input_errors ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_resource_errors ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_physics_init_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_round_trip_system_errors ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_success_returns_none ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_all_system_errors_in_system_category ... ok
[INFO] [stdout] test core::error::tests::round_trip::test_unknown_code_returns_none ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_audio_init_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_platform_error_error_code ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_system_error_code_gaps_for_future_expansion ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_system_error_codes_are_distinct ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_system_error_codes_in_valid_range ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_window_creation_failed_error_code ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_system_error_debug_format ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_system_error_equality ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_format_context_errors ... ok
[INFO] [stdout] test core::error::tests::system_errors::test_system_errors_preserve_message ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_format_resource_errors ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_format_graphics_errors ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_format_system_errors ... ok
[INFO] [stdout] test core::error::tests::traits::test_error_trait_implementation ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_format_entity_errors ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_format_internal_errors ... ok
[INFO] [stdout] test core::error::tests::traits::test_display_versus_debug ... ok
[INFO] [stdout] test core::error::tests::traits::test_from_io_error_not_found ... ok
[INFO] [stdout] test core::error::tests::traits::test_goud_error_initialization_failed_has_correct_code ... ok
[INFO] [stdout] test core::error::tests::traits::test_error_can_be_boxed ... ok
[INFO] [stdout] test core::error::tests::traits::test_from_io_error_other ... ok
[INFO] [stdout] test core::error::tests::traits::test_from_io_error_permission_denied ... ok
[INFO] [stdout] test core::error::tests::traits::test_from_str ... ok
[INFO] [stdout] test core::error::tests::traits::test_goud_error_not_initialized_has_correct_code ... ok
[INFO] [stdout] test core::error::tests::traits::test_goud_result_with_question_mark ... ok
[INFO] [stdout] test core::error::tests::traits::test_message_method ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_default ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_clear ... ok
[INFO] [stdout] test core::error::tests::traits::test_goud_result_err ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_is_send_sync ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_drain ... ok
[INFO] [stdout] test core::error::tests::traits::test_goud_result_ok ... ok
[INFO] [stdout] test core::error::tests::traits::test_from_string ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_send_batch ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_send_read_cycle ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_update_clears_old ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_writer ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_drain ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_default ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_drain_empty ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_multi_frame_lifecycle ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_multiple_readers ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_clear ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_new ... ok
[INFO] [stdout] test core::event::tests::tests_events_resource::test_events_new ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_preserves_order ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_send ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_queue_swap_buffers ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_reader_multiple_independent ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_reader_new ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_reader_tracks_position ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_reader_no_rereading ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_trait_bounds ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_primitive_types_are_events ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_simple_struct_is_event ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_reader_clear ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_tuple_struct_event ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_reader_reads_all ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_event_with_string ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_arc_wrapped_event ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_reader_empty_queue ... ok
[INFO] [stdout] test core::event::tests::tests_queue_reader::test_unit_struct_event ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_reader_iter_exact_size ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_container_of_events ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_empty_batch ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_exclusive_access ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_new ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_preserves_order ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_reader_integration ... ok
[INFO] [stdout] test core::events::tests::test_all_events_are_static ... ok
[INFO] [stdout] test core::events::tests::test_all_events_implement_event_trait ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_send_batch ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_send_batch_iterator ... ok
[INFO] [stdout] test core::events::tests::test_app_exiting_default ... ok
[INFO] [stdout] test core::events::tests::test_app_exiting_error ... ok
[INFO] [stdout] test core::events::tests::test_all_events_are_send_sync ... ok
[INFO] [stdout] test core::event::tests::tests_writer_resource::test_event_writer_send ... ok
[INFO] [stdout] test core::events::tests::test_app_exiting_programmatic ... ok
[INFO] [stdout] test core::events::tests::test_app_exiting_user ... ok
[INFO] [stdout] test core::events::tests::test_app_started_debug ... ok
[INFO] [stdout] test core::events::tests::test_app_started_default ... ok
[INFO] [stdout] test core::events::tests::test_frame_ended_default ... ok
[INFO] [stdout] test core::events::tests::test_events_are_clone ... ok
[INFO] [stdout] test core::events::tests::test_frame_ended_new ... ok
[INFO] [stdout] test core::events::tests::test_events_are_copy ... ok
[INFO] [stdout] test core::events::tests::test_events_are_hashable ... ok
[INFO] [stdout] test core::events::tests::test_frame_started_default ... ok
[INFO] [stdout] test core::events::tests::test_frame_ended_frame_time_secs ... ok
[INFO] [stdout] test core::events::tests::test_exit_reason_default ... ok
[INFO] [stdout] test core::events::tests::test_frame_started_fps_zero_delta ... ok
[INFO] [stdout] test core::events::tests::test_frame_started_fps ... ok
[INFO] [stdout] test core::events::tests::test_frame_started_new ... ok
[INFO] [stdout] test core::events::tests::test_window_focused_default ... ok
[INFO] [stdout] test core::events::tests::test_window_close_requested_default ... ok
[INFO] [stdout] test core::events::tests::test_window_focused_lost ... ok
[INFO] [stdout] test core::events::tests::test_window_moved_default ... ok
[INFO] [stdout] test core::events::tests::test_window_focused_gained ... ok
[INFO] [stdout] test core::events::tests::test_window_moved_negative ... ok
[INFO] [stdout] test core::events::tests::test_window_moved_new ... ok
[INFO] [stdout] test core::events::tests::test_window_resized_aspect_ratio ... ok
[INFO] [stdout] test core::events::tests::test_window_resized_aspect_ratio_zero_height ... ok
[INFO] [stdout] test core::events::tests::test_window_focused_new ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_deallocate ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_allocate_multiple ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_deallocate_invalid ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_debug_format ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_default ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_allocate_single ... ok
[INFO] [stdout] test core::events::tests::test_window_resized_default ... ok
[INFO] [stdout] test core::events::tests::test_window_resized_new ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_double_deallocate ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_len_and_capacity ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_generation_prevents_aba ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_new ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_slot_reuse ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_clear_and_reallocate ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_is_alive ... ok
[INFO] [stdout] test core::handle::tests::allocator_tests::test_allocator_generation_wrapping ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_clear_basic ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_clear_with_some_deallocated ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_shrink_to_fit_empty ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_with_capacity_zero ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_shrink_to_fit ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_with_capacity ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_clear_empty ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_clear_multiple_times ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_clone ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_copy ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_debug_format ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_different_types_not_comparable ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_debug_invalid ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_edge_cases ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_from_trait_u64 ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_eq_reflexive_symmetric_transitive ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_default ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_into_trait_from_u64 ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_new_and_accessors ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_hash_consistency ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_partial_eq ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_invalid_constant ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_size_and_alignment ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_to_u64_and_from_u64 ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_u64_edge_cases ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_is_valid ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_u64_pack_format ... ok
[INFO] [stdout] test core::handle::tests::handle_tests::test_handle_hash_in_hashmap ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_handles_iterator ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_into_iterator_mut_ref ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_count ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_into_iterator_ref ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_after_clear ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_empty ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_mut_modifies_in_place ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_size_hint ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_skips_removed ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_values_iterator ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_values_mut_iterator ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_stress ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_clear ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_clear_and_reinsert ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_basic ... ok
[INFO] [stdout] test core::handle::tests::map_advanced_tests::test_handle_map_values_with_complex_types ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_mut_basic ... ok
[INFO] [stdout] test core::handle::tests::iterator_tests::test_handle_map_iter_with_gaps ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_contains ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_get ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_debug ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_default ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_get_invalid_handle ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_generation_safety ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_insert_multiple ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_get_mut_invalid ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_insert_single ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_len_and_capacity ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_new ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_get_mut ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_remove ... ok
[INFO] [stdout] test core::handle::tests::map_advanced_tests::test_handle_map_stress ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_shrink_to_fit ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_remove_drops_value ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_with_capacity ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_slot_reuse ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_remove_returns_none_for_invalid ... ok
[INFO] [stdout] test core::handle::tests::map_tests::test_handle_map_reserve ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_count ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_just_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_just_released ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_mapping_persistence_across_clear ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_mapping_persistence_across_update ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_mapping_string_ownership ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_multiple_input_types ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_names ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_pressed_nonexistent ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_strength ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_action_strength_nonexistent ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_clear_action ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_clear_all_actions ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_get_action_bindings_nonexistent ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_has_action ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_map_action_basic ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_map_action_multiple_bindings ... ok
[INFO] [stdout] test core::input_manager::tests::actions::test_unmap_action ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_buffered_inputs_iterator ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_buffer_max_size ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_buffer_not_cleared_by_state_clear ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_buffer_only_new_presses ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_buffer_size ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_clear_buffer ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_consume_sequence ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_consume_sequence_not_detected ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_double_tap_detection ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_fighting_game_combo ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_detected_with_extra_inputs ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_detected_basic ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_detected_empty ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_detected_wrong_order ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_detected_partial ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_mixed_input_types ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_sequence_persistence_across_update ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_connected_gamepads_iterator ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_axes_update_persistence ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_axis_basic ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_axis_deadzone ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_axis_nonexistent_gamepad ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_button_just_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_button_just_released ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_set_buffer_duration ... ok
[INFO] [stdout] test core::handle::tests::capacity_tests::test_allocator_stress_100k_allocations ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_connection ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_with_buffer_duration ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_connection_nonexistent ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_time_since_last_input ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_button_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_capacity_expansion ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_expansion ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_multiple_gamepads ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_left_stick ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_multiple_gamepads_axes ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_right_stick ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_stick_magnitude ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_state_clear_preserves_connection ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_triggers ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_input_binding_gamepad_button ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_stop_all_vibration ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_set_analog_deadzone ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_gamepad_vibration ... ok
[INFO] [stdout] test core::input_manager::tests::gamepad::test_stop_gamepad_vibration ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_input_binding_eq ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_clone ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_debug ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_input_binding_hash ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_input_binding_key ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_key_just_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_default ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_key_just_released ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_keys_pressed_iterator ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_key_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_input_binding_mouse_button ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_button_just_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_new_input_manager ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_clear ... ok
[INFO] [stdout] test core::input_manager::tests::keyboard::test_update_copies_state ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_button_pressed ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_buttons_pressed_iterator ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_button_just_released ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_input_binding_display ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_delta ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_scroll_delta_reset_on_update ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_position ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_scroll_delta ... ok
[INFO] [stdout] test core::math::easing::tests::test_bezier_css_ease ... ok
[INFO] [stdout] test core::math::easing::tests::test_bezier_linear ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_in_back_boundaries ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_in_boundaries ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_in_back_overshoots_negative ... ok
[INFO] [stdout] test core::input_manager::tests::mouse::test_mouse_delta_reset_on_update ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_in_is_slow_start ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_in_out_boundaries ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_out_boundaries ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_in_out_midpoint ... ok
[INFO] [stdout] test core::math::easing::tests::test_easing_enum_delegates ... ok
[INFO] [stdout] test core::math::easing::tests::test_easing_enum_cubic_bezier ... ok
[INFO] [stdout] test core::math::easing::tests::test_linear_midpoint ... ok
[INFO] [stdout] test core::math::tests::test_color_constants ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_out_bounce_boundaries ... ok
[INFO] [stdout] test core::math::easing::tests::test_linear_boundaries ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_out_is_slow_end ... ok
[INFO] [stdout] test core::math::tests::test_color_from_hex ... ok
[INFO] [stdout] test core::math::easing::tests::test_ease_out_bounce_midpoint_above_half ... ok
[INFO] [stdout] test core::math::tests::test_color_with_alpha ... ok
[INFO] [stdout] test core::math::tests::test_color_from_u8 ... ok
[INFO] [stdout] test core::math::tests::test_color_lerp ... ok
[INFO] [stdout] test core::math::tests::test_color_vec_conversions ... ok
[INFO] [stdout] test core::math::tests::test_rect_accessors ... ok
[INFO] [stdout] test core::math::tests::test_rect_contains ... ok
[INFO] [stdout] test core::math::tests::test_rect_constructors ... ok
[INFO] [stdout] test core::math::tests::test_ffi_layout_sizes ... ok
[INFO] [stdout] test core::math::tests::test_rect_from_min_max ... ok
[INFO] [stdout] test core::math::tests::test_vec2_cgmath_conversion ... ok
[INFO] [stdout] test core::math::tests::test_vec2_constructors ... ok
[INFO] [stdout] test core::math::tests::test_vec2_normalize ... ok
[INFO] [stdout] test core::math::tests::test_vec2_length ... ok
[INFO] [stdout] test core::math::tests::test_vec2_lerp ... ok
[INFO] [stdout] test core::math::tests::test_vec2_dot ... ok
[INFO] [stdout] test core::math::tests::test_vec3_cgmath_conversion ... ok
[INFO] [stdout] test core::math::tests::test_vec3_constructors ... ok
[INFO] [stdout] test core::math::tests::test_vec2_operators ... ok
[INFO] [stdout] test core::math::tests::test_vec3_cross ... ok
[INFO] [stdout] test core::math::tests::test_vec3_cross_properties ... ok
[INFO] [stdout] test core::math::tests::test_vec3_dot ... ok
[INFO] [stdout] test core::math::tests::test_vec3_ffi_layout ... ok
[INFO] [stdout] test core::math::tests::test_rect_intersection ... ok
[INFO] [stdout] test core::math::tests::test_rect_intersects ... ok
[INFO] [stdout] test core::math::tests::test_vec3_normalize ... ok
[INFO] [stdout] test core::math::tests::test_vec3_operators ... ok
[INFO] [stdout] test core::math::tests::test_vec3_length ... ok
[INFO] [stdout] test core::math::tests::test_vec3_lerp ... ok
[INFO] [stdout] test core::math::tests::test_vec4_cgmath_conversion ... ok
[INFO] [stdout] test core::math::tests::test_vec4_constructors ... ok
[INFO] [stdout] test core::math::tests::test_vec4_from_vec3 ... ok
[INFO] [stdout] test core::math::tween::tests::test_f32_lerp_boundaries ... ok
[INFO] [stdout] test core::math::tween::tests::test_f32_tween_ease_in ... ok
[INFO] [stdout] test core::math::tween::tests::test_color_tween_ease_in ... ok
[INFO] [stdout] test core::math::tween::tests::test_color_tween_linear ... ok
[INFO] [stdout] test core::math::tween::tests::test_f32_tween_linear ... ok
[INFO] [stdout] test core::math::tween::tests::test_tween_fn_ease_in ... ok
[INFO] [stdout] test core::math::tween::tests::test_tween_fn_linear ... ok
[INFO] [stdout] test core::math::tween::tests::test_vec2_lerp_boundaries ... ok
[INFO] [stdout] test core::math::tween::tests::test_vec2_tween_linear ... ok
[INFO] [stdout] test core::math::tween::tests::test_tween_fn_with_offset ... ok
[INFO] [stdout] test core::math::tween::tests::test_vec2_tween_ease_in ... ok
[INFO] [stdout] test core::math::tween::tests::test_vec3_lerp_boundaries ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_all_defaults ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_all_providers_configured ... ok
[INFO] [stdout] test core::math::tween::tests::test_vec3_tween_ease_in ... ok
[INFO] [stdout] test core::math::tween::tests::test_vec3_tween_linear ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_default_impl ... ok
[INFO] [stdout] test core::math::tween::tests::test_color_lerp_boundaries ... ok
[INFO] [stdout] test core::math::tween::tests::test_f32_lerp_midpoint ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_network_defaults_to_none ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_partial_configuration ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_with_custom_renderer ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_construction ... ok
[INFO] [stdout] test core::providers::builder::tests::test_builder_with_network ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_default ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_init_shutdown ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_playback ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_spatial ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_update ... ok
[INFO] [stdout] test core::providers::impls::null_audio::tests::test_null_audio_volume ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_construction ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_default ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_gamepad ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_keyboard ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_mouse ... ok
[INFO] [stdout] test core::providers::impls::null_input::tests::test_null_input_update ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_connections ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_construction ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_host_and_connect ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_lifecycle ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_send_and_broadcast ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_stats ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_drain_events ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_body_operations ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_collider_operations ... ok
[INFO] [stdout] test core::providers::impls::null_network::tests::test_null_network_default ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_construction ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_init_shutdown ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_joints ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_queries ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_step ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_body_operations ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_collider_operations ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_construction ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_debug_shapes ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_default ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_events ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_gravity ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_init_shutdown ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_joints ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_queries ... ok
[INFO] [stdout] test core::providers::impls::null_physics::tests::test_null_physics_step ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_construction ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_default ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_frame_lifecycle ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_generic_capabilities ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_debug_shapes ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_default ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_init_shutdown ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_resource_creation ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_gravity ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_resize ... ok
[INFO] [stdout] test core::providers::impls::null_render::tests::test_null_render_state_operations ... ok
[INFO] [stdout] test core::providers::impls::null_physics3d::tests::test_null_physics3d_events ... ok
[INFO] [stdout] test core::providers::impls::null_window::tests::test_null_window_default ... ok
[INFO] [stdout] test core::providers::impls::null_window::tests::test_null_window_init_shutdown ... ok
[INFO] [stdout] test core::providers::impls::null_window::tests::test_null_window_poll_and_swap ... ok
[INFO] [stdout] test core::providers::registry::tests::test_default_registry_uses_null_providers ... ok
[INFO] [stdout] test core::providers::impls::null_window::tests::test_null_window_should_close ... ok
[INFO] [stdout] test core::providers::registry::tests::test_default_registry_versions_are_null ... ok
[INFO] [stdout] test core::types::tests::test_color_from_ffi_color ... ok
[INFO] [stdout] test core::providers::impls::null_window::tests::test_null_window_size ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_display ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_equality ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_copy_clone ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_default ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_invalid ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_is_send ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_is_sync ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_from_u64 ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_new ... ok
[INFO] [stdout] test core::providers::impls::null_window::tests::test_null_window_construction ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_size ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_hash ... ok
[INFO] [stdout] test core::types::tests::test_rect_from_ffi_rect ... ok
[INFO] [stdout] test core::types::tests::test_result_copy_clone ... ok
[INFO] [stdout] test core::types::tests::test_result_default ... ok
[INFO] [stdout] test core::types::tests::test_result_display ... ok
[INFO] [stdout] test core::types::tests::test_result_equality ... ok
[INFO] [stdout] test core::types::tests::test_entity_id_to_u64 ... ok
[INFO] [stdout] test core::types::tests::test_ffi_color_from_color ... ok
[INFO] [stdout] test core::types::tests::test_ffi_rect_from_rect ... ok
[INFO] [stdout] test core::types::tests::test_ffi_transform2d_struct_layout ... ok
[INFO] [stdout] test core::types::tests::test_result_ok ... ok
[INFO] [stdout] test core::types::tests::test_result_err ... ok
[INFO] [stdout] test core::types::tests::test_result_repr_c ... ok
[INFO] [stdout] test core::types::tests::test_result_from_error_code ... ok
[INFO] [stdout] test core::types::tests::test_result_is_send ... ok
[INFO] [stdout] test core::types::tests::test_result_is_sync ... ok
[INFO] [stdout] test core::types::tests::test_result_size ... ok
[INFO] [stdout] test ecs::app::physics_plugins::tests::test_physics_plugin_3d_build ... ok
[INFO] [stdout] test ecs::app::physics_plugins::tests::test_duplicate_plugin_ignored ... ok
[INFO] [stdout] test ecs::app::physics_plugins::tests::test_physics_plugin_2d_build ... ok
[INFO] [stdout] test ecs::app::physics_plugins::tests::test_physics_plugin_2d_name ... ok
[INFO] [stdout] test ecs::app::physics_plugins::tests::test_both_plugins_can_coexist ... ok
[INFO] [stdout] test ecs::app::physics_plugins::tests::test_physics_plugin_3d_name ... ok
[INFO] [stdout] test ecs::app::tests::test_add_plugin ... ok
[INFO] [stdout] test ecs::app::tests::test_app_debug_format ... ok
[INFO] [stdout] test ecs::app::tests::test_add_system_to_update ... ok
[INFO] [stdout] test ecs::app::tests::test_app_default_is_same_as_new ... ok
[INFO] [stdout] test ecs::app::tests::test_app_new_has_all_stages ... ok
[INFO] [stdout] test ecs::app::tests::test_duplicate_plugin_ignored ... ok
[INFO] [stdout] test ecs::app::tests::test_insert_resource ... ok
[INFO] [stdout] test ecs::app::tests::test_plugin_propagates_2d_on_run ... ok
[INFO] [stdout] test ecs::app::tests::test_plugin_propagates_3d_on_run ... ok
[INFO] [stdout] test ecs::app::tests::test_run_once_executes_systems ... ok
[INFO] [stdout] test ecs::app::tests::test_update_is_equivalent_to_run_once ... ok
[INFO] [stdout] test core::input_manager::tests::buffer::test_buffer_expiration ... ok
[INFO] [stdout] test ecs::app::tests::test_transform_propagation_plugin_adds_system ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_app_add_system_to_set ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_add_plugin_group ... ok
[INFO] [stdout] test ecs::app::tests::test_transform_repropagation_across_multiple_updates ... ok
[INFO] [stdout] test ecs::app::tests::test_world_mut_access ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_default_plugins_idempotent ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_app_configure_set ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_new_with_defaults_has_transform_system ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_app_insert_non_send_resource ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_new_with_defaults_propagates_transforms ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_minimal_app_has_no_default_systems ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_app_register_set ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_default_plugins_adds_transform_propagation ... ok
[INFO] [stdout] test ecs::app::tests_extended::test_plugin_group ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_add_entity_basic ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_add_entity_idempotent ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_clone ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_debug ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_has_all ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_default ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_has_component ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_has_none ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_many_components ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_new_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_sync ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_with_capacity ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_clear_entities ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_contains_entity ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_debug_with_entities ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_new_with_components ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_component_set_insertion_order_independent ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_entity_index ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_entity_index_consistency_after_removals ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_send ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_archetype_component_count ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_remove_entity_single ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_remove_entity_middle ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_remove_entity_not_found ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_remove_entity_last ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_remove_entity_swap_remove ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_const_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_as_hashmap_key ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_clone ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_reserve_entities ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_alignment ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_const_new ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_debug_non_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_default ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_display ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_debug_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_empty_constant ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_copy ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_hash ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_into_u32 ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_into_usize ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_equality ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_max_value ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_from_u32 ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_new_zero ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_new ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_send ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_sequential_creation ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_size ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype_id::tests::test_archetype_id_sync ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_add_edge_from_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_add_edge_multiple_components ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_remove_edge_basic ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_remove_edge_caching ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_remove_edge_component_not_present ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_remove_edge_from_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_remove_edge_to_existing_archetype ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_all_combinations ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_component_order_independence ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_contains ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_debug ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_default ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_edge_count_initial ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_entity_count ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_find ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_find_or_create_empty ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_find_or_create_idempotent ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_find_or_create_multiple ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_find_or_create_new ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_get_mut ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_get_mut_nonexistent ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_get_nonexistent ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_iter ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_new ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_send_sync ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_transition_converging_paths ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_transition_edge_count_after_clear ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_transition_roundtrip ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_transition_stress ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_clear ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_clone ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_debug ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_display ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_insert_multiple ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_insert_overwrites ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_insert_single ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_large_entity_spans_multiple_cells ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_new ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_add_edge_caching ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_get_add_edge_existing_component_is_noop ... ok
[INFO] [stdout] test ecs::archetype::tests_graph::tests::test_graph_archetype_ids ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_aabb_overlapping ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_circle ... ok
[INFO] [stdout] test ecs::archetype::tests_archetype::tests::test_entity_management_stress ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_pairs_empty ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_pairs_far_apart ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_pairs_multiple ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_pairs_single ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_pairs_nearby ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_point_hit ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_pairs_no_duplicates ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_remove_absent ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_remove_present ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_remove_twice ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_stats_after_insert ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_query_point_miss ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_stats_display ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_stats_empty ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_stats_type_accessible ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_update_absent ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_update_different_cells ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_update_same_cells ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_with_capacity ... ok
[INFO] [stdout] test ecs::change_detection::tests::component_ticks_is_added_checks_against_threshold ... ok
[INFO] [stdout] test ecs::change_detection::tests::component_ticks_is_changed_checks_against_threshold ... ok
[INFO] [stdout] test ecs::change_detection::tests::component_ticks_new_sets_both ... ok
[INFO] [stdout] test ecs::change_detection::tests::component_ticks_set_changed_updates_only_changed ... ok
[INFO] [stdout] test ecs::change_detection::tests::tick_default_is_zero ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_stress_update_cycle ... ok
[INFO] [stdout] test ecs::change_detection::tests::tick_from_u32_round_trip ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_tiny_entity_single_cell ... ok
[INFO] [stdout] test ecs::change_detection::tests::tick_is_newer_than_compares_correctly ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_contact_point ... ok
[INFO] [stdout] test ecs::change_detection::tests::tick_new_stores_value ... ok
[INFO] [stdout] test ecs::change_detection::tests::tick_ordering ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_different_sizes ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_normal_direction ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_negative_coordinates ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_overlapping ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_separated ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_same_position ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_symmetry ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_touching ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_90_degree_rotation ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_axis_aligned_overlapping ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_both_rotated ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_axis_aligned_separated ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_different_sizes ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_rotated_overlapping ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_normal_direction ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_rotated_separated ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_same_position ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_symmetry ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_box_box_collision_touching ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_center_coincident ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_contact_point ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_corner ... ok
[INFO] [stdout] test ecs::collision::tests::box_tests::test_aabb_aabb_collision_vertical_overlap ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_different_sizes ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_edge ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_separated ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_inside ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_overlapping ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_touching ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_symmetry ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_aabb_collision_vertical ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_contact_point ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_large_circles ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_negative_coordinates ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_overlapping ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_same_position ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_separated ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_symmetry ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_tiny_circles ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_touching ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_45_degree_rotation ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_different_radii ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_90_degree_rotation ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_circle_collision_diagonal ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_corner_rotated ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_inside_rotated ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_large_rotation ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_negative_rotation ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_separated_rotated ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_no_rotation ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_rotated_rectangle ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_debug ... ok
[INFO] [stdout] test ecs::collision::tests::circle_tests::test_circle_obb_collision_touching_rotated ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_clone ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_default ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_is_colliding ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_new ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_reversed ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_separation_distance ... ok
[INFO] [stdout] test ecs::collision::tests::contact_tests::test_contact_separation_vector ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_clone ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_debug ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_hash ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_implements_event ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_involves ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_new ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_ordered_pair ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_other_entity ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_ended_send_sync ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_event_workflow ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_pair_consistency ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_clone ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_implements_event ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_involves ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_debug ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_new ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_ordered_pair ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_send_sync ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_bouncy ... ok
[INFO] [stdout] test ecs::collision::tests::event_tests::test_collision_started_other_entity ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_character ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_debug ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_clone ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_default ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_elastic ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_new ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_new_clamping ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_collision_response_slippery ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_basic ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_below_slop ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_direction ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_full_percent ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_mass_ratio ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_static_wall ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_two_static ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_diagonal ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_head_on ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_position_correction_zero_percent ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_no_bounce ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_separating ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_mass_ratio ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_two_static ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_static_wall ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_differs_between_types ... ok
[INFO] [stdout] test ecs::collision::tests::response_tests::test_resolve_collision_with_friction ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_generic_types_differ ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_debug_format ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_hash_consistency ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_of_returns_same_id_for_same_type ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_ordering ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_type_id ... ok
[INFO] [stdout] test ecs::component::tests::component_id::test_component_id_zero_sized_type ... ok
[INFO] [stdout] test ecs::component::tests::component_info::test_component_info_clone ... ok
[INFO] [stdout] test ecs::component::tests::component_info::test_component_info_debug ... ok
[INFO] [stdout] test ecs::component::tests::component_info::test_component_info_of ... ok
[INFO] [stdout] test ecs::component::tests::component_info::test_component_info_size_and_align ... ok
[INFO] [stdout] test ecs::component::tests::component_info::test_component_info_zero_sized ... ok
[INFO] [stdout] test ecs::component::tests::component_trait::test_component_can_be_boxed_as_any ... ok
[INFO] [stdout] test ecs::component::tests::component_trait::test_component_is_send ... ok
[INFO] [stdout] test ecs::component::tests::component_trait::test_component_is_static ... ok
[INFO] [stdout] test ecs::component::tests::no_blanket_impl::test_explicit_impl_required ... ok
[INFO] [stdout] test ecs::component::tests::component_trait::test_component_is_sync ... ok
[INFO] [stdout] test ecs::components::animation_controller::tests::test_add_states_and_transitions ... ok
[INFO] [stdout] test ecs::components::animation_controller::tests::test_animation_controller_is_component ... ok
[INFO] [stdout] test ecs::components::animation_controller::tests::test_current_clip_returns_correct_clip ... ok
[INFO] [stdout] test ecs::components::animation_controller::tests::test_create_controller_with_initial_state ... ok
[INFO] [stdout] test ecs::components::animation_controller::tests::test_current_clip_returns_none_for_missing_state ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_display ... ok
[INFO] [stdout] test ecs::components::animation_controller::tests::test_set_and_get_params ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_default ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_exponential ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_inverse_distance ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_model_name ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_linear ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_channel_clone_copy ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_channel_default ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_channel_display ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_attenuation_none ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_channel_id ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_channel_name ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_builder_pattern ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_clone ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_component ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_debug ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_default ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_display ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_is_spatial ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_new ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_sink_id ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_with_pitch ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_with_volume ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_area ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_closest_point_corner ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_closest_point_inside ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_closest_point_outside ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_compute_world_aabb_box_no_rotation ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_compute_world_aabb_box_with_rotation ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_compute_world_aabb_capsule ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_compute_world_aabb_circle_no_rotation ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_compute_world_aabb_circle_with_scale ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_compute_world_aabb_polygon ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_contains_point ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_distance_squared_to_point_inside ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_distance_squared_to_point_outside ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_expand ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_expand_negative_margin ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_expand_zero_margin ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_intersection ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_intersection_none ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_merge ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_merge_disjoint ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_overlaps ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_perimeter ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_raycast_diagonal ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_raycast_from_inside ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_raycast_hit ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_raycast_max_distance ... ok
[INFO] [stdout] test ecs::components::collider::aabb_tests::test_aabb_raycast_miss ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_aabb ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_builder_pattern ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_can_collide_with ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_capsule ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_circle ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_clone ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_compute_aabb ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_default ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_source_play_pause_stop ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_density_clamping ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_display ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_is_component ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_is_send ... ok
[INFO] [stdout] test ecs::components::audiosource::tests::test_audio_channel_eq_hash ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_is_sync ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_mutators ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_obb ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_polygon ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_restitution_clamping ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_set_shape ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_clone ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_compute_aabb_box ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_compute_aabb_capsule ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_compute_aabb_circle ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_compute_aabb_empty_polygon ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_compute_aabb_polygon ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_default ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_is_valid ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_friction_clamping ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_predicates ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_shape_type_names ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::array_tests::test_to_cols_array ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::component_tests::test_clone ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::component_tests::test_copy ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::array_tests::test_to_mat4_array ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::component_tests::test_debug ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::component_tests::test_is_component ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::component_tests::test_is_send ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::component_tests::test_is_sync ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::construction_tests::test_from_transform ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::construction_tests::test_default ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::construction_tests::test_from_transform_ref ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::construction_tests::test_from_translation ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::construction_tests::test_from_translation_rotation_scale ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_stress_many_entities ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::construction_tests::test_identity ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::decomposition_tests::test_rotation_extraction ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::decomposition_tests::test_scale_extraction ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::decomposition_tests::test_to_transform ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::decomposition_tests::test_translation_extraction ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::direction_tests::test_directions_identity ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::direction_tests::test_directions_rotated ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::decomposition_tests::test_decompose ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::decomposition_tests::test_rotation_degrees ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::hierarchy_tests::test_parent_child_rotation ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::ffi_tests::test_align ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::ffi_tests::test_size ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::hierarchy_tests::test_three_level_hierarchy ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::hierarchy_tests::test_parent_child_scale ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::hierarchy_tests::test_parent_child_translation ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::interpolation_tests::test_lerp_translation ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::interpolation_tests::test_lerp_angle ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::interpolation_tests::test_lerp_endpoints ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_inverse ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_mul_operator_with_transform ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_mul_operator ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_mul_transform_scale ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_transform_by ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_mul_transform_translation ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::array_tests::test_to_cols_array ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_transform_direction ... ok
[INFO] [stdout] test ecs::components::global_transform2d::tests::transform_tests::test_transform_point ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::component_tests::test_copy ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::array_tests::test_to_rows_array ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::component_tests::test_clone ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::component_tests::test_is_send ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::component_tests::test_debug ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::component_tests::test_is_component ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::component_tests::test_is_sync ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::construction_tests::test_from_transform ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::construction_tests::test_default ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::construction_tests::test_from_translation_rotation_scale ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::construction_tests::test_from_transform_ref ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::construction_tests::test_from_translation ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::construction_tests::test_identity ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::decomposition_tests::test_rotation_extraction ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::decomposition_tests::test_decompose ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::decomposition_tests::test_scale_extraction ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::decomposition_tests::test_translation_extraction ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::decomposition_tests::test_to_transform ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::hierarchy_tests::test_parent_child_rotation ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::direction_tests::test_directions_identity ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::direction_tests::test_directions_rotated ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::hierarchy_tests::test_parent_child_scale ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::hierarchy_tests::test_three_level_hierarchy ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::hierarchy_tests::test_parent_child_translation ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::interpolation_tests::test_lerp_endpoints ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_inverse ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::interpolation_tests::test_lerp_translation ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_mul_transform_scale ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_mul_operator ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_mul_operator_with_transform ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_transform_direction ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_mul_transform_translation ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_transform_by ... ok
[INFO] [stdout] test ecs::components::global_transform::tests::transform_tests::test_transform_point ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_clear ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_as_slice ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_clone ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_debug ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_contains ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_default ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_eq ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_display ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_from_slice_trait ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_first_last ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_from_slice ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_from_vec ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_get ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_index_of ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_insert ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_into_iter_ref ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_into_iter_owned ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_is_component ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_iter ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_is_send_sync ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_push ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_new ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_remove ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_remove_child ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_retain ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_sort_by ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_swap_remove_child ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_with_capacity ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_sort_by_index ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_vec_from_children ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_integration::test_components_are_distinct ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_integration::test_hierarchy_components_work_together ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_integration::test_hierarchy_mutation ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_as_ref ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_as_str ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_borrow ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_clone ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_contains ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_debug ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_default ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_display ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_emoji ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_ends_with ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_eq ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_eq_str ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_children::test_children_many ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_from_str ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_eq_string ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_from_string ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_hash ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_is_component ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_into_string ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_is_send_sync ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_len ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_new ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_is_empty ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_set ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_new_string ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_set_string ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_starts_with ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_name_unicode ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_name::test_string_from_name ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_debug ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_default ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_display ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_eq ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_from_entity ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_get ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_hash ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_is_component ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_is_send_sync ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_new ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_set ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_size ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_2d_tests::test_parent_child_propagation_2d ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_2d_tests::test_root_entity_propagation_2d ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_2d_tests::test_rotation_propagation_2d ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_2d_tests::test_scale_propagation_2d ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_multiple_children ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_multiple_roots ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_parent_child_propagation ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_entity_from_parent ... ok
[INFO] [stdout] test ecs::components::hierarchy::tests::tests_parent::test_parent_clone_copy ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_root_entity_propagation ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_rotation_propagation ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_scale_propagation ... ok
[INFO] [stdout] test ecs::components::propagation::tests::propagate_3d_tests::test_three_level_hierarchy ... ok
[INFO] [stdout] test ecs::components::propagation::tests::subtree_tests::test_propagate_subtree ... ok
[INFO] [stdout] test ecs::components::propagation::tests::utility_tests::test_compute_local_transform_2d ... ok
[INFO] [stdout] test ecs::components::propagation::tests::subtree_tests::test_propagate_subtree_with_parent_global ... ok
[INFO] [stdout] test ecs::components::propagation::tests::utility_tests::test_compute_local_transform ... ok
[INFO] [stdout] test ecs::components::propagation::tests::utility_tests::test_compute_local_transform_no_parent ... ok
[INFO] [stdout] test ecs::components::propagation::tests::utility_tests::test_ensure_global_transforms ... ok
[INFO] [stdout] test ecs::components::propagation::tests::utility_tests::test_ensure_skips_existing ... ok
[INFO] [stdout] test ecs::components::propagation::tests::utility_tests::test_ensure_global_transforms_2d ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_apply_angular_impulse ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_apply_angular_impulse_fixed_rotation ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_apply_damping ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_apply_impulse ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_apply_impulse_kinematic ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_builder_chaining ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_clone ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_debug ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_default ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_display ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_dynamic ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_is_component ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_is_send ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_is_sync ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_kinematic ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_kinetic_energy ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_linear_speed ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_linear_speed_squared ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_new_dynamic ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_new_kinematic ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_new_static ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_set_angular_velocity ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_set_body_type ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_set_velocity ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_set_mass ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_sleep ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_static_body ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_can_move ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_default ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_display ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_is_affected_by_gravity ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_is_affected_by_forces ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_name ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_type_responds_to_collisions ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_update_sleep_time_above_threshold ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_update_sleep_time_below_threshold ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_update_sleep_time_cannot_sleep ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_wake ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_can_sleep ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_angular_velocity ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_continuous_cd ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_damping ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_fixed_rotation ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_mass ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_gravity_scale ... ok
[INFO] [stdout] test assets::loaders::texture::tests::texture_asset::test_new_wrong_size - should panic ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_velocity ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_builder_chain ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_clone ... ok
[INFO] [stdout] test ecs::app::tests::test_plugin_missing_dependency_panics - should panic ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_debug ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_default ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_is_component ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_is_flipped ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_new ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_send_sync ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_size_or_rect_custom ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_size_or_rect_none ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_size_or_rect_source ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_anchor ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_new_negative_cell_size - should panic ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_anchor_vec ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_color ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_custom_size ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_flip ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_flip_x ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_flip_y ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_with_source_rect ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_without_custom_size ... ok
[INFO] [stdout] test ecs::components::sprite::tests::test_sprite_without_source_rect ... ok
[INFO] [stdout] test ecs::broad_phase::tests::test_new_invalid_cell_size - should panic ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_animation_clip_looping ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_animation_clip_with_mode ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_animation_clip_new ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_animation_clip_one_shot ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_current_rect ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_current_rect_empty_clip ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_is_component ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_new ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_pause_resume ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_play_restarts ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_reset ... ok
[INFO] [stdout] test ecs::components::sprite_animator::tests::test_sprite_animator_resume_does_not_resume_finished ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_default ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_from_position ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_from_position_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_from_rotation ... ok
[INFO] [stdout] test ecs::components::collider::tests::shape_tests::test_collider_polygon_panics_with_too_few_vertices - should panic ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_look_at ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_from_rotation_degrees ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_from_scale ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_new ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::construction_tests::test_from_scale_uniform ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_set_mass_kinematic - should panic ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_backward_and_left ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_directions_identity ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_inverse_transform_point ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_mass_negative - should panic ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_matrix_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_matrix_scale ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_transform_direction ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_directions_rotated ... ok
[INFO] [stdout] test ecs::components::rigidbody::tests::test_rigidbody_with_mass_zero - should panic ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_inverse_transform_direction ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_matrix_inverse ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_matrix_identity ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_matrix_translation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_to_mat4 ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_transform_point_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_transform_point_scale ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_angle_endpoints ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_angle_same_direction ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_position ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_rotation_shortest_path ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_scale ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::direction_matrix_tests::test_transform_point_translation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_angle_across_boundary ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_lerp_endpoints ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_mat3x3_align ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_mat3x3_size ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_normalize_angle ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_field_layout ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_align ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_clone ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_copy ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_is_send ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_is_sync ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_default ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_determinant ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_inverse_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_multiply ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_size ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::interpolation_ffi_tests::test_transform2d_is_component ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_identity ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_inverse ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_scale ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_to_mat4 ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_rotate ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_rotate_degrees ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_transform_direction ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mat3x3_tests::test_translation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_look_at_target ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_rotation_degrees ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_set_position ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_scale_by ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_set_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_set_rotation_degrees ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_set_scale ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_default ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_from_position ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_from_position_rotation ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_from_scale ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_from_scale_uniform ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_set_scale_uniform ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_translate ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_look_at ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_from_rotation ... ok
[INFO] [stdout] test ecs::components::transform2d::tests::mutation_tests::test_translate_local ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_look_at_target ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_rotate_z ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_scale_by ... ok
[INFO] [stdout] test ecs::components::transform::tests::construction_tests::test_transform_new ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_set_position ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_rotate_x ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_set_scale_uniform ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_translate_local ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_translate ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_set_rotation ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_rotate_y ... ok
[INFO] [stdout] test ecs::components::transform::tests::mutation_tests::test_set_scale ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_directions ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_conjugate ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_from_axis_angle ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_default ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_cgmath_conversion ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_normalize ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_identity ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_rotate_vector ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::component_tests::test_transform_clone ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_inverse ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_slerp ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::component_tests::test_transform_copy ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_mul_identity ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_new ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::component_tests::test_transform_is_component ... ok
[INFO] [stdout] test ecs::components::transform::tests::quat_tests::test_quat_from_euler ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::ffi_tests::test_quat_field_layout ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::ffi_tests::test_quat_size ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::component_tests::test_transform_is_send ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::component_tests::test_transform_is_sync ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::direction_tests::test_directions_identity ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::direction_tests::test_directions_rotated ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::ffi_tests::test_quat_align ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::ffi_tests::test_transform_align ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::ffi_tests::test_transform_size ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::matrix_tests::test_matrix_inverse ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::matrix_tests::test_matrix_scale ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::interpolation_tests::test_lerp_endpoints ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::point_transform_tests::test_inverse_transform_direction ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::interpolation_tests::test_lerp_position ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::interpolation_tests::test_lerp_scale ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::matrix_tests::test_matrix_identity ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::matrix_tests::test_matrix_translation ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::interpolation_tests::test_lerp_rotation ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::point_transform_tests::test_inverse_transform_point ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::point_transform_tests::test_transform_direction ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::point_transform_tests::test_transform_point_rotation ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::point_transform_tests::test_transform_point_scale ... ok
[INFO] [stdout] test ecs::components::transform::tests_spatial::tests::point_transform_tests::test_transform_point_translation ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_capacity ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_deallocate_basic ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_deallocate_returns_false_for_dead_entity ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_deallocate_returns_false_for_out_of_bounds ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_deallocate_returns_false_for_placeholder ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_deallocate_returns_false_for_wrong_generation ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_generation_increment ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_is_alive ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_is_alive_out_of_bounds ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_is_alive_placeholder ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_is_alive_wrong_generation ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_is_empty ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_len ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_many_allocations ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_recycling_basic ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_recycling_lifo_order ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_recycling_multiple ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_stress_allocate_deallocate_cycle ... ok
[INFO] [stdout] test ecs::entity::tests::allocator_tests::test_allocator_unique_entities ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_allocate_batch_basic ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_allocate_batch_empty ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_deallocate_batch_all_invalid ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_deallocate_batch_empty ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_deallocate_batch_basic ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_allocate_batch_mixed_reuse_and_new ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_allocate_batch_reuses_free_slots ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_batch_vs_individual_equivalence ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_deallocate_batch_with_out_of_bounds ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_deallocate_batch_with_placeholder ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_reserve_after_allocations ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_reserve_basic ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_allocate_multiple ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_debug ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_default ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_first_generation_is_one ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_with_capacity ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_new ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_deallocate_batch_partial_invalid ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_bits_roundtrip ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_bits_edge_cases ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_default ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_reserve_zero ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_display_format ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_equality ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_copy_clone ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_from_bits ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_from_into_u64 ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_hash ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_new ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_placeholder ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_send_sync ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_to_bits ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_advance_paused ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_advance_single_step ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_advance_with_time_scale ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_builder_chaining ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_clone ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_debug ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_default ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_fixed_timestep_pattern ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_frequency ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_interpolation_alpha ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_is_send ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_is_sync ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_size ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_new ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_pause_resume ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_advance_no_steps ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_allocator_allocate_basic ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_reset ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_advance_multiple_steps ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_stats ... ok
[INFO] [stdout] test ecs::entity::tests::entity_tests::test_entity_debug_format ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_step ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_slow_motion ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_allocate_batch_large ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_set_gravity ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_set_time_scale ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_iterations ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_sleep_config ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_time_scale ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_step_loop ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_timestep_duration ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_gravity ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_timestep ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_zero_gravity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_conflict_struct::test_access_conflict_clone ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_conflict_struct::test_access_conflict_conflicting_components_iter ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_conflict_struct::test_access_conflict_default ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_conflict_struct::test_access_conflict_display ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_conflict_struct::test_access_conflict_new ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_add_read ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_time_scale_too_high - should panic ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_add_write ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_conflict_struct::test_access_conflict_has_write_write ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_clear ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_complex_scenario ... ok
[INFO] [stdout] test ecs::physics_world::tests::test_with_timestep_invalid - should panic ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_conflict_write_write ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_conflict_write_read ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_extend ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_is_empty ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_new_is_empty ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_no_conflict_between_reads ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_reads_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_write_counts_as_read ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::conflict_info::test_conflict_info_is_write_write ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::conflict_info::test_conflict_info_new ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::get_conflicts::test_get_conflicts_multiple_components ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::get_conflicts::test_get_conflicts_no_conflict ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::get_conflicts::test_get_conflicts_read_vs_write ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_no_conflict_complex ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::get_conflicts::test_get_conflicts_write_read ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::get_conflicts::test_get_conflicts_write_write ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::access_tests::test_access_no_conflict_different_components ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::conflict_info::test_conflict_info_display ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::access::tests::get_conflicts::test_get_conflicts_partial ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::added_does_not_match_after_tick_advance ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::added_not_triggered_by_mutation ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::changed_detects_component_replacement ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::changed_filter_composes_with_data_query ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::added_detects_newly_inserted_components ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::change_detection_across_multiple_tick_increments ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::changed_does_not_match_unmodified_components ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::changed_detects_component_mutation_via_get_mut ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::read_only_access_does_not_trigger_changed ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::sparse_set_insert_with_tick_stores_correct_ticks ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::sparse_set_replace_updates_changed_tick_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::sparse_set_set_changed_tick_works ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_component_access_does_not_contain_other_components ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_does_not_match_archetype_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_does_not_match_empty_archetype ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_fetch_dead_entity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_fetch_entity_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::change_filter_tests::sparse_set_remove_cleans_up_ticks ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_component_access_contains_component_id ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_fetch_entity_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_fetch_placeholder_entity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_fetch_after_component_update ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_fetch_stale_entity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_matches_archetype_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_state_implements_query_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_component_access_contains_component_id ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_does_not_match_empty_archetype ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_mut_dead_entity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_implements_world_query ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_init_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_mut_entity_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_mut_entity_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::component_ref::test_ref_multiple_entities_same_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_mut_and_modify ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_init_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_mut_placeholder_entity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_returns_none ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_fetch_mut_stale_entity ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_state_is_mut_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_state::test_mut_state_debug ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_state::test_mut_state_different_types ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_state::test_mut_state_is_clone ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_state::test_mut_state_is_send_sync ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_state::test_mut_state_of ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::write_access::test_write_access_equality ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::write_access::test_write_access_hash ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::write_access::test_write_access_new ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_is_not_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::write_access::test_write_access_ordering ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_component_access_empty ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_component_ref::test_mut_ref_matches_archetype_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::component_ref::tests::mut_state::test_mut_state_implements_query_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_does_not_match_archetype_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_filter_usage_documentation ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_init_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_fetch_entity_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_does_not_match_archetype_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_matches_archetype_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_fetch_entity_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::with_filter::test_with_fetch_entity_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_fetch_entity_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_init_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_matches_empty_archetype ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::archetype_matching::test_option_matches_archetype_always_true ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::archetype_matching::test_option_matches_archetype_without_target_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::component_access::test_option_component_access_forwards_to_inner ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::component_access::test_option_mut_component_access_forwards_to_inner ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::filters::tests::without_filter::test_without_matches_archetype_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::archetype_matching::test_option_matches_empty_archetype ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::option_mut_ref::test_option_mut_ref_fetch_mut_with_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::option_mut_ref::test_option_mut_ref_fetch_mut_without_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::option_mut_ref::test_option_mut_ref_modify_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::option_ref::test_option_ref_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::tuple_queries::test_entities_without_optional_still_yielded ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::tuple_queries::test_tuple_with_optional_both_present ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::option_ref::test_option_ref_returns_none_when_component_absent ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::tuple_queries::test_tuple_with_optional_missing_required_returns_none ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::option_ref::test_option_ref_returns_some_when_component_present ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::query_state_trait::test_unit_implements_query_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::unit_query::test_unit_query_fetch_always_succeeds ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::optional::tests::tuple_queries::test_tuple_with_optional_only_required_present ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::query_state_trait::test_query_state_is_send_sync ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::query_state_trait::test_component_id_implements_query_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::unit_query::test_unit_query_matches_all ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::world_query_trait::test_entity_query_fetch_alive ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::world_query_trait::test_entity_query_init_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::world_query_trait::test_entity_query_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::world_query_trait::test_entity_query_matches_all_archetypes ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_2_component_access ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_2_fetch ... ok
[INFO] [stdout] test ecs::entity::tests::bulk_tests::test_batch_stress_test ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::unit_query::test_unit_query_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::world_query_trait::test_entity_query_fetch_dead ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_3_fetch ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_2_init_state ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_2_fetch_missing_component ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::traits::tests::world_query_trait::test_entity_query_component_access_empty ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_matches_archetype ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_with_entity ... ok
[INFO] [stdout] test ecs::query::tests::query_get::test_query_get_existing ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_4_elements ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_is_read_only ... ok
[INFO] [stdout] test ecs::query::fetch::tests_mod::tuples::tests::tuple_queries::test_tuple_with_filters ... ok
[INFO] [stdout] test ecs::query::tests::query_get::test_query_get_with_filter_failing ... ok
[INFO] [stdout] test ecs::query::tests::query_get::test_query_get_missing_component ... ok
[INFO] [stdout] test ecs::query::tests::query_get::test_query_get_dead_entity ... ok
[INFO] [stdout] test ecs::query::tests::query_iter::test_query_iter_multiple_entities ... ok
[INFO] [stdout] test ecs::query::tests::query_get::test_query_get_with_filter_passing ... ok
[INFO] [stdout] test ecs::query::tests::query_iter::test_query_iter_entity ... ok
[INFO] [stdout] test ecs::query::tests::query_get::test_query_get_with_without_filter ... ok
[INFO] [stdout] test ecs::query::tests::query_iter::test_query_iter_single_entity ... ok
[INFO] [stdout] test ecs::query::tests::query_iter::test_query_iter_skips_non_matching ... ok
[INFO] [stdout] test ecs::query::tests::query_iter::test_query_iter_empty_world ... ok
[INFO] [stdout] test ecs::query::tests::query_iter::test_query_iter_with_filter ... ok
[INFO] [stdout] test ecs::query::tests::query_struct::test_query_debug ... ok
[INFO] [stdout] test ecs::query::tests::query_struct::test_query_component_access ... ok
[INFO] [stdout] test ecs::query::tests::query_struct::test_query_from_state ... ok
[INFO] [stdout] test ecs::query::tests_advanced::integration::test_query_after_despawn ... ok
[INFO] [stdout] test ecs::query::tests_advanced::integration::test_complex_filter_chain ... ok
[INFO] [stdout] test ecs::query::tests_advanced::integration::test_query_with_entity_and_component ... ok
[INFO] [stdout] test ecs::query::tests::query_struct::test_query_new ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_access::test_different_component_queries_no_conflict ... ok
[INFO] [stdout] test ecs::query::tests::query_struct::test_query_with_filter ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_access::test_query_with_filter_access ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_is_empty ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_count_multiple ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_is_not_empty ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_single_multiple_entities ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_single_no_entities ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_iter_mut::test_query_iter_mut_modify ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_iter_mut::test_query_iter_mut_multiple ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_get_param ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_single_one_entity ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_get_param_mut ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_iter_mut::test_query_iter_mut_with_filter ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_implements_system_param ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_state_init ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_state_is_clone ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_state_is_send_sync ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_access::test_read_queries_no_conflict ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_count::test_query_count_empty ... ok
[INFO] [stdout] test ecs::query::tests_advanced::integration::test_query_stress_test ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_state_with_filter ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_query_update_access ... ok
[INFO] [stdout] test ecs::query::tests_advanced::query_system_param::test_read_only_query_implements_read_only_param ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_correctness::cached_query_empty_world ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_entity_query::cached_entity_query_returns_all_entities ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_correctness::cached_query_returns_identical_results_to_uncached ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_filters::cache_with_with_filter ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_despawn::cached_iter_mut_handles_despawn ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_filters::cache_filter_updated_after_new_matching_archetype ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_filters::cache_with_without_filter ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_invalidation::invalidate_cache_clears_and_forces_rebuild ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_update::incremental_update_only_evaluates_new_archetypes ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resource_id::test_non_send_resource_id_debug ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::integration::test_non_send_resource_lifecycle ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_update::cache_generation_advances_with_new_archetypes ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resource_id::test_non_send_resource_id_different_types ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resource_id::test_non_send_resource_id_of ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resource_id::test_non_send_resource_id_hash ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resource_id::test_non_send_resource_id_ord ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resource_id::test_non_send_resource_id_type_id ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_contains ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_clear ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_debug ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_default ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_get_mut ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_get ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_get_nonexistent ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_insert ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_multiple_types ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_insert_replace ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_new ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_despawn::cache_handles_entity_despawn_correctly ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_remove ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_with_raw_pointer ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_copy ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_resources_container::test_non_send_resources_remove_nonexistent ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_clone ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_deref ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_into_inner ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_mut_into_inner ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_mut_deref ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_mut_deref_mut ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_mut_new ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_non_send_access_from_main_thread_succeeds ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_main_thread_id_accessor ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::non_send_wrappers::test_non_send_new ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_iter_mut::cached_iter_mut_modifies_correctly ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_iter_mut::cached_iter_mut_with_filter ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_non_send_resources_is_not_sync ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::integration::test_resource_lifecycle ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::integration::test_resources_with_res ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::integration::test_resources_with_res_mut ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_mut_tests::test_res_mut_debug ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_mut_tests::test_res_mut_deref ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_mut_tests::test_res_mut_deref_mut ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_mut_tests::test_res_mut_into_inner ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_mut_tests::test_res_mut_new ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_non_send_resources_is_not_send ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_correctness::cached_query_count_matches_uncached ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_tests::test_res_clone ... ok
[INFO] [stdout] test ecs::query::tests_cache::cache_update::cache_updates_when_new_archetype_created ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_tests::test_res_debug ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_tests::test_res_copy ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_mut_tests::test_res_mut_modify_complex ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_tests::test_res_deref ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_tests::test_res_into_inner ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::res_tests::test_res_new ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_debug ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_clone ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_different_types ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_hash ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_of ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_type_id ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_id::test_resource_id_ord ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_trait::test_resource_auto_impl ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_trait::test_resource_is_send ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_clear ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resource_trait::test_resource_is_sync ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_contains ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_get ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_get_mut ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_default ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_insert ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_get_mut_nonexistent ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_get_nonexistent ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_new ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_insert_replace ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_remove ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_multiple_types ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_non_send_get_from_wrong_thread_panics ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_debug ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::thread_safety::test_res_mut_is_send ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::thread_safety::test_resources_is_send ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_clone_and_copy ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_non_send_get_mut_from_wrong_thread_panics ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_debug ... ok
[INFO] [stdout] test ecs::resource::tests_non_send::tests::thread_safety::test_non_send_insert_from_wrong_thread_panics ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::resources_container::test_resources_remove_nonexistent ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_display ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_default ... ok
[INFO] [stdout] test ecs::resource::tests_send::tests::thread_safety::test_res_is_send ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_count ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_all_stages ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_eq ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_from_index ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_hash ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_index ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_is_logic ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_is_pre ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_is_render ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_navigation_chain ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_previous ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_reverse_navigation ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_is_post ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_roundtrip_index ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_all_labels ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_clone ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_count ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_default ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_display ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_dyn_clone ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_dyn_eq_different_variant ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_dyn_eq_same_variant ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_label_names ... ok
[INFO] [stdout] test ecs::schedule::core_system_label::tests::test_send_sync ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_configure_set_after ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_next ... ok
[INFO] [stdout] test ecs::schedule::core_stage::tests::test_ord ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_configure_set_before ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_default_system_set_variants ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_get_config_returns_none_for_unconfigured ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_empty_set_ordering_is_noop ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_cycle_detection_between_sets ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_get_set_returns_none_for_unregistered ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_mixed_set_and_individual_ordering ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_systems_in_set_run_in_correct_order ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_register_set_idempotent ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_register_and_add_to_set ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_add_system ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_set_names ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_clear ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_config_default ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_config_ignore_ordering ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_conflict_detection ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_conflicting_different_batches ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_default ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_parallel_batch ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_parallelism_ratio_all_sequential ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_parallelism_ratio_all_parallel ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_from_core ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_non_conflicting_same_batch ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_read_only_and_writing_systems ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_remove_system ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_parallelism_ratio_empty ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_send_sync ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_with_config ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_clone ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_boxed_stage_label_clone ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_core_stage_dyn_clone ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_core_stage_label_id ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_core_stage_dyn_eq ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_new ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_custom_stage_label ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_core_stage_label_name ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_display ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_dyn_stage_label_eq ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_eq ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_inner ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_from_core_stage ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_dyn_stage_label_debug ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_hash ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_name ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_order_tests::test_clone ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_of ... ok
[INFO] [stdout] test ecs::schedule::stage_label::tests::test_type_id ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_with_capacity ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_order_tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_order_tests::test_eq ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_order_tests::test_to_ordering ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_after ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_after_core ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_order_tests::test_from_ordering ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_order_tests::test_is_ordered ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_before ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_clone ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_before_core ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_at_end ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_at_start ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_replace ... ok
[INFO] [stdout] test ecs::schedule::stage_position::tests::stage_position_tests::test_replace_core ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_clone ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_custom_label_dyn_clone ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_box_clone ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_display ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_configure_unregistered_set_panics - should panic ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_dyn_debug ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_dyn_eq_different ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_dyn_hash ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_dyn_eq_same ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_equality_different ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_custom_label_id ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_dyn_partial_eq ... ok
[INFO] [stdout] test ecs::schedule::named_system_sets::tests::test_add_to_unregistered_set_panics - should panic ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_custom_label_name ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_equality_same ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_in_hashmap ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_hash ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_inner ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_name ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_type_id ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_after ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_clone ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_display ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_equality ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_involves ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_of ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chain_function::test_chain_from_vec ... ok
[INFO] [stdout] test ecs::schedule::system_label::tests::test_system_label_send_sync ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_before ... ok
[INFO] [stdout] test ecs::schedule::system_ordering::tests::test_ordering_hash ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chain_function::test_chain_empty ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chain_function::test_chain_single ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chain_function::test_chain_two ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_add ... ok
[INFO] [stdout] test ecs::schedule::parallel::tests::test_run_parallel_basic ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_add_after_not_found ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chain_function::test_chain_three ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_len_and_is_empty ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_clone ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_default ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_iter ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_add_after ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_clear ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_new ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_to_orderings_multiple ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_to_orderings_single ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_with_capacity ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_after_system ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_before_label ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_before_system ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_clone ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_debug ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_display_after_label ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_display_after_system ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_display_before_label ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_display_before_system ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_add ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_clear ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_clone ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_contains ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_debug ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_add_duplicate ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::chained_systems::test_to_orderings_empty ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_iter ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::labeled_ordering_constraint::test_after_label ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_is_empty ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_default ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_new ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_remove ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_remove_nonexistent ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_with_capacity ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_after ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_before ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_chained_config ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_clone ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_default ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_enabled ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set_config::test_new ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_add_multiple_systems ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_add_system ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_add_many_systems ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_boxed_stage ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_clear ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_contains_system ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_clear_resets_initialized ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_default ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_debug ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_from_core ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_get_system ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_initialization_happens_on_first_run ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_initialization_only_once ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_multiple_stages ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_new ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_remove_system ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_reset_initialized ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_empty_stage ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_multiple_systems ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_respects_should_run ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_single_system ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_system_skipped ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_send_sync ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_system_not_found ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_system_names ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_systems_iterator ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_stage_trait ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_system_ids ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_system_modifies_world ... ok
[INFO] [stdout] test ecs::schedule::system_set::tests::system_set::test_len ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_systems_run_in_order ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_combined_access ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_with_capacity ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_compute_parallel_groups_empty ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_compute_parallel_groups_with_conflicts ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_conflict_count ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_find_conflicts_empty ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_find_conflicts_for_system_not_found ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_find_conflicts_none ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_compute_parallel_groups_no_conflicts ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_find_conflicts_for_system ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_both_readers ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_find_conflicts_one ... ok
[INFO] [stdout] test ecs::schedule::system_stage::tests::test_run_single_system_by_id ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_find_conflicts_multiple ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_empty_stage ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_no_access_systems ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_single_system ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_movement_and_position_reader ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_movement_and_velocity_writer ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_three_systems_partial ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_read_only_systems ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_write_read ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_write_write ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_has_conflicts_different_components ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_system_conflict_accessors ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_system_conflict_display ... ok
[INFO] [stdout] test ecs::schedule::tests::conflict_tests::test_writing_systems ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::integration::test_custom_and_core_stages_together ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::integration::test_stage_filtering ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::integration::test_stage_label_in_hashmap ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::stage_trait::test_stage_trait_name ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::thread_safety::test_stage_label_id_send ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::thread_safety::test_stage_label_id_sync ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::stage_trait::test_stage_trait_run ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::integration::test_stage_iteration_order ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::thread_safety::test_core_stage_send ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::thread_safety::test_core_stage_sync ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::stage_trait::test_stage_trait_is_empty ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::thread_safety::test_stage_position_send ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::thread_safety::test_stage_position_sync ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_chain_empty ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_chain_enforces_order ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_chain_with_systems ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_ordering_basic ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_ordering_marks_dirty ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_ordering_duplicate ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_ordering_self_reference ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_chain_systems_empty ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_chain_systems_enforces_order ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_chain_systems_single ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_chain_systems_three ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_add_ordering_missing_system ... ok
[INFO] [stdout] test ecs::schedule::tests::integration_tests::stage_trait::test_stage_trait_send_sync ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_chain_marks_dirty ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_chain_systems_two ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_rebuild_order_cycle ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_orderings_for ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_rebuild_order_no_orderings ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_clear_orderings ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_rebuild_order_three_systems ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_rebuild_order_basic ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_set_before_after ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_run_auto_rebuilds_order ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_would_ordering_cycle ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_remove_orderings_for ... ok
[INFO] [stdout] test ecs::schedule::tests::parallel_safety_tests::test_ordered_writer_reader ... ok
[INFO] [stdout] test ecs::schedule::tests::ordering_tests::test_remove_orderings_for_none ... ok
[INFO] [stdout] test ecs::schedule::tests::parallel_safety_tests::test_many_conflicting_writers_all_execute ... ok
[INFO] [stdout] test ecs::schedule::tests::parallel_safety_tests::test_write_write_conflict_serialized ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::cycle_error::test_cycle_error_describe ... ok
[INFO] [stdout] test ecs::schedule::tests::parallel_safety_tests::test_read_write_conflict_serialized ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::cycle_error::test_cycle_error_new ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_add_ordering ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_add_ordering_duplicate ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::cycle_error::test_cycle_error_display ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::cycle_error::test_cycle_error_empty ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_add_ordering_missing_system ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_add_ordering_self ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_add_system_duplicate ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_clear ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_add_system ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_cycle_detection ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_diamond ... ok
[INFO] [stdout] test ecs::schedule::tests::parallel_safety_tests::test_mixed_conflict_free_and_conflicting ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_new ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_clone ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_empty ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_linear_chain ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_no_constraints ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_self_cycle ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_sort_single ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::stress::test_sorter_complex_dag ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_with_capacity ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_clear ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_contains ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::stress::test_sorter_many_systems ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_contains_placeholder ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_get ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_get_mut ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_get_mut_nonexistent ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_get_out_of_bounds ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_get_nonexistent ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_contains_after_remove ... ok
[INFO] [stdout] test ecs::schedule::topological_sort::tests::sorter::test_sorter_would_cycle ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_len_after_remove ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_get_placeholder ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_len_after_insert ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_len_after_replace ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_clone ... ok
[INFO] [stdout] test ecs::sparse_set::tests::access::tests::test_len_empty ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_get_mut_by_dense_index ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_dense ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_send_sync ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_dense_index ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_get_by_dense_index ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_entities ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_into_iter_mut ... ok
[INFO] [stdout] test ecs::sparse_set::tests::construction::tests::test_default ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_stress_many_entities ... ok
[INFO] [stdout] test ecs::schedule::tests::parallel_safety_tests::test_stress_many_systems_shared_components ... ok
[INFO] [stdout] test ecs::sparse_set::tests::construction::tests::test_new ... ok
[INFO] [stdout] test ecs::sparse_set::tests::construction::tests::test_with_capacity ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_into_iter_ref ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_stress_sparse_indices ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_iter ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_iter_size_hint ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_iter_empty ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_iter_mut ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_values ... ok
[INFO] [stdout] test ecs::sparse_set::tests::iteration::tests::test_values_mut ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_insert_replace ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_double ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_last ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_insert_single ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_insert_multiple ... ok
[INFO] [stdout] test ecs::sparse_set::tests::advanced::tests::test_stress_insert_remove_cycle ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_middle ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_nonexistent ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_placeholder ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_single ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_any_storage_is_object_safe ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_any_storage_is_empty ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_remove_swap_correctness ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_insert_sparse_indices ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_component_type_name_via_any ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_contains_entity_via_any ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_sparse_set_implements_any_component_storage ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_remove_nonexistent_via_any ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_multiple_storages_as_any ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_storage_len_via_any ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_component_storage_is_send_sync ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_contains_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_remove_entity_via_any ... ok
[INFO] [stdout] test ecs::storage::tests::any_component_storage::test_clear_via_any ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_generic_function_with_component_storage ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_get_mut_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_insert_replace_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_insert_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_len_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_remove_nonexistent_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_remove_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_sparse_set_implements_component_storage ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_get_nonexistent_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_is_empty_via_trait ... ok
[INFO] [stdout] test ecs::storage::tests::integration::test_component_storage_workflow ... ok
[INFO] [stdout] test ecs::system::function_system::tests::edge_cases::test_multiple_runs ... ok
[INFO] [stdout] test ecs::system::function_system::tests::edge_cases::test_system_state_persists ... ok
[INFO] [stdout] test ecs::storage::tests::integration::test_string_component_storage ... ok
[INFO] [stdout] test ecs::storage::tests::integration::test_zero_sized_component_storage ... ok
[INFO] [stdout] test ecs::system::function_system::tests::function_system_direct::test_function_system_debug ... ok
[INFO] [stdout] test ecs::system::function_system::tests::edge_cases::test_empty_world ... ok
[INFO] [stdout] test ecs::storage::tests::component_storage_trait::test_get_via_trait ... ok
[INFO] [stdout] test ecs::system::function_system::tests::function_system_direct::test_function_system_run_initializes ... ok
[INFO] [stdout] test ecs::system::function_system::tests::function_system_direct::test_function_system_with_name ... ok
[INFO] [stdout] test ecs::system::function_system::tests::function_system_direct::test_function_system_initialize ... ok
[INFO] [stdout] test ecs::system::function_system::tests::function_system_direct::test_function_system_new ... ok
[INFO] [stdout] test ecs::system::function_system::tests::integration::test_multi_query_system ... ok
[INFO] [stdout] test ecs::system::function_system::tests::integration::test_boxed_system_collection ... ok
[INFO] [stdout] test ecs::system::function_system::tests::integration::test_reader_system ... ok
[INFO] [stdout] test ecs::sparse_set::tests::mutations::tests::test_insert_placeholder_panics - should panic ... ok
[INFO] [stdout] test ecs::system::function_system::tests::integration::test_run_boxed_systems ... ok
[INFO] [stdout] test ecs::system::function_system::tests::multi_params::test_fn_four_queries ... ok
[INFO] [stdout] test ecs::system::function_system::tests::one_param::test_fn_one_query_param ... ok
[INFO] [stdout] test ecs::system::function_system::tests::integration::test_system_with_actual_queries ... ok
[INFO] [stdout] test ecs::system::function_system::tests::multi_params::test_fn_three_queries ... ok
[INFO] [stdout] test ecs::system::function_system::tests::two_params::test_fn_two_filtered_queries ... ok
[INFO] [stdout] test ecs::system::function_system::tests::thread_safety::test_function_system_is_send ... ok
[INFO] [stdout] test ecs::system::function_system::tests::one_param::test_fn_filtered_query ... ok
[INFO] [stdout] test ecs::system::function_system::tests::zero_params::test_fn_no_params ... ok
[INFO] [stdout] test ecs::system::function_system::tests::thread_safety::test_boxed_system_is_send ... ok
[INFO] [stdout] test ecs::system::function_system::tests::two_params::test_fn_two_queries ... ok
[INFO] [stdout] test ecs::system::function_system::tests::zero_params::test_fn_no_params_is_read_only ... ok
[INFO] [stdout] test ecs::system::function_system::tests::multi_params::test_fn_with_filtered_queries ... ok
[INFO] [stdout] test ecs::system::function_system::tests::zero_params::test_fn_no_params_name ... ok
[INFO] [stdout] test ecs::system::function_system::tests::one_param::test_fn_query_access_tracking ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::custom_param::test_custom_param_access ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::custom_param::test_custom_param_implements_trait ... ok
[INFO] [stdout] test ecs::system::function_system::tests::zero_params::test_fn_closure_no_params ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::custom_param::test_custom_param_state_init ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::param_with_access::test_reader_is_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::param_with_access::test_reader_writer_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::static_param::test_static_param_no_access ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::custom_param::test_custom_param_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::static_param::test_static_param_state_get ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::param_with_access::test_readers_dont_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::static_param::test_static_param_state_get_mut ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::param_with_access::test_writer_is_not_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::static_param::test_static_param_get_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::custom_param::test_custom_param_get_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::static_param::test_static_param_state_init ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param::test_unit_implements_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param::test_unit_param_get_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param::test_unit_implements_system_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param_state::test_tuple_state_apply ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param::test_unit_param_update_access ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param_state::test_unit_state_apply ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_large_tuple_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_nested_tuple_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param_state::test_state_is_send_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param_state::test_tuple_state_init ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param_state::test_unit_state_init ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_single_tuple_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::system_param::test_unit_param_get_param_mut ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_double_tuple_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_triple_tuple_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_tuple_get_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_tuple_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::core_tests::tuple_param::test_tuple_update_access ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::conflict::test_different_event_types_no_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::conflict::test_reader_reader_no_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::conflict::test_reader_writer_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_multiple_readers_independent_cursors ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_is_empty_and_len ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_reads_events_from_world ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_state_is_send_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_cursor_tracks_position ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::writer::test_writer_access_is_write ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_implements_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_implements_system_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::reader::test_reader_access_is_read ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::writer::test_writer_sends_events ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::writer::test_writer_state_is_send_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::writer::test_writer_implements_system_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::writer::test_writer_send_batch ... ok
[INFO] [stdout] test ecs::system::system_param::tests::integration_tests::integration::test_param_with_entity_spawn ... ok
[INFO] [stdout] test ecs::system::system_param::tests::integration_tests::thread_safety::test_static_param_state_is_send_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::integration_tests::thread_safety::test_system_param_state_is_send ... ok
[INFO] [stdout] test ecs::system::system_param::tests::event_tests::writer::test_writer_get_param_panics - should panic ... ok
[INFO] [stdout] test ecs::system::system_param::tests::integration_tests::integration::test_combined_access_tracking ... ok
[INFO] [stdout] test ecs::system::system_param::tests::integration_tests::thread_safety::test_system_param_state_is_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_conflict::test_combined_access ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_conflict::test_res_mut_res_mut_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_conflict::test_res_res_mut_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_integration::test_res_mut_modifies_world ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_conflict::test_res_res_no_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_integration::test_res_state_is_send_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_integration::test_res_state_is_clone ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_integration::test_res_with_component_query ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_conflict::test_different_resources_no_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::integration_tests::thread_safety::test_tuple_state_is_send_sync ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_get_param_mut ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_not_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_implements_system_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_state_init ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_get_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_implements_read_only ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_update_access ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_access_no_conflict ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_get_param_mut ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_implements_system_param ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_multiple_resources ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_state_init ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_component_access ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_collection_of_different_systems ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_conflicts_with ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_get_param_mut_missing_resource - should panic ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_is_read_only ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_no_conflict_different_components ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_run ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_get_param_missing_resource - should panic ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_run_multiple_systems ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_new ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_debug ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_modify_resource ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_param::test_res_update_access ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_initialize ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_should_run ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::integration_tests::test_system_access_conflict_detection ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::boxed_system_tests::test_unique_ids ... ok
[INFO] [stdout] test ecs::system::system_param::tests::resource_tests::res_mut_param::test_res_mut_get_param_panics - should panic ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::integration_tests::test_boxed_system_pipeline ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::integration_tests::test_conditional_system_execution ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::integration_tests::test_system_modifies_world ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::into_system_tests::test_into_system_preserves_access ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::into_system_tests::test_multiple_into_system ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::into_system_tests::test_system_into_boxed ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_copy_and_clone ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_debug_format_invalid ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::integration_tests::test_system_adds_components ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_display_format ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_equality ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_default_is_invalid ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_debug_format_valid ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_from_raw ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::into_system_tests::test_into_system_preserves_behavior ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_hash ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_invalid_constant ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_from_raw_zero_is_invalid ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_new_creates_unique_ids ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_conflicts_with_read_read_same ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_component_access ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_ordering ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_conflicts_with_write_write ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_thread_safety ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_clone ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_conflicts_with_no_conflict ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_conflicts_with_write_read ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_default ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_debug ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_set_component_access ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_set_name ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_id_tests::test_valid_ids ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_is_read_only ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_component_access_custom ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_new ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_new_with_string ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_initialize ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_meta_tests::test_is_read_only ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_is_send ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_component_access_default ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_should_run_default ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_name ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_run ... ok
[INFO] [stdout] test ecs::system::system_trait::tests::system_trait_tests::test_system_should_run_custom ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_animation_system_no_sprite_no_crash ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_animation_system_one_shot_stops ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_animation_system_loop_wraps ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_animation_system_skips_paused ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_float_less_than_condition ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_animation_system_updates_sprite_source_rect ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_animation_system_zero_frame_duration_no_hang ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_multiple_conditions_all_must_match ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_sprite_animator_loop_restart ... ok
[INFO] [stdout] test ecs::systems::animation::tests::test_sprite_animator_one_shot_completion ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_blend_duration_delays_switch ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_entity_without_sprite_animator_is_skipped ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_transition_triggers_on_bool_param ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_provider_accessors ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_handle_map_default ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_system_construction ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_system_component_access_is_empty ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_system_should_run ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_system_run_with_empty_handle_map ... ok
[INFO] [stdout] test ecs::systems::physics_sync_3d::tests::test_handle_map_3d_default ... ok
[INFO] [stdout] test ecs::systems::physics_sync_3d::tests::test_system_3d_construction ... ok
[INFO] [stdout] test ecs::systems::physics_sync_3d::tests::test_system_3d_provider_accessors ... ok
[INFO] [stdout] test ecs::systems::physics_sync_2d::tests::test_system_run_empty_world ... ok
[INFO] [stdout] test ecs::systems::physics_sync_3d::tests::test_system_3d_run_with_empty_handle_map ... ok
[INFO] [stdout] test ecs::systems::physics_sync_3d::tests::test_system_3d_should_run ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_no_transition_when_conditions_not_met ... ok
[INFO] [stdout] test ecs::systems::physics_sync_3d::tests::test_system_3d_run_empty_world ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_animation_looping_wraps_time ... ok
[INFO] [stdout] test ecs::systems::animation_controller::tests::test_transition_triggers_on_float_param ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_animator_play_pause_reset ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_animation_non_looping_clamps ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_bone_hierarchy_propagation ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_bone_hierarchy_propagation_with_parent_rotation ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_animator_is_finished ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_bone_transform_combine_translation ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_bone_transform_lerp_midpoint ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_bone_transform_to_matrix_identity ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_keyframe_interpolation_after_last ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_keyframe_interpolation_empty_returns_default ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_bone_transform_default_is_identity ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_keyframe_interpolation_before_first ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_keyframe_interpolation_midpoint ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_mesh_deformation_multi_bone_weights ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_paused_animator_does_not_advance ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_skeleton_bone_count ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_mesh_deformation_single_bone_weight ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_2d_propagation_parent_child ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_skeleton_find_bone ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_run_on_empty_world ... ok
[INFO] [stdout] test ecs::systems::skeletal_animation::tests::test_two_bone_animation_playback ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_should_run_returns_true ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_component_access_declares_reads ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_component_access_is_not_empty ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_both_2d_and_3d_propagate_in_same_run ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_system_name ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_system_is_not_read_only ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_multiple_components ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_recursive_deep_hierarchy ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_recursive_children_cloned_and_reparented ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_recursive_no_children ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_with_children_is_removed ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_single_component ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_with_parent_is_removed ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_entity_recursive_nonexistent_returns_none ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_nonexistent_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_with_unregistered_component_skips_gracefully ... ok
[INFO] [stdout] test ecs::world::serialize_entity::tests::test_deserialize_onto_dead_entity_returns_zero ... ok
[INFO] [stdout] test ecs::world::clone_entity::tests::test_clone_independence_modify_clone_not_original ... ok
[INFO] [stdout] test ecs::world::serialize_entity::tests::test_serialize_nonexistent_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::serialize_entity::tests::test_roundtrip_serialize_deserialize ... ok
[INFO] [stdout] test ecs::world::serialize_entity::tests::test_serialize_entity_single_component ... ok
[INFO] [stdout] test ecs::world::serialize_entity::tests::test_serialize_entity_multiple_components ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_different_component_types ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_mut_returns_none_after_despawn ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_mut_returns_none_for_dead_entity ... ok
[INFO] [stdout] test ecs::world::serialize_entity::tests::test_serialize_skips_unregistered_components ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_mut_returns_mutable_reference ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_access_multiple_component_types_on_same_entity ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_mut_returns_none_for_placeholder ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_correct_component ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_none_for_dead_entity ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_correct_component_for_multiple_entities ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_none_for_placeholder ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_none_after_despawn ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_mut_returns_none_when_no_storage_exists ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_none_for_stale_entity ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_distinguishes_different_component_types ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_false_after_despawn ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_false_for_dead_entity ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_false_for_placeholder ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_false_for_stale_entity ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_none_when_no_storage_exists ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_get_returns_none_when_entity_lacks_component ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_false_when_entity_lacks_component ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_true_when_entity_has_component ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_has_returns_false_when_no_storage_exists ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::archetype_count::test_empty_archetype_exists ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::clear::test_clear_preserves_archetype_count ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::archetype_count::test_archetype_count_starts_at_one ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::component_types::test_component_type_count_starts_at_zero ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::clear::test_clear_resets_entity_count ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::construction::test_world_debug ... ok
[INFO] [stdout] test ecs::world::tests::component_access_tests::component_access::test_type_safety_different_types_same_layout ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::construction::test_world_default ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::construction::test_world_new ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::construction::test_world_with_capacity ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::direct_access::test_archetypes_accessor ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::direct_access::test_entities_accessor ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::edge_cases::test_zero_capacity_world ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::entity_count::test_entity_count_starts_at_zero ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::entity_archetype::test_nonexistent_entity_has_no_archetype ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::entity_count::test_is_empty_starts_true ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::is_alive::test_fake_entity_not_alive ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::is_alive::test_entity_index_zero_not_alive_when_empty ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::entity_archetype::test_placeholder_has_no_archetype ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::is_alive::test_placeholder_not_alive ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::edge_cases::test_large_capacity_world ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::storage::test_get_or_create_storage_mut_returns_same_storage ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::storage::test_get_storage_returns_none_for_unregistered ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::thread_safety::test_world_is_not_send_due_to_non_send_resources ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::storage::test_multiple_component_types_separate_storage ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::storage::test_get_storage_after_mut_access ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::storage::test_get_or_create_storage_mut_creates_storage ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_cleans_all_components ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_deep_hierarchy ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_3d_propagation_multi_level_hierarchy ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_no_children ... ok
[INFO] [stdout] test ecs::systems::transform::tests::test_3d_root_entity_global_equals_local ... ok
[INFO] [stdout] test ecs::world::tests::construction_tests::component_types::test_has_component_type_false_initially ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_multiple_children ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_multiple_entities ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_dead_entity ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_removes_from_archetype ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_grandchildren ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_preserves_siblings ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_returns_false_for_dead_entity ... ok
[INFO] [stdout] test ecs::world::tests::despawn_recursive_tests::despawn_recursive::test_despawn_recursive_single_child ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_returns_false_for_never_allocated ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_returns_false_for_placeholder ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_stale_entity ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_duplicate_entities ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_empty ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_preserves_other_entities ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn::test_despawn_single_entity ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_multiple ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_partial_invalid ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_single ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_with_placeholder ... ok
[INFO] [stdout] test ecs::world::tests::entity_world_mut_tests::entity_world_mut::test_entity_world_mut_debug ... ok
[INFO] [stdout] test ecs::world::tests::entity_world_mut_tests::entity_world_mut::test_entity_world_mut_world_ref ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::entity_builder::test_entity_builder_chaining_returns_self ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::entity_builder::test_entity_builder_insert_multiple ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::entity_builder::test_entity_builder_insert_replace ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::entity_builder::test_entity_builder_insert_single ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::insert_batch::test_insert_batch_empty ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::insert_batch::test_insert_batch_multiple ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::insert_batch::test_insert_batch_single ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::insert_batch::test_insert_batch_skips_dead_entities ... ok
[INFO] [stdout] test ecs::world::tests::insert_batch_builder_tests::insert_batch::test_insert_batch_with_placeholder ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_creates_correct_archetype_count ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_first_component_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_large_component ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_makes_component_accessible ... ok
[INFO] [stdout] test ecs::world::tests::entity_world_mut_tests::entity_world_mut::test_entity_world_mut_id ... ok
[INFO] [stdout] test ecs::world::tests::entity_world_mut_tests::entity_world_mut::test_entity_world_mut_world_mut ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_multiple_entities_different_components ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_multiple_types_registers_all ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_on_dead_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_registers_component_type ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_removes_entity_from_old_archetype ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_replace_returns_old_value ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_same_component_does_not_change_archetype ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_second_component_creates_new_archetype ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_on_never_allocated_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_on_placeholder_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_adds_entity_to_new_archetype ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_after_despawn_and_respawn ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_multiple_entities_same_components ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_stress_many_component_types ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_add_cycle ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_adds_to_new_archetype ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_string_component ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_triggers_archetype_transition ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_after_despawn_and_respawn ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_large_component ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_dead_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_different_types_same_entity ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_never_allocated_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_one_of_multiple_components ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_nonexistent_component_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_placeholder_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_preserves_other_entities_components ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_removes_from_old_archetype ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_stale_entity ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_string_component ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_returns_component ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_creates_correct_target_archetype ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_entity_no_longer_has_component ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_take_dead_entity_returns_none ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_to_empty_archetype ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_triggers_archetype_transition ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_twice_returns_none_second_time ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_take_removes_component ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_take_returns_component ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_batch_empty ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_batch_multiple ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_builder_id_matches ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_builder_provides_world_access ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_batch_unique_entities ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_empty_adds_to_empty_archetype ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_empty_creates_entity ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_empty_multiple_entities ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_empty_unique_entities ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_mixed_individual_and_batch ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_returns_builder ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_updates_archetype_entity_count ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_add_batch_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_add_batch_invalid_context ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_batch_single ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_add_batch_null_data ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_add_batch_null_entities ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_add_batch_unregistered_type ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_batch_zero_count ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_has_batch_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_has_batch_invalid_context ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_has_batch_null_results ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_has_batch_unregistered_type ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_remove_batch_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_remove_batch_invalid_context ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_remove_batch_unregistered_type ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_registration::test_register_type_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_registration::test_register_type_null_name ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_add_null_data ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_add_invalid_context ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_add_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_add_unregistered_type ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_batch::test_component_add_batch_size_mismatch ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_add_wrong_size ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_get_mut_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_get_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_remove_basic ... ok
[INFO] [stdout] test ffi::component::ffi_tests::tests_single::test_component_has_basic ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_chain ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_default ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_new_and_build ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_null_safety ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_free ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_alpha ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_anchor ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_color ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_custom_size ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_source_rect ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_texture ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_color_from_hex ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_builder_with_flip ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_color_constants ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_color_lerp ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_anchor ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_builder_chain ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_custom_size ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_flip ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_set_color ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_null_safety ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_new ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_size ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_source_rect ... ok
[INFO] [stdout] test ffi::component_sprite::tests::test_ffi_sprite_with_color ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_animator_from_clip_empty ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_animator_from_clip_loop ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_animator_from_clip_oneshot ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_clip_builder_new_returns_non_null ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_null_safety ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_clip_builder_add_frame_returns_same_pointer ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_playback_queries_on_finished_animator ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_clip_builder_free_does_not_crash ... ok
[INFO] [stdout] test ecs::world::tests::remove_tests::remove::test_remove_stress_many_entities ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_at_position ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_looking_at ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_chain ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_free ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_new_and_build ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_rotate ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_scale_by ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_with_position ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_with_rotation ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_null_safety ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_with_rotation_degrees ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_translate ... ok
[INFO] [stdout] test ffi::component_sprite_animator::tests::test_playback_queries_on_new_animator ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_default ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_from_position ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_forward ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_with_scale_uniform ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_builder_with_scale ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_size ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_lerp ... ok
[INFO] [stdout] test ffi::context::tests::test_context_debug ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_copy_clone ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_translate ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_equality ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_default ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_display ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_invalid ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_hash ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_is_send ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_new ... ok
[INFO] [stdout] test ffi::context::tests::test_context_id_is_sync ... ok
[INFO] [stdout] test ffi::context::tests::test_context_validate_thread ... ok
[INFO] [stdout] test ffi::context::tests::test_context_new ... ok
[INFO] [stdout] test ffi::context::tests::test_context_world_access ... ok
[INFO] [stdout] test ffi::context::tests::test_full_lifecycle ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_clone ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_create_multiple ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_debug ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_default ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_destroy ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_new ... ok
[INFO] [stdout] test ffi::context::tests::test_multiple_contexts_isolation ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_create ... ok
[INFO] [stdout] test ffi::context::tests::test_many_concurrent_contexts ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_create_multiple ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_debug ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_null_safety ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_destroy ... ok
[INFO] [stdout] test ffi::component_transform2d::tests::test_ffi_transform2d_rotate ... ok
[INFO] [stdout] test ffi::context::tests::test_handle_create ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_destroy_invalid ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_free_list_reuse ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_destroy_twice ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_generation_increment ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_get ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_get_invalid ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_get_mut ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_new ... ok
[INFO] [stdout] test ffi::entity::tests::test_clone_entity_invalid_context ... ok
[INFO] [stdout] test ffi::entity::tests::test_clone_entity_invalid_entity ... ok
[INFO] [stdout] test ffi::context::tests::test_registry_is_valid ... ok
[INFO] [stdout] test ffi::entity::tests::test_clone_entity_recursive_success ... ok
[INFO] [stdout] test ffi::entity::tests::test_clone_entity_success ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_already_despawned ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_basic ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_batch_basic ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_batch_partial_invalid ... ok
[INFO] [stdout] test ffi::entity::tests::test_clone_entity_recursive_invalid_context ... ok
[INFO] [stdout] test ffi::context::tests::test_stale_id_detection ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_batch_zero_count ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_invalid_context ... ok
[INFO] [stdout] test ffi::entity::tests::test_despawn_invalid_entity ... ok
[INFO] [stdout] test ffi::entity::tests::test_entity_count_after_despawn ... ok
[INFO] [stdout] test ffi::entity::tests::test_entity_count_basic ... ok
[INFO] [stdout] test ffi::entity::tests::test_entity_count_invalid_context ... ok
[INFO] [stdout] test ffi::entity::tests::test_is_alive_basic ... ok
[INFO] [stdout] test ffi::entity::tests::test_is_alive_invalid_context ... ok
[INFO] [stdout] test ffi::entity::tests::test_is_alive_invalid_entity ... ok
[INFO] [stdout] test ffi::entity::tests::test_mixed_operations ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_batch_basic ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_batch_invalid_context ... ok
[INFO] [stdout] test ffi::context::tests::test_stress_create_destroy ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_batch_large ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_empty_basic ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_batch_null_pointer ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_batch_zero_count ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_despawn_respawn ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_empty_invalid_context ... ok
[INFO] [stdout] test ffi::entity::tests::test_spawn_empty_multiple ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_invalid_context ... ok
[INFO] [stdout] test ecs::world::tests::spawn_tests::spawn::test_spawn_batch_large ... ok
[INFO] [stdout] test ffi::entity::tests::test_stress_spawn_despawn ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_null_results ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_zero_count ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_class_degraded ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_invalid_entities ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_class_fatal ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_class_recoverable ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_mixed ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_basic ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_null_entities ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_hint_success_returns_zero ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_message_buffer_too_small ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_message_no_error ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_message_null_buffer ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_message_null_buffer_no_error ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_message_success_path ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_operation_no_context ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_operation_with_context ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_subsystem_null_buffer_returns_neg_size ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_subsystem_with_context ... ok
[INFO] [stdout] test ffi::plugin::tests::test_invalid_context ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_hint_truncates ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_hint_writes_hint ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_error_recovery_hint_null_buffer ... ok
[INFO] [stdout] test ffi::error::tests::test_goud_last_error_subsystem_no_context ... ok
[INFO] [stdout] test ffi::entity::tests_batch_alive::test_is_alive_batch_large ... ok
[INFO] [stdout] test ffi::plugin::tests::test_register_and_query_plugin ... ok
[INFO] [stdout] test ffi::plugin::tests::test_register_duplicate_returns_error ... ok
[INFO] [stdout] test ffi::plugin::tests::test_unregister_nonexistent_returns_error ... ok
[INFO] [stdout] test ffi::plugin::tests::test_unregister_plugin ... ok
[INFO] [stdout] test ffi::scene::tests::test_create_scene_duplicate_fails ... ok
[INFO] [stdout] test ffi::scene::tests::test_create_scene_invalid_context ... ok
[INFO] [stdout] test ffi::scene::tests::test_create_scene_null_name ... ok
[INFO] [stdout] test ffi::scene::tests::test_create_scene_success ... ok
[INFO] [stdout] test ffi::scene::tests::test_destroy_current_scene_resets_to_default ... ok
[INFO] [stdout] test ffi::scene::tests::test_destroy_default_scene_fails ... ok
[INFO] [stdout] test ffi::scene::tests::test_destroy_invalid_context ... ok
[INFO] [stdout] test ffi::scene::tests::test_destroy_scene_success ... ok
[INFO] [stdout] test ffi::scene::tests::test_get_by_name_not_found ... ok
[INFO] [stdout] test ffi::scene::tests::test_get_by_name_null_ptr ... ok
[INFO] [stdout] test ffi::scene::tests::test_get_by_name_success ... ok
[INFO] [stdout] test ffi::plugin::tests::test_is_registered_not_found ... ok
[INFO] [stdout] test ffi::plugin::tests::test_list_buffer_too_small ... ok
[INFO] [stdout] test ffi::scene::tests::test_get_current_invalid_context ... ok
[INFO] [stdout] test ffi::scene::tests::test_is_active_invalid_context ... ok
[INFO] [stdout] test ffi::scene::tests::test_scene_count_after_create ... ok
[INFO] [stdout] test ffi::scene::tests::test_scene_count_default ... ok
[INFO] [stdout] test ffi::scene::tests::test_scene_count_invalid_context ... ok
[INFO] [stdout] test ffi::scene::tests::test_set_active_and_check ... ok
[INFO] [stdout] test ffi::scene::tests::test_set_active_nonexistent_fails ... ok
[INFO] [stdout] test ffi::scene::tests::test_set_and_get_current ... ok
[INFO] [stdout] test ffi::scene::tests::test_set_current_nonexistent_fails ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_copy_clone ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_default ... ok
[INFO] [stdout] test ffi::plugin::tests::test_list_empty ... ok
[INFO] [stdout] test ffi::plugin::tests::test_list_plugins ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_display ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_equality ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_from_u64 ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_hash ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_invalid ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_is_send ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_is_sync ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_new ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_size ... ok
[INFO] [stdout] test ffi::types::tests::test_entity_id_to_u64 ... ok
[INFO] [stdout] test ffi::types::tests::test_result_copy_clone ... ok
[INFO] [stdout] test ffi::types::tests::test_result_default ... ok
[INFO] [stdout] test ffi::types::tests::test_result_display ... ok
[INFO] [stdout] test ffi::types::tests::test_result_equality ... ok
[INFO] [stdout] test ffi::plugin::tests::test_null_pointer ... ok
[INFO] [stdout] test ffi::types::tests::test_result_err ... ok
[INFO] [stdout] test ffi::types::tests::test_result_from_error_code ... ok
[INFO] [stdout] test ffi::types::tests::test_result_is_send ... ok
[INFO] [stdout] test ffi::types::tests::test_result_is_sync ... ok
[INFO] [stdout] test ffi::types::tests::test_result_repr_c ... ok
[INFO] [stdout] test ffi::types::tests::test_result_size ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_buffer_lifecycle ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_default_trait ... ok
[INFO] [stdout] test ffi::types::tests::test_result_ok ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_destroyed_handle_operations_return_errors ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_double_destroy_returns_false ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_draw_calls_do_not_panic ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_frame_lifecycle ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_shader_lifecycle ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_info_values ... ok
[INFO] [stdout] test ffi::scene::tests::test_get_current_default ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_state_methods_do_not_panic ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_buffer_bind ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_buffer_lifecycle ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_buffer_slot_reuse ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_buffer_update ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_buffer_update_out_of_bounds ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_invalid_handle_operations ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_multiple_buffers ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::buffer_tests::test_opengl_backend_creation ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_buffer_usage_to_gl_usage ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_opengl_backend_implements_send_sync ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_texture_filter_to_gl ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_texture_format_to_gl ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_texture_wrap_to_gl ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_topology_to_gl_conversion ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_arrays_basic ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_arrays_instanced ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_arrays_without_shader_fails ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_arrays_without_vertex_buffer_fails ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_indexed_basic ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_indexed_instanced ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_indexed_u16 ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_draw_indexed_without_index_buffer_fails ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::draw_call_tests::test_set_vertex_attributes_multiple ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_multiple_shaders ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_bind_unbind ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_compilation_error ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_destroy_clears_bound_state ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_empty_sources ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_invalid_handle ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_lifecycle ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_set_uniforms ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_slot_reuse ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::shader_tests::test_shader_uniform_location ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_bind ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_empty_data ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_invalid_dimensions ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_lifecycle ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_multiple_units ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_slot_reuse ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_update ... ignored
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::texture_tests::test_texture_update_bounds_check ... ignored
[INFO] [stdout] test libs::graphics::backend::tests::test_backend_capabilities_clone ... ok
[INFO] [stdout] test libs::graphics::backend::null::tests::test_texture_lifecycle ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_backend_capabilities_default ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_attribute_type_to_gl_conversion ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_blend_factor_to_gl ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_buffer_type_to_gl_target ... ok
[INFO] [stdout] test libs::graphics::backend::opengl::gl_tests::conversion_tests::test_bytes_per_pixel ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_backend_info_clone ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_cull_face_default ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_buffer_handle_invalid ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_buffer_handle_valid ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_buffer_type_repr ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_buffer_usage_default ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_handle_types_are_copy ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_primitive_topology_default ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_primitive_topology_variants ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_shader_handle_equality ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_texture_filter_default ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_blend_factor_copy ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_blend_factor_variants ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_cull_face_copy ... ok
[INFO] [stdout] test libs::graphics::backend::tests::test_cull_face_variants ... ok
[INFO] [stdout] test ecs::world::tests::despawn_tests::despawn_batch::test_despawn_batch_large ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_texture_handle_valid ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_texture_wrap_default ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_vertex_attribute_type_component_count ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_vertex_attribute_new ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_vertex_attribute_type_size ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_texture_format_variants ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_vertex_layout_new ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_construction ... ok
[INFO] [stdout] test libs::platform::tests::window_config_clone ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_default ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_vertex_layout_total_size ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_default_state ... ok
[INFO] [stdout] test libs::graphics::backend::types::tests::test_vertex_layout_with_attributes ... ok
[INFO] [stdout] test libs::platform::tests::window_config_default_values ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_gamepad_stubs ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_generic_capabilities ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_sync_key_held ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_sync_key_pressed ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_sync_key_released ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_update_noop ... ok
[INFO] [stdout] test libs::providers::impls::glfw_window::tests::test_glfw_window_provider_has_platform_methods ... ok
[INFO] [stdout] test libs::providers::impls::opengl_render::tests::test_opengl_render_provider_type_is_send_sync ... ok
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_empty_world ... ignored
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_multiple_sprites ... ignored
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_run ... ignored
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_z_sorting ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_interleaved_textures_batching ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_max_batch_size_enforcement ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_disabled ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_multiple_textures ... ignored
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_new ... ok
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_same_z_different_texture ... ignored
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_debug ... ok
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_single_texture ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_sort_by_texture ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_stress_test ... ignored
[INFO] [stdout] test rendering::sprite_batch::batching_tests::test_texture_batching_with_z_layers ... ignored
[INFO] [stdout] test rendering::sprite_batch::gl_tests::test_sprite_batch_begin_end ... ignored
[INFO] [stdout] test rendering::sprite_batch::gl_tests::test_sprite_batch_gather_empty_world ... ignored
[INFO] [stdout] test rendering::sprite_batch::gl_tests::test_sprite_batch_new ... ignored
[INFO] [stdout] test rendering::sprite_batch::gl_tests::test_sprite_batch_sort_z_layer ... ignored
[INFO] [stdout] test rendering::sprite_batch::gl_tests::test_sprite_batch_statistics ... ignored
[INFO] [stdout] test rendering::sprite_batch::integration_tests::test_gather_sprites_clears_previous_frame ... ignored
[INFO] [stdout] test rendering::sprite_batch::integration_tests::test_gather_sprites_empty_world ... ignored
[INFO] [stdout] test rendering::sprite_batch::integration_tests::test_gather_sprites_from_world ... ignored
[INFO] [stdout] test rendering::sprite_batch::tests::test_sprite_batch_config_default ... ok
[INFO] [stdout] test rendering::sprite_batch::tests::test_sprite_batch_entry_creation ... ok
[INFO] [stdout] test rendering::sprite_batch::tests::test_sprite_instance_creation ... ok
[INFO] [stdout] test rendering::sprite_batch::tests::test_sprite_vertex_layout ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_capabilities ... ok
[INFO] [stdout] test libs::providers::impls::glfw_input::tests::test_glfw_input_sync_mouse ... ok
[INFO] [stdout] test rendering::render_system::tests::test_sprite_render_system_accessors ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_default_creates_empty_cache ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_clear_removes_all_entries ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_cache_get_or_create_returns_atlas ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_cache_hit_returns_same_atlas ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_cache_different_handles_get_different_entries ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_process_reloads_partial_invalidation ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_process_reloads_returns_zero_for_unknown_fonts ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_cache_different_sizes_get_different_entries ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_glyph_info_returns_none_for_missing_char ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_contains_all_printable_ascii ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_dimensions_are_power_of_two ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_texture_data_length_matches_dimensions ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_no_uv_overlap_for_visible_glyphs ... ok
[INFO] [stderr] ALSA lib confmisc.c:855:(parse_card) cannot find card '0'
[INFO] [stderr] ALSA lib conf.c:5204:(_snd_config_evaluate) function snd_func_card_inum returned error: No such file or directory
[INFO] [stderr] ALSA lib confmisc.c:422:(snd_func_concat) error evaluating strings
[INFO] [stderr] ALSA lib conf.c:5204:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
[INFO] [stderr] ALSA lib confmisc.c:1342:(snd_func_refer) error evaluating name
[INFO] [stderr] ALSA lib conf.c:5204:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
[INFO] [stderr] ALSA lib conf.c:5727:(snd_config_expand) Evaluate error: No such file or directory
[INFO] [stderr] ALSA lib pcm.c:2721:(snd_pcm_open_noupdate) Unknown PCM default
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_process_reloads_invalidates_multiple_fonts ... ok
[INFO] [stdout] test rendering::text::atlas_cache::tests::test_invalidate_font_removes_all_sizes ... ok
[INFO] [stdout] test rendering::text::rasterizer::tests::test_rasterize_glyph_a_bitmap_has_nonzero_pixels ... ok
[INFO] [stdout] test rendering::text::rasterizer::tests::test_rasterize_glyph_a_has_nonzero_dimensions ... ok
[INFO] [stdout] test rendering::text::rasterizer::tests::test_rasterize_glyph_bitmap_length_matches_dimensions ... ok
[INFO] [stdout] test rendering::text::rasterizer::tests::test_rasterize_metrics_advance_width_positive_for_visible_glyph ... ok
[INFO] [stdout] test rendering::text::rasterizer::tests::test_rasterize_multiple_chars_preserves_order ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_space_glyph_has_zero_uv_area ... ok
[INFO] [stdout] test sdk::collision::tests::test_aabb_aabb_exact_touch ... ok
[INFO] [stdout] test rendering::text::rasterizer::tests::test_rasterize_space_glyph_has_zero_dimensions ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_gpu_texture_returns_none_before_upload ... ok
[INFO] [stdout] test sdk::collision::tests::test_aabb_overlap_true ... ok
[INFO] [stdout] test sdk::collision::tests::test_aabb_overlap_false ... ok
[INFO] [stdout] test sdk::collision::tests::test_aabb_aabb_overlapping ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_aabb_overlapping ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_circle_same_center ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_circle_separated ... ok
[INFO] [stdout] test rendering::text::glyph_atlas::tests::test_atlas_visible_glyph_has_nonzero_uv_area ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_overlap_false ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_overlap_true ... ok
[INFO] [stdout] test sdk::collision::tests::test_distance_squared_pythagorean ... ok
[INFO] [stdout] test sdk::collision::tests::test_contact_reexported ... ok
[INFO] [stdout] test sdk::collision::tests::test_distance_pythagorean ... ok
[INFO] [stdout] test sdk::collision::tests::test_distance_squared_zero ... ok
[INFO] [stdout] test sdk::collision::tests::test_distance_zero ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_aabb_separated ... ok
[INFO] [stdout] test sdk::collision::tests::test_point_in_rect_inside ... ok
[INFO] [stdout] test sdk::collision::tests::test_circle_circle_overlapping ... ok
[INFO] [stdout] test sdk::collision::tests::test_point_in_rect_outside ... ok
[INFO] [stdout] test sdk::color::tests::test_color_from_hex ... ok
[INFO] [stdout] test sdk::color::tests::test_color_from_u8 ... ok
[INFO] [stdout] test sdk::color::tests::test_color_lerp ... ok
[INFO] [stdout] test sdk::color::tests::test_color_rgba ... ok
[INFO] [stdout] test sdk::collision::tests::test_point_in_circle_inside ... ok
[INFO] [stdout] test sdk::color::tests::test_color_white ... ok
[INFO] [stdout] test sdk::collision::tests::test_point_in_circle_on_edge ... ok
[INFO] [stdout] test sdk::collision::tests::test_point_in_circle_outside ... ok
[INFO] [stdout] test sdk::collision::tests::test_point_in_rect_on_edge ... ok
[INFO] [stdout] test sdk::collision::tests::test_aabb_aabb_separated ... ok
[INFO] [stdout] test sdk::color::tests::test_color_with_alpha ... ok
[INFO] [stdout] test sdk::components::tests::test_component_trait_reexport ... ok
[INFO] [stdout] test sdk::components::tests::test_global_transform2d_reexport ... ok
[INFO] [stdout] test sdk::components::tests::test_transform2d_reexport ... ok
[INFO] [stdout] test libs::providers::impls::rodio_audio::tests::test_rodio_audio_provider ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_overlay_corner_default ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_overlay_disabled_by_default ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_fps_stats_default ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_default_overlay ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_rolling_window_eviction ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_set_corner ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_set_enabled ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_set_update_interval ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_single_frame ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_stats_computed_after_interval ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_stats_with_known_frame_times ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_update_interval_respects_timing ... ok
[INFO] [stdout] test sdk::engine_config::tests::test_engine_config_build_returns_parts ... ok
[INFO] [stdout] test sdk::engine_config::tests::test_engine_config_builder_chain ... ok
[INFO] [stdout] test sdk::engine_config::tests::test_engine_config_custom_providers ... ok
[INFO] [stdout] test sdk::engine_config::tests::test_engine_config_default ... ok
[INFO] [stdout] test sdk::entity::tests::test_ffi_entity_count ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_zero_delta_time ... ok
[INFO] [stdout] test sdk::engine_config::tests::test_engine_config_with_game_config ... ok
[INFO] [stdout] test sdk::entity::tests::test_ffi_entity_despawn ... ok
[INFO] [stdout] test sdk::entity::tests::test_ffi_entity_despawn_batch ... ok
[INFO] [stdout] test sdk::entity::tests::test_ffi_entity_spawn_batch ... ok
[INFO] [stdout] test sdk::entity::tests::test_ffi_entity_is_alive_batch ... ok
[INFO] [stdout] test sdk::entity_builder::tests::test_entity_builder_entity_access ... ok
[INFO] [stdout] test sdk::components::tests::test_hierarchy_reexport ... ok
[INFO] [stdout] test sdk::entity_builder::tests::test_entity_builder_basic ... ok
[INFO] [stdout] test sdk::components::tests::test_rigidbody_reexport ... ok
[INFO] [stdout] test sdk::entity_builder::tests::test_entity_builder_with_component ... ok
[INFO] [stdout] test sdk::debug_overlay::tests::test_new_overlay_has_default_stats ... ok
[INFO] [stdout] test sdk::entity::tests::test_ffi_entity_spawn_empty ... ok
[INFO] [stdout] test sdk::entity_builder::tests::test_entity_builder_with_multiple_components ... ok
[INFO] [stdout] test sdk::entity_builder::tests::test_entity_builder_with_if ... ok
[INFO] [stdout] test sdk::game::tests::test_game_hud_simultaneous ... ok
[INFO] [stdout] test sdk::game::tests::test_backward_compat_default ... ok
[INFO] [stdout] test sdk::game::tests::test_backward_compat_new ... ok
[INFO] [stdout] test sdk::game::tests::test_full_game_workflow ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_component_operations ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_debug ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_default ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_despawn ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_from_engine_config ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_new ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_from_engine_config_preserves_settings ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_providers_accessible ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_run_with_quit ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_spawn_empty ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_spawn ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_update_frame ... ok
[INFO] [stdout] test sdk::game_config::tests::test_game_config_new ... ok
[INFO] [stdout] test sdk::game_config::tests::test_game_context_new ... ok
[INFO] [stdout] test sdk::game_config::tests::test_game_context_quit ... ok
[INFO] [stdout] test sdk::game_config::tests::test_game_context_update ... ok
[INFO] [stdout] test sdk::game_config::tests::test_game_config_builder ... ok
[INFO] [stdout] test sdk::game_config::tests::test_game_config_default ... ok
[INFO] [stdout] test sdk::input::tests::test_input_manager_accessible ... ok
[INFO] [stdout] test sdk::input::tests::test_action_mapping ... ok
[INFO] [stdout] test sdk::game::tests::test_inactive_scene_not_updated ... ok
[INFO] [stdout] test sdk::input::tests::test_input_manager_mutable ... ok
[INFO] [stdout] test sdk::game::tests::test_run_updates_all_active_scenes ... ok
[INFO] [stdout] test sdk::input::tests::test_key_not_pressed_by_default ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_spawn_batch ... ok
[INFO] [stdout] test sdk::input::tests::test_key_press_and_query ... ok
[INFO] [stdout] test sdk::input::tests::test_mouse_button_not_pressed_by_default ... ok
[INFO] [stdout] test sdk::input::tests::test_scroll_delta_default ... ok
[INFO] [stdout] test sdk::game::tests::test_goud_game_world_access ... ok
[INFO] [stdout] test sdk::input::tests::test_mouse_position_default ... ok
[INFO] [stdout] test sdk::input::tests::test_mouse_delta_default ... ok
[INFO] [stdout] test sdk::rendering::tests::test_begin_2d_render_headless ... ok
[INFO] [stdout] test sdk::rendering::tests::test_draw_quad_headless_returns_false ... ok
[INFO] [stdout] test sdk::rendering::tests::test_draw_sprite_headless_returns_false ... ok
[INFO] [stdout] test sdk::rendering::tests::test_draw_sprites_headless ... ok
[INFO] [stdout] test sdk::rendering::tests::test_begin_render_headless ... ok
[INFO] [stdout] test sdk::rendering::tests::test_end_render_headless ... ok
[INFO] [stdout] test sdk::rendering::tests::test_has_2d_renderer_headless ... ok
[INFO] [stdout] test sdk::rendering::tests::test_ortho_matrix_identity_like ... ok
[INFO] [stdout] test sdk::rendering::tests::test_model_matrix_no_rotation ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_configure_skybox_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_configure_fog_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_add_light_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_configure_grid_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_render_3d_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_render_all_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_set_camera_position_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_set_fog_enabled_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_set_object_position_headless ... ok
[INFO] [stdout] test sdk::texture::tests::test_texture_destroy_headless ... ok
[INFO] [stdout] test sdk::texture::tests::test_texture_load_headless ... ok
[INFO] [stdout] test sdk::window::tests::test_clear_headless_no_panic ... ok
[INFO] [stdout] test sdk::window::tests::test_get_delta_time_initial ... ok
[INFO] [stdout] test sdk::window::tests::test_get_framebuffer_size_headless ... ok
[INFO] [stdout] test sdk::window::tests::test_get_window_size_headless ... ok
[INFO] [stdout] test sdk::window::tests::test_has_platform_headless ... ok
[INFO] [stdout] test sdk::window::tests::test_poll_events_headless_returns_error ... ok
[INFO] [stdout] test sdk::window::tests::test_set_should_close_headless_returns_error ... ok
[INFO] [stdout] test sdk::window::tests::test_should_close_headless ... ok
[INFO] [stdout] test sdk::window::tests::test_swap_buffers_headless_returns_error ... ok
[INFO] [stdout] test sdk::window::tests::test_window_destroy_invalid_returns_false ... ok
[INFO] [stdout] test sdk::rendering::tests::test_end_2d_render_headless ... ok
[INFO] [stdout] test sdk::rendering::tests::test_render_2d_stats_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_create_cube_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_destroy_object_headless ... ok
[INFO] [stdout] test sdk::rendering_3d::tests::test_has_3d_renderer_headless ... ok
[INFO] [stdout] test ecs::world::tests::insert_tests::insert::test_insert_stress_many_entities ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3700 passed; 0 failed; 75 ignored; 0 measured; 0 filtered out; finished in 0.87s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ffi_safety.rs (/opt/rustwide/target/debug/deps/ffi_safety-47fa2e1fa6ce66e1)
[INFO] [stdout] 
[INFO] [stdout] running 51 tests
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_batch_spawn_then_batch_despawn ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_component_get_fabricated_entity_returns_null ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_clone_fabricated_entity_returns_invalid ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_despawn_batch_zero_count_returns_zero ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_component_has_fabricated_entity_returns_false ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_despawn_fabricated_entity_returns_error ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_entity_count_after_spawn_and_despawn ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_is_alive_batch_mixed_results ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_is_alive_batch_zero_count_returns_zero ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_is_alive_fabricated_entity_returns_false ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_operations_with_stale_context_id ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_clone_despawned_entity_returns_invalid ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_clone_invalid_entity_returns_invalid ... ok
[INFO] [stdout] test ffi_safety::invalid_handle_tests::test_rapid_spawn_despawn_cycle ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_clone_recursive_invalid_entity_returns_invalid ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_component_get_after_despawn_returns_null ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_context_double_destroy_returns_false ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_component_has_after_despawn_returns_false ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_component_remove_after_despawn_returns_error ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_is_alive_after_despawn_returns_false ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_context_is_valid_after_destroy_returns_false ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_double_despawn_returns_error ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_despawn_with_stale_context_returns_error ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_transform2d_builder_normal_lifecycle ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_entity_count_with_stale_context_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_animation_clip_builder_free_null_is_noop ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_spawn_with_stale_context_returns_invalid ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_component_get_mut_invalid_context_returns_null ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_component_has_invalid_context_returns_false ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_component_get_invalid_context_returns_null ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_sprite_builder_normal_lifecycle ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_component_remove_invalid_context_returns_error ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_despawn_with_invalid_context_returns_error ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_despawn_batch_null_ids_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_is_alive_batch_null_ids_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_is_alive_batch_null_results_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_last_error_code_after_clear_is_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_last_error_message_null_buffer_returns_negative_or_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_despawn_with_invalid_entity_returns_error ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_spawn_empty_with_invalid_context_returns_sentinel ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_sprite_builder_with_alpha_null_returns_null ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_entity_count_with_invalid_context_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_transform2d_builder_free_null_is_noop ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_spawn_batch_null_output_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_is_alive_with_invalid_context_returns_false ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_sprite_builder_free_null_is_noop ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_spawn_batch_zero_count_returns_zero ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_transform2d_builder_with_position_null_returns_null ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_transform2d_builder_with_rotation_null_returns_null ... ok
[INFO] [stdout] test ffi_safety::null_pointer_tests::test_transform2d_builder_with_scale_null_returns_null ... ok
[INFO] [stdout] test ffi_safety::lifecycle_safety_tests::test_component_get_mut_after_despawn_returns_null ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 51 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-01d56d87671ae2ff)
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test ecs_integration::test_despawn_entity_and_verify_dead ... ok
[INFO] [stdout] test ecs_integration::test_despawn_batch ... ok
[INFO] [stdout] test ecs_integration::test_insert_and_get_component ... ok
[INFO] [stdout] test ecs_integration::test_has_component ... ok
[INFO] [stdout] test ecs_integration::test_get_mut_updates_component ... ok
[INFO] [stdout] test ecs_integration::test_get_component_on_dead_entity_returns_none ... ok
[INFO] [stdout] test ecs_integration::test_component_type_count_tracks_registrations ... ok
[INFO] [stdout] test ecs_integration::test_despawn_already_dead_entity_returns_false ... ok
[INFO] [stdout] test ecs_integration::test_insert_batch_components ... ok
[INFO] [stdout] test ecs_integration::test_multiple_components_on_same_entity ... ok
[INFO] [stdout] test ecs_integration::test_is_alive_on_never_spawned_entity ... ok
[INFO] [stdout] test ecs_integration::test_placeholder_entity_is_not_alive ... ok
[INFO] [stdout] test ecs_integration::test_insert_replaces_existing_component ... ok
[INFO] [stdout] test ecs_integration::test_remove_nonexistent_component_returns_none ... ok
[INFO] [stdout] test ecs_integration::test_spawn_builder_with_insert ... ok
[INFO] [stdout] test ecs_integration::test_spawn_entity_and_verify_alive ... ok
[INFO] [stdout] test ecs_integration::test_spawn_batch_zero_returns_empty ... ok
[INFO] [stdout] test ecs_integration::test_spawn_multiple_entities_unique_ids ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_context_validity_lifecycle ... ok
[INFO] [stdout] test ecs_integration::test_system_like_iteration_and_modification ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_despawn_with_invalid_context ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_despawn_batch_and_verify ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_despawn_invalid_entity_id ... ok
[INFO] [stdout] test ecs_integration::test_remove_component ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_invalid_context_id_is_not_valid ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_full_entity_lifecycle ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_entity_count_after_spawn_and_despawn ... ok
[INFO] [stdout] test ecs_integration::test_spawn_batch_creates_correct_count ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_entity_count_with_invalid_context ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_entity_count_spawn_n_despawn_m ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_is_alive_with_invalid_context ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_spawn_with_invalid_context ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_spawn_batch_and_verify ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_two_contexts_do_not_share_entities ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_operations_on_destroyed_context ... ok
[INFO] [stdout] test ffi_cross_layer::test_ffi_multiple_entities_all_alive ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test_goud_api_macro.rs (/opt/rustwide/target/debug/deps/test_goud_api_macro-35aa3c41b0a5af55)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test test_macro_generates_ffi_with_params ... ok
[INFO] [stdout] test test_macro_generates_static_ffi_function ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests goud_engine
[INFO] [stdout] 
[INFO] [stdout] running 644 tests
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState (line 24) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_id.rs - assets::asset::asset_id::AssetId (line 18) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_id.rs - assets::asset::asset_id::AssetId::type_id (line 80) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState::discriminant (line 160) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState::error (line 140) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_info.rs - assets::asset::asset_info::AssetInfo (line 15) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState::is_loading (line 86) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState::is_failed (line 101) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_id.rs - assets::asset::asset_id::AssetId::of_raw (line 66) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState::progress (line 118) ... FAILED
[INFO] [stdout] test src/assets/asset/asset_state.rs - assets::asset::asset_state::AssetState::is_ready (line 71) ... ok
[INFO] [stdout] test src/assets/asset/asset_info.rs - assets::asset::asset_info::AssetInfo::of (line 69) ... ok
[INFO] [stdout] test src/assets/asset/asset_id.rs - assets::asset::asset_id::AssetId::of (line 46) ... ok
[INFO] [stdout] test src/assets/asset/asset_type.rs - assets::asset::asset_type::AssetType::all (line 81) ... ok
[INFO] [stdout] test src/assets/asset/asset_type.rs - assets::asset::asset_type::AssetType (line 19) ... ok
[INFO] [stdout] test src/assets/asset/asset_type.rs - assets::asset::asset_type::AssetType::is_gpu_asset (line 117) ... ok
[INFO] [stdout] test src/assets/audio_manager/controls.rs - assets::audio_manager::controls::AudioManager::global_volume (line 10) - compile ... ok
[INFO] [stdout] test src/assets/audio_manager/controls.rs - assets::audio_manager::controls::AudioManager::set_global_volume (line 31) - compile ... ok
[INFO] [stdout] test src/assets/asset/mod.rs - assets::asset (line 17) ... ok
[INFO] [stdout] test src/assets/audio_manager/mod.rs - assets::audio_manager (line 17) - compile ... ok
[INFO] [stdout] test src/assets/audio_manager/mod.rs - assets::audio_manager::AudioManager (line 58) - compile ... ok
[INFO] [stdout] test src/assets/asset/asset_type.rs - assets::asset::asset_type::AssetType::is_streamable (line 139) ... ok
[INFO] [stdout] test src/assets/audio_manager/mod.rs - assets::audio_manager::AudioManager::new (line 96) - compile ... ok
[INFO] [stdout] test src/assets/audio_manager/spatial_playback.rs - assets::audio_manager::spatial_playback::AudioManager::play_spatial (line 29) - compile ... ok
[INFO] [stdout] test src/assets/audio_manager/spatial_playback.rs - assets::audio_manager::spatial_playback::AudioManager::update_spatial_volume (line 75) - compile ... ok
[INFO] [stdout] test src/assets/asset/asset_type.rs - assets::asset::asset_type::AssetType::name (line 154) ... ok
[INFO] [stdout] test src/assets/asset/trait_def.rs - assets::asset::trait_def::Asset::asset_type_name (line 67) ... ok
[INFO] [stdout] test src/assets/asset/trait_def.rs - assets::asset::trait_def::Asset (line 26) ... ok
[INFO] [stdout] test src/assets/asset/trait_def.rs - assets::asset::trait_def::Asset::extensions (line 128) ... FAILED
[INFO] [stdout] test src/assets/asset/trait_def.rs - assets::asset::trait_def::Asset::asset_type (line 101) ... FAILED
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator (line 27) ... FAILED
[INFO] [stdout] test src/assets/dependency/graph.rs - assets::dependency::graph::DependencyGraph (line 49) ... FAILED
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::new (line 67) ... FAILED
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::is_alive (line 224) ... FAILED
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::with_capacity (line 93) ... FAILED
[INFO] [stdout] test src/assets/handle/load_state.rs - assets::handle::load_state::HandleLoadState (line 18) ... FAILED
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::deallocate (line 172) ... FAILED
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath (line 32) ... FAILED
[INFO] [stdout] test src/assets/handle/mod.rs - assets::handle (line 27) ... FAILED
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::allocate (line 125) ... ok
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::clear (line 293) ... ok
[INFO] [stdout] test src/assets/handle/allocator.rs - assets::handle::allocator::AssetHandleAllocator<A>::len (line 252) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::directory (line 152) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::extension (line 128) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::file_name (line 109) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::from_path (line 211) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::from_string (line 74) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::new (line 57) ... ok
[INFO] [stdout] test src/assets/handle/typed.rs - assets::handle::typed::AssetHandle (line 46) ... FAILED
[INFO] [stdout] test src/assets/handle/typed.rs - assets::handle::typed::AssetHandle<A>::is_valid (line 153) ... FAILED
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::stem (line 172) ... ok
[INFO] [stdout] test src/assets/handle/typed.rs - assets::handle::typed::AssetHandle<A>::new (line 110) ... FAILED
[INFO] [stdout] test src/assets/handle/typed.rs - assets::handle::typed::AssetHandle<A>::INVALID (line 82) ... FAILED
[INFO] [stdout] test src/assets/handle/typed.rs - assets::handle::typed::AssetHandle<A>::untyped (line 176) ... ok
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::join (line 229) ... ok
[INFO] [stdout] test src/assets/hot_reload/watcher.rs - assets::hot_reload::watcher::HotReloadWatcher (line 29) - compile ... ok
[INFO] [stdout] test src/assets/hot_reload/mod.rs - assets::hot_reload (line 27) - compile ... ok
[INFO] [stdout] test src/assets/hot_reload/watcher.rs - assets::hot_reload::watcher::HotReloadWatcher::process_events (line 202) - compile ... ok
[INFO] [stdout] test src/assets/hot_reload/watcher.rs - assets::hot_reload::watcher::HotReloadWatcher::new (line 78) - compile ... ok
[INFO] [stdout] test src/assets/hot_reload/watcher.rs - assets::hot_reload::watcher::HotReloadWatcher::watch (line 137) - compile ... ok
[INFO] [stdout] test src/assets/loader/traits.rs - assets::loader::traits::AssetLoader (line 19) ... ignored
[INFO] [stdout] test src/assets/handle/untyped.rs - assets::handle::untyped::UntypedAssetHandle (line 36) ... FAILED
[INFO] [stdout] test src/assets/loaders/animation/loader.rs - assets::loaders::animation::loader::AnimationLoader (line 16) - compile ... ok
[INFO] [stdout] test src/assets/handle/typed.rs - assets::handle::typed::WeakAssetHandle (line 333) ... FAILED
[INFO] [stdout] test src/assets/handle/path.rs - assets::handle::path::AssetPath<'a>::with_extension (line 258) ... ok
[INFO] [stdout] test src/assets/loaders/audio/loader.rs - assets::loaders::audio::loader::AudioLoader (line 27) - compile ... ok
[INFO] [stdout] test src/assets/handle/untyped.rs - assets::handle::untyped::UntypedAssetHandle::is_type (line 209) ... FAILED
[INFO] [stdout] test src/assets/handle/untyped.rs - assets::handle::untyped::UntypedAssetHandle::typed_unchecked (line 187) ... ok
[INFO] [stdout] test src/assets/loaders/config/loader.rs - assets::loaders::config::loader::ConfigLoader (line 14) - compile ... ok
[INFO] [stdout] test src/assets/handle/untyped.rs - assets::handle::untyped::UntypedAssetHandle::typed (line 150) ... ok
[INFO] [stdout] test src/assets/loaders/config/mod.rs - assets::loaders::config (line 9) - compile ... ok
[INFO] [stdout] test src/assets/loader/mod.rs - assets::loader::context (line 19) ... ok
[INFO] [stdout] test src/assets/loaders/animation/asset.rs - assets::loaders::animation::asset::KeyframeAnimation (line 15) ... ok
[INFO] [stdout] test src/assets/loaders/font/loader.rs - assets::loaders::font::loader::FontLoader (line 17) - compile ... ok
[INFO] [stdout] test src/assets/loaders/audio/asset.rs - assets::loaders::audio::asset::AudioAsset::empty (line 41) ... ok
[INFO] [stdout] test src/assets/loaders/material/loader.rs - assets::loaders::material::loader::MaterialLoader (line 46) - compile ... ok
[INFO] [stdout] test src/assets/loaders/material/mod.rs - assets::loaders::material (line 9) - compile ... ok
[INFO] [stdout] test src/assets/loaders/mesh/loader.rs - assets::loaders::mesh::loader::MeshLoader (line 37) - compile ... ok
[INFO] [stdout] test src/assets/loaders/audio/asset.rs - assets::loaders::audio::asset::AudioAsset (line 15) ... ok
[INFO] [stdout] test src/assets/loaders/mesh/mod.rs - assets::loaders::mesh (line 8) - compile ... ok
[INFO] [stdout] test src/assets/loaders/config/asset.rs - assets::loaders::config::asset::ConfigAsset (line 20) ... ok
[INFO] [stdout] test src/assets/loaders/shader/mod.rs - assets::loaders::shader (line 8) - compile ... ok
[INFO] [stdout] test src/assets/loaders/material/asset.rs - assets::loaders::material::asset::MaterialAsset (line 16) ... FAILED
[INFO] [stdout] test src/assets/loaders/font/asset.rs - assets::loaders::font::asset::FontAsset (line 44) ... FAILED
[INFO] [stdout] test src/assets/loaders/texture/loader.rs - assets::loaders::texture::loader::TextureLoader (line 16) - compile ... ok
[INFO] [stdout] test src/assets/loaders/texture/mod.rs - assets::loaders::texture::asset (line 8) - compile ... ok
[INFO] [stdout] test src/assets/loaders/tiled_map/mod.rs - assets::loaders::tiled_map (line 10) - compile ... ok
[INFO] [stdout] test src/assets/loaders/config/asset.rs - assets::loaders::config::asset::ConfigAsset::deserialize (line 69) ... ok
[INFO] [stdout] test src/assets/server/async_operations.rs - assets::server::async_operations::AssetServer::load_async (line 35) ... ignored
[INFO] [stdout] test src/assets/loaders/mesh/asset.rs - assets::loaders::mesh::asset::MeshAsset (line 45) ... ok
[INFO] [stdout] test src/assets/loaders/texture/asset.rs - assets::loaders::texture::asset::TextureAsset (line 21) ... ok
[INFO] [stdout] test src/assets/loaders/shader/asset.rs - assets::loaders::shader::asset::ShaderAsset (line 112) ... ok
[INFO] [stdout] test src/assets/loaders/texture/asset.rs - assets::loaders::texture::asset::TextureAsset::get_pixel (line 128) ... ok
[INFO] [stdout] test src/assets/loaders/material/uniform.rs - assets::loaders::material::uniform::UniformValue (line 12) ... ok
[INFO] [stdout] test src/assets/loaders/texture/asset.rs - assets::loaders::texture::asset::TextureAsset::new (line 65) ... ok
[INFO] [stdout] test src/assets/mod.rs - assets (line 46) ... ok
[INFO] [stdout] test src/assets/server/loader_registry.rs - assets::server::loader_registry::AssetServer::register_loader (line 18) - compile ... ok
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::create_hot_reload_watcher_with_config (line 453) - compile ... ok
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::create_hot_reload_watcher (line 428) - compile ... ok
[INFO] [stdout] test src/assets/server/core.rs - assets::server::core::AssetServer::asset_root (line 140) ... ok
[INFO] [stdout] test src/assets/server/core.rs - assets::server::core::AssetServer::new (line 95) ... ok
[INFO] [stdout] test src/assets/server/core.rs - assets::server::core::AssetServer (line 48) ... ok
[INFO] [stdout] test src/assets/server/loader_registry.rs - assets::server::loader_registry::AssetServer::has_loader_for_extension (line 90) ... FAILED
[INFO] [stdout] test src/assets/server/core.rs - assets::server::core::AssetServer::with_root (line 112) ... FAILED
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::unload (line 236) ... FAILED
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::is_loaded (line 202) ... FAILED
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::get (line 172) ... FAILED
[INFO] [stdout] test src/assets/server/mod.rs - assets::server (line 26) ... ok
[INFO] [stdout] test src/assets/storage/container.rs - assets::storage::container::AssetStorage (line 25) ... FAILED
[INFO] [stdout] test src/context_registry/scene/loading.rs - context_registry::scene::loading::DeferredSceneLoad (line 126) ... ignored
[INFO] [stdout] test src/assets/storage/entry.rs - assets::storage::entry::AssetEntry (line 16) ... ok
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::load_from_bytes (line 105) ... ok
[INFO] [stdout] test src/assets/server/operations.rs - assets::server::operations::AssetServer::loaded_count (line 367) ... ok
[INFO] [stdout] test src/assets/storage/mod.rs - assets::storage (line 37) ... FAILED
[INFO] [stdout] test src/assets/storage/typed.rs - assets::storage::typed::TypedAssetStorage (line 27) ... ok
[INFO] [stdout] test src/assets/storage/typed.rs - assets::storage::typed::TypedAssetStorage<A>::remove (line 202) ... ok
[INFO] [stdout] test src/assets/storage/typed.rs - assets::storage::typed::TypedAssetStorage<A>::insert (line 84) ... ok
[INFO] [stdout] test src/core/error/codes.rs - core::error::codes::error_category (line 247) ... ok
[INFO] [stdout] test src/core/error/context.rs - core::error::context::GoudErrorContext::new (line 24) ... ok
[INFO] [stdout] test src/core/error/conversions.rs - core::error::conversions::GoudError::fmt (line 19) ... ok
[INFO] [stdout] test src/core/error/conversions.rs - core::error::conversions::GoudError::from (line 62) ... ok
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::from_code (line 287) ... FAILED
[INFO] [stdout] test src/core/error/conversions.rs - core::error::conversions::GoudError::from (line 107) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/conversions.rs - core::error::conversions::GoudError::from (line 89) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult (line 242) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::from_error (line 308) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::from_result (line 331) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::success (line 268) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::success (line 268) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::from_error (line 308) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult::from_result (line 331) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::clear_last_error (line 194) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::clear_last_error (line 194) ... FAILED
[INFO] [stdout] test src/core/error/conversions.rs - core::error::conversions::GoudError::from (line 107) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::get_last_error (line 121) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::last_error_code (line 143) ... FAILED
[INFO] [stdout] test src/core/error/conversions.rs - core::error::conversions::GoudError::from (line 89) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::GoudFFIResult (line 242) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::last_error_message (line 172) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::set_last_error (line 51) ... FAILED
[INFO] [stdout] test src/core/error/methods.rs - core::error::methods::GoudError::category (line 85) ... FAILED
[INFO] [stdout] test src/core/error/methods.rs - core::error::methods::GoudError::error_code (line 15) ... FAILED
[INFO] [stdout] test src/core/error/recovery.rs - core::error::recovery::recovery_hint (line 67) ... FAILED
[INFO] [stdout] test src/core/error/recovery.rs - core::error::recovery::recovery_class (line 35) ... FAILED
[INFO] [stdout] test src/core/error/ffi_bridge.rs - core::error::ffi_bridge::take_last_error (line 95) ... FAILED
[INFO] [stdout] test src/core/event/mod.rs - core::event (line 20) ... FAILED
[INFO] [stdout] test src/core/error/types.rs - core::error::types::GoudError (line 30) ... ok
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue (line 32) ... FAILED
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::clear (line 176) ... FAILED
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::drain (line 118) ... FAILED
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::is_empty (line 203) ... FAILED
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::len (line 226) ... ok
[INFO] [stdout] test src/core/error/reverse_mapping.rs - core::error::reverse_mapping::GoudError::from_error_code (line 27) ... FAILED
[INFO] [stdout] test src/core/error/methods.rs - core::error::methods::GoudError::message (line 102) has been running for over 60 seconds
[INFO] [stdout] test src/core/error/mod.rs - core::error::GoudResult (line 78) has been running for over 60 seconds
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::read_len (line 249) ... FAILED
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::send (line 96) ... FAILED
[INFO] [stdout] test src/core/event/reader.rs - core::event::reader::EventReader<'a,E>::clear (line 170) ... FAILED
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::swap_buffers (line 146) ... FAILED
[INFO] [stdout] test src/core/error/mod.rs - core::error::GoudResult (line 78) ... ok
[INFO] [stdout] test src/core/error/methods.rs - core::error::methods::GoudError::message (line 102) ... ok
[INFO] [stdout] test src/core/event/queue.rs - core::event::queue::EventQueue<E>::new (line 74) ... ok
[INFO] [stdout] test src/core/event/reader.rs - core::event::reader::EventReader<'a,E>::len (line 140) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::clear (line 266) ... FAILED
[INFO] [stdout] test src/core/event/reader.rs - core::event::reader::EventReader (line 25) ... ok
[INFO] [stdout] test src/core/event/reader.rs - core::event::reader::EventReader<'a,E>::is_empty (line 115) ... ok
[INFO] [stdout] test src/core/event/reader.rs - core::event::reader::EventReader<'a,E>::read (line 86) ... ok
[INFO] [stdout] test src/core/event/reader.rs - core::event::reader::EventReader<'a,E>::new (line 62) ... ok
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events (line 30) ... ok
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::new (line 70) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::drain (line 242) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::len (line 309) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::reader (line 90) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::send_batch (line 161) ... FAILED
[INFO] [stdout] test src/core/event/traits.rs - core::event::traits::Event (line 34) - compile fail ... ok
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::send (line 141) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::read_buffer (line 358) ... ok
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::is_empty (line 289) ... ok
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::update (line 210) ... ok
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::read_len (line 329) ... ok
[INFO] [stdout] test src/core/event/traits.rs - core::event::traits::Event (line 17) ... FAILED
[INFO] [stdout] test src/core/event/writer.rs - core::event::writer::EventWriter (line 19) ... FAILED
[INFO] [stdout] test src/core/event/resource.rs - core::event::resource::Events<E>::writer (line 116) ... ok
[INFO] [stdout] test src/core/event/writer.rs - core::event::writer::EventWriter<'a,E>::is_empty (line 130) ... FAILED
[INFO] [stdout] test src/core/events/frame.rs - core::events::frame::FrameStarted (line 18) ... ignored
[INFO] [stdout] test src/core/event/writer.rs - core::event::writer::EventWriter<'a,E>::len (line 152) ... FAILED
[INFO] [stdout] test src/core/event/writer.rs - core::event::writer::EventWriter<'a,E>::send (line 77) ... ok
[INFO] [stdout] test src/core/event/writer.rs - core::event::writer::EventWriter<'a,E>::new (line 55) ... ok
[INFO] [stdout] test src/core/event/writer.rs - core::event::writer::EventWriter<'a,E>::send_batch (line 101) ... ok
[INFO] [stdout] test src/core/events/app.rs - core::events::app::AppExiting (line 42) ... ok
[INFO] [stdout] test src/core/events/frame.rs - core::events::frame::FrameEnded (line 84) ... ok
[INFO] [stdout] test src/core/events/app.rs - core::events::app::AppStarted (line 13) ... ok
[INFO] [stdout] test src/core/events/window.rs - core::events::window::WindowCloseRequested (line 169) ... ok
[INFO] [stdout] test src/core/events/mod.rs - core::events (line 17) ... ok
[INFO] [stdout] test src/core/events/window.rs - core::events::window::WindowFocused (line 73) ... ok
[INFO] [stdout] test src/core/events/window.rs - core::events::window::WindowMoved (line 129) ... ok
[INFO] [stdout] test src/core/events/window.rs - core::events::window::WindowResized (line 19) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator (line 26) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::deallocate (line 215) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::capacity (line 332) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::clear (line 389) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::allocate (line 156) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::is_empty (line 356) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::is_alive (line 274) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::shrink_to_fit (line 450) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::len (line 306) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::new (line 81) ... ok
[INFO] [stdout] test src/core/handle/allocator.rs - core::handle::allocator::HandleAllocator<T>::with_capacity (line 114) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::generation (line 125) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::default (line 276) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::INVALID (line 52) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::from_u64 (line 202) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::index (line 105) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::is_valid (line 149) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::new (line 80) ... ok
[INFO] [stdout] test src/core/handle/handle_type.rs - core::handle::handle_type::Handle<T>::to_u64 (line 178) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMap<T,V>::iter_mut (line 289) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMap<T,V>::values (line 338) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMap<T,V>::handles (line 317) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMap<T,V>::iter (line 262) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMapHandles (line 161) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMap<T,V>::values_mut (line 360) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMapIterMut (line 91) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMapIter (line 21) ... ok
[INFO] [stdout] test src/core/handle/iterators.rs - core::handle::iterators::HandleMapValues (line 198) ... FAILED
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::capacity (line 360) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap (line 19) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::clear (line 387) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::contains (line 286) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::get (line 207) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::get_mut (line 245) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::insert (line 113) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::is_empty (line 335) ... FAILED
[INFO] [stdout] test src/core/input_manager/actions.rs - core::input_manager::actions::InputManager::map_action (line 16) ... ignored
[INFO] [stdout] test src/core/input_manager/buffer.rs - core::input_manager::buffer::InputManager::sequence_detected (line 42) ... ignored
[INFO] [stdout] test src/core/input_manager/mod.rs - core::input_manager (line 23) ... ignored
[INFO] [stdout] test src/core/input_manager/mod.rs - core::input_manager (line 45) ... ignored
[INFO] [stdout] test src/core/input_manager/mod.rs - core::input_manager (line 70) ... ignored
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::new (line 52) ... FAILED
[INFO] [stdout] test src/core/providers/builder.rs - core::providers::builder::ProviderRegistryBuilder (line 23) ... ignored
[INFO] [stdout] test src/ecs/app/builtin_plugins.rs - ecs::app::builtin_plugins::DefaultPlugins (line 45) ... ignored
[INFO] [stdout] test src/ecs/app/builtin_plugins.rs - ecs::app::builtin_plugins::TransformPropagationPlugin (line 18) ... ignored
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::with_capacity (line 81) ... ok
[INFO] [stdout] test src/ecs/app/physics_plugins.rs - ecs::app::physics_plugins (line 10) ... ignored
[INFO] [stdout] test src/ecs/app/plugin.rs - ecs::app::plugin::Plugin (line 17) ... ignored
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::remove (line 158) ... ok
[INFO] [stdout] test src/core/handle/mod.rs - core::handle (line 24) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::shrink_to_fit (line 445) ... ok
[INFO] [stdout] test src/ecs/archetype/graph.rs - ecs::archetype::graph::ArchetypeGraph::get_remove_edge (line 253) ... ignored
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::len (line 311) ... ok
[INFO] [stdout] test src/core/handle/map.rs - core::handle::map::HandleMap<T,V>::reserve (line 425) ... ok
[INFO] [stdout] test src/core/math/mod.rs - core::math (line 19) ... ok
[INFO] [stdout] test src/ecs/app/mod.rs - ecs::app (line 8) ... ok
[INFO] [stdout] test src/ecs/archetype/graph.rs - ecs::archetype::graph::ArchetypeGraph (line 21) ... ok
[INFO] [stdout] test src/ecs/archetype/graph.rs - ecs::archetype::graph::ArchetypeGraph::find_or_create (line 90) ... ok
[INFO] [stdout] test src/ecs/archetype/graph.rs - ecs::archetype::graph::ArchetypeGraph::new (line 54) ... ok
[INFO] [stdout] test src/ecs/archetype/mod.rs - ecs::archetype (line 14) ... ok
[INFO] [stdout] test src/ecs/archetype/graph.rs - ecs::archetype::graph::ArchetypeGraph::get_add_edge (line 198) ... ok
[INFO] [stdout] test src/ecs/archetype/storage.rs - ecs::archetype::storage::Archetype::add_entity (line 204) ... ok
[INFO] [stdout] test src/ecs/archetype/storage.rs - ecs::archetype::storage::Archetype (line 25) ... ok
[INFO] [stdout] test src/ecs/archetype/storage.rs - ecs::archetype::storage::Archetype::has_all (line 161) ... ok
[INFO] [stdout] test src/ecs/archetype/storage.rs - ecs::archetype::storage::Archetype::new (line 58) ... ok
[INFO] [stdout] test src/ecs/broad_phase/queries.rs - ecs::broad_phase::queries::SpatialHash::query_aabb (line 123) ... FAILED
[INFO] [stdout] test src/ecs/archetype/storage.rs - ecs::archetype::storage::Archetype::with_capacity (line 79) ... FAILED
[INFO] [stdout] test src/ecs/archetype/storage.rs - ecs::archetype::storage::Archetype::remove_entity (line 238) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/mod.rs - ecs::broad_phase (line 28) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/queries.rs - ecs::broad_phase::queries::SpatialHash::query_circle (line 161) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash::clear (line 310) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash (line 37) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/queries.rs - ecs::broad_phase::queries::SpatialHash::query_point (line 91) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/queries.rs - ecs::broad_phase::queries::SpatialHash::contains (line 218) ... ok
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash::with_capacity (line 133) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash::remove (line 217) ... FAILED
[INFO] [stdout] test src/ecs/broad_phase/queries.rs - ecs::broad_phase::queries::SpatialHash::query_pairs (line 32) ... ok
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash::insert (line 171) ... ok
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash::new (line 96) ... ok
[INFO] [stdout] test src/ecs/broad_phase/spatial_hash.rs - ecs::broad_phase::spatial_hash::SpatialHash::update (line 273) ... ok
[INFO] [stdout] test src/ecs/change_detection/ticks.rs - ecs::change_detection::ticks::ComponentTicks (line 64) ... ok
[INFO] [stdout] test src/ecs/change_detection/ticks.rs - ecs::change_detection::ticks::Tick (line 11) ... ok
[INFO] [stdout] test src/ecs/collision/contact.rs - ecs::collision::contact::Contact (line 16) ... ok
[INFO] [stdout] test src/ecs/collision/contact.rs - ecs::collision::contact::Contact::is_colliding (line 84) ... ok
[INFO] [stdout] test src/ecs/collision/contact.rs - ecs::collision::contact::Contact::new (line 62) ... ok
[INFO] [stdout] test src/ecs/collision/contact.rs - ecs::collision::contact::Contact::reversed (line 143) ... ok
[INFO] [stdout] test src/ecs/collision/contact.rs - ecs::collision::contact::Contact::separation_distance (line 104) ... ok
[INFO] [stdout] test src/ecs/collision/detection_box.rs - ecs::collision::detection_box::aabb_aabb_collision (line 165) ... ok
[INFO] [stdout] test src/ecs/collision/contact.rs - ecs::collision::contact::Contact::separation_vector (line 121) ... ok
[INFO] [stdout] test src/ecs/collision/detection_circle.rs - ecs::collision::detection_circle::circle_aabb_collision (line 120) ... ok
[INFO] [stdout] test src/ecs/collision/detection_circle.rs - ecs::collision::detection_circle::circle_circle_collision (line 30) ... ok
[INFO] [stdout] test src/ecs/collision/detection_box.rs - ecs::collision::detection_box::box_box_collision (line 44) ... ok
[INFO] [stdout] test src/ecs/collision/detection_circle.rs - ecs::collision::detection_circle::circle_obb_collision (line 257) ... ok
[INFO] [stdout] test src/ecs/collision/events.rs - ecs::collision::events::CollisionStarted (line 42) ... FAILED
[INFO] [stdout] test src/ecs/collision/events.rs - ecs::collision::events::CollisionEnded (line 167) ... FAILED
[INFO] [stdout] test src/ecs/collision/events.rs - ecs::collision::events (line 14) ... FAILED
[INFO] [stdout] test src/ecs/collision/events.rs - ecs::collision::events::CollisionStarted (line 67) ... FAILED
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::CollisionResponse::bouncy (line 90) ... FAILED
[INFO] [stdout] test src/ecs/collision/mod.rs - ecs::collision (line 16) ... FAILED
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::CollisionResponse::elastic (line 139) ... FAILED
[INFO] [stdout] test src/ecs/collision/events.rs - ecs::collision::events::CollisionStarted::other_entity (line 117) ... FAILED
[INFO] [stdout] test src/ecs/component.rs - ecs::component (line 45) ... ignored
[INFO] [stdout] test src/ecs/component.rs - ecs::component::Component (line 103) ... ignored
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::CollisionResponse::slippery (line 123) ... FAILED
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::compute_position_correction (line 314) ... FAILED
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::CollisionResponse (line 13) ... FAILED
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::CollisionResponse::new (line 70) ... ok
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::resolve_collision (line 185) ... ok
[INFO] [stdout] test src/ecs/collision/response.rs - ecs::collision::response::CollisionResponse::character (line 106) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component (line 18) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component::Component (line 72) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component::Component (line 93) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component::ComponentId (line 131) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component::ComponentId::of (line 148) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component::ComponentInfo (line 184) ... ok
[INFO] [stdout] test src/ecs/component.rs - ecs::component::ComponentInfo::of (line 210) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/attenuation.rs - ecs::components::audiosource::attenuation::AttenuationModel (line 18) ... ok
[INFO] [stdout] test src/ecs/components/animation_controller/types.rs - ecs::components::animation_controller::types::AnimationController (line 113) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/channel.rs - ecs::components::audiosource::channel::AudioChannel (line 19) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/attenuation.rs - ecs::components::audiosource::attenuation::AttenuationModel::compute_attenuation (line 68) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/channel.rs - ecs::components::audiosource::channel::AudioChannel::id (line 52) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/mod.rs - ecs::components::audiosource (line 25) ... FAILED
[INFO] [stdout] test src/ecs/components/audiosource/channel.rs - ecs::components::audiosource::channel::AudioChannel::name (line 74) ... FAILED
[INFO] [stdout] test src/ecs/components/audiosource/source.rs - ecs::components::audiosource::source::AudioSource::new (line 91) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/mod.rs - ecs::components::audiosource (line 3) ... FAILED
[INFO] [stdout] test src/ecs/components/audiosource/source.rs - ecs::components::audiosource::source::AudioSource::with_volume (line 124) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/source.rs - ecs::components::audiosource::source::AudioSource::with_pitch (line 142) ... ok
[INFO] [stdout] test src/ecs/components/audiosource/mod.rs - ecs::components::audiosource (line 41) ... ok
[INFO] [stdout] test src/ecs/components/collider/aabb_utils.rs - ecs::components::collider::aabb_utils::closest_point (line 209) ... ok
[INFO] [stdout] test src/ecs/components/collider/aabb_utils.rs - ecs::components::collider::aabb_utils::expand (line 99) ... ok
[INFO] [stdout] test src/ecs/components/collider/aabb_utils.rs - ecs::components::collider::aabb_utils::compute_world_aabb (line 17) ... ok
[INFO] [stdout] test src/ecs/components/collider/aabb_utils.rs - ecs::components::collider::aabb_utils::raycast (line 154) ... ok
[INFO] [stdout] test src/ecs/components/collider/aabb_utils.rs - ecs::components::collider::aabb_utils::merge (line 121) ... ok
[INFO] [stdout] test src/ecs/components/collider/component.rs - ecs::components::collider::component::Collider::aabb (line 105) ... FAILED
[INFO] [stdout] test src/ecs/components/collider/mod.rs - ecs::components::collider (line 18) ... FAILED
[INFO] [stdout] test src/ecs/components/collider/component.rs - ecs::components::collider::component::Collider (line 19) ... ok
[INFO] [stdout] test src/ecs/components/collider/component.rs - ecs::components::collider::component::Collider::capsule (line 147) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform/core.rs - ecs::components::global_transform::core::GlobalTransform (line 24) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform/core.rs - ecs::components::global_transform::core::GlobalTransform::from_matrix (line 75) ... FAILED
[INFO] [stdout] test src/ecs/components/collider/component.rs - ecs::components::collider::component::Collider::circle (line 83) ... ok
[INFO] [stdout] test src/ecs/components/collider/mod.rs - ecs::components::collider (line 41) ... ok
[INFO] [stdout] test src/ecs/components/collider/mod.rs - ecs::components::collider (line 60) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/core.rs - ecs::components::global_transform::core::GlobalTransform::from_translation (line 95) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/core.rs - ecs::components::global_transform::core::GlobalTransform::from_translation_rotation_scale (line 121) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/core.rs - ecs::components::global_transform::core::GlobalTransform::matrix (line 147) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/core.rs - ecs::components::global_transform::core::GlobalTransform::to_cols_array (line 170) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/decomposition.rs - ecs::components::global_transform::decomposition::GlobalTransform::rotation (line 75) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/decomposition.rs - ecs::components::global_transform::decomposition::GlobalTransform::scale (line 43) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/decomposition.rs - ecs::components::global_transform::decomposition::GlobalTransform::decompose (line 171) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/decomposition.rs - ecs::components::global_transform::decomposition::GlobalTransform::translation (line 22) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/mod.rs - ecs::components::global_transform (line 31) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/operations.rs - ecs::components::global_transform::operations::GlobalTransform::lerp (line 162) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/operations.rs - ecs::components::global_transform::operations::GlobalTransform::transform_point (line 69) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform/operations.rs - ecs::components::global_transform::operations::GlobalTransform::mul_transform (line 23) ... ok
[INFO] [stdout] test src/ecs/components/global_transform/operations.rs - ecs::components::global_transform::operations::GlobalTransform::transform_by (line 47) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/operations.rs - ecs::components::global_transform2d::operations::GlobalTransform2D::lerp (line 138) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/mod.rs - ecs::components::global_transform2d (line 31) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/operations.rs - ecs::components::global_transform2d::operations::GlobalTransform2D::mul_transform (line 17) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::from_translation (line 78) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::decompose (line 267) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::matrix (line 126) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::from_translation_rotation_scale (line 101) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform2d/operations.rs - ecs::components::global_transform2d::operations::GlobalTransform2D::transform_point (line 63) ... FAILED
[INFO] [stdout] test src/ecs/components/global_transform2d/operations.rs - ecs::components::global_transform2d::operations::GlobalTransform2D::transform_by (line 41) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D (line 24) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::from_matrix (line 58) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::scale (line 201) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::rotation (line 229) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::to_cols_array (line 149) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/children.rs - ecs::components::hierarchy::children::Children (line 29) ... ok
[INFO] [stdout] test src/ecs/components/global_transform2d/types.rs - ecs::components::global_transform2d::types::GlobalTransform2D::translation (line 180) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/children.rs - ecs::components::hierarchy::children::Children::retain (line 195) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name (line 25) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/mod.rs - ecs::components::hierarchy (line 27) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::into_string (line 133) ... FAILED
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::contains (line 149) ... FAILED
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::as_str (line 65) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::is_empty (line 115) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::ends_with (line 182) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::len (line 100) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::new (line 50) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::set (line 84) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/parent.rs - ecs::components::hierarchy::parent::Parent (line 29) ... ok
[INFO] [stdout] test src/ecs/components/propagation/mod.rs - ecs::components::propagation (line 45) ... ignored
[INFO] [stdout] test src/ecs/components/hierarchy/name.rs - ecs::components::hierarchy::name::Name::starts_with (line 166) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/parent.rs - ecs::components::hierarchy::parent::Parent::get (line 70) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/parent.rs - ecs::components::hierarchy::parent::Parent::new (line 54) ... ok
[INFO] [stdout] test src/ecs/components/hierarchy/parent.rs - ecs::components::hierarchy::parent::Parent::set (line 94) ... ok
[INFO] [stdout] test src/ecs/components/mod.rs - ecs::components (line 128) ... ok
[ERROR] error running command: command timed out after 900 seconds
[INFO] running `Command { std: "docker" "inspect" "9b46769a85c9b09fea6a8d325e57de37423977991b257a9ade1f3a13f0e572dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b46769a85c9b09fea6a8d325e57de37423977991b257a9ade1f3a13f0e572dd", kill_on_drop: false }`
[INFO] [stdout] 9b46769a85c9b09fea6a8d325e57de37423977991b257a9ade1f3a13f0e572dd
