[INFO] fetching crate gdsr 0.0.1-alpha.3... [INFO] testing gdsr-0.0.1-alpha.3 against beta-2026-04-21 for beta-1.96-1 [INFO] extracting crate gdsr 0.0.1-alpha.3 into /workspace/builds/worker-0-tc2/source [INFO] started tweaking crates.io crate gdsr 0.0.1-alpha.3 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate gdsr 0.0.1-alpha.3 [INFO] tweaked toml for crates.io crate gdsr 0.0.1-alpha.3 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate gdsr 0.0.1-alpha.3 on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate gdsr 0.0.1-alpha.3 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "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" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b420977f6855321a168b9f01ba8b647ba79cbba4863dea4fc3cd29436bcbb915 [INFO] running `Command { std: "docker" "start" "-a" "b420977f6855321a168b9f01ba8b647ba79cbba4863dea4fc3cd29436bcbb915", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b420977f6855321a168b9f01ba8b647ba79cbba4863dea4fc3cd29436bcbb915", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b420977f6855321a168b9f01ba8b647ba79cbba4863dea4fc3cd29436bcbb915", kill_on_drop: false }` [INFO] [stdout] b420977f6855321a168b9f01ba8b647ba79cbba4863dea4fc3cd29436bcbb915 [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b49550172dc2f21f02a67775fd68fb4727892924eb0e4e2111f26c049b0c1d1f [INFO] running `Command { std: "docker" "start" "-a" "b49550172dc2f21f02a67775fd68fb4727892924eb0e4e2111f26c049b0c1d1f", kill_on_drop: false }` [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling gdsr v0.0.1-alpha.3 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.47s [INFO] running `Command { std: "docker" "inspect" "b49550172dc2f21f02a67775fd68fb4727892924eb0e4e2111f26c049b0c1d1f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b49550172dc2f21f02a67775fd68fb4727892924eb0e4e2111f26c049b0c1d1f", kill_on_drop: false }` [INFO] [stdout] b49550172dc2f21f02a67775fd68fb4727892924eb0e4e2111f26c049b0c1d1f [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0f97f3108e48f2d870f6d91db8cb1e6ffb52bdf50e3ee5dbe64699cae9e891df [INFO] running `Command { std: "docker" "start" "-a" "0f97f3108e48f2d870f6d91db8cb1e6ffb52bdf50e3ee5dbe64699cae9e891df", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling zerocopy v0.8.40 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling futures-sink v0.3.32 [INFO] [stderr] Compiling futures-core v0.3.32 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling winnow v0.7.14 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling nix v0.30.1 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling toml_datetime v1.0.0+spec-1.1.0 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling rstest_macros v0.23.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling futures-channel v0.3.32 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling clap_lex v1.0.0 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling relative-path v1.9.3 [INFO] [stderr] Compiling futures-timer v3.0.3 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling statrs v0.18.0 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling similar v2.7.0 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling codspeed v4.3.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling toml_parser v1.0.9+spec-1.1.0 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling rand v0.10.0 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling gdsr v0.0.1-alpha.3 (/opt/rustwide/workdir) [INFO] [stderr] Compiling toml_edit v0.25.3+spec-1.1.0 [INFO] [stderr] Compiling insta v1.46.3 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling env_filter v1.0.0 [INFO] [stderr] Compiling env_logger v0.11.9 [INFO] [stderr] Compiling proc-macro-crate v3.5.0 [INFO] [stderr] Compiling quickcheck v1.1.0 [INFO] [stderr] Compiling zerocopy-derive v0.8.40 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling futures-macro v0.3.32 [INFO] [stderr] Compiling quickcheck_macros v1.2.0 [INFO] [stderr] Compiling futures-util v0.3.32 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling futures-executor v0.3.32 [INFO] [stderr] Compiling futures v0.3.32 [INFO] [stderr] Compiling rstest v0.23.0 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling codspeed-criterion-compat-walltime v4.3.0 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 33.94s [INFO] running `Command { std: "docker" "inspect" "0f97f3108e48f2d870f6d91db8cb1e6ffb52bdf50e3ee5dbe64699cae9e891df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0f97f3108e48f2d870f6d91db8cb1e6ffb52bdf50e3ee5dbe64699cae9e891df", kill_on_drop: false }` [INFO] [stdout] 0f97f3108e48f2d870f6d91db8cb1e6ffb52bdf50e3ee5dbe64699cae9e891df [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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3682993e59de4c4a765c6e3919d9746fe909e8af36782be12fff496d3851111b [INFO] running `Command { std: "docker" "start" "-a" "3682993e59de4c4a765c6e3919d9746fe909e8af36782be12fff496d3851111b", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gdsr-fe6637a04bf702a8) [INFO] [stdout] [INFO] [stdout] running 613 tests [INFO] [stdout] test cell::tests::test_add_polygon ... ok [INFO] [stdout] test cell::tests::test_add_path ... ok [INFO] [stdout] test cell::tests::stream_elements_cancellation ... ok [INFO] [stdout] test cell::tests::test_cell_bounding_box_empty ... ok [INFO] [stdout] test cell::tests::test_cell_bounding_box ... ok [INFO] [stdout] test cell::tests::stream_elements_matches_get_elements ... ok [INFO] [stdout] test cell::tests::test_cell_bounding_box_polygons_only ... ok [INFO] [stdout] test cell::tests::test_add_text ... ok [INFO] [stdout] test cell::tests::test_cell_default ... ok [INFO] [stdout] test cell::tests::test_cell_new ... ok [INFO] [stdout] test cell::tests::test_cell_to_float_unit ... ok [INFO] [stdout] test config::gds_file_types::tests::combine_record_and_data_type_produces_correct_value::case_1 ... ok [INFO] [stdout] test cell::tests::test_cell_to_integer_unit ... ok [INFO] [stdout] test config::gds_file_types::tests::combine_record_and_data_type_produces_correct_value::case_2 ... ok [INFO] [stdout] test config::gds_file_types::tests::combine_record_and_data_type_produces_correct_value::case_4 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_invalid::case_2 ... ok [INFO] [stdout] test config::gds_file_types::tests::combine_record_and_data_type_produces_correct_value::case_3 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_1 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_3 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_2 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_4 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_6 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_7 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_invalid::case_1 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_03 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_invalid::case_2 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_08 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_01 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_09 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_invalid::case_3 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_data_type_try_from_valid::case_5 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_02 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_05 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_04 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_07 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_11 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_10 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_12 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_13 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_15 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_17 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_18 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_invalid::case_1 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_19 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_06 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_14 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_20 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_16 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_22 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_21 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_24 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_23 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_25 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_29 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_26 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_30 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_28 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_31 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_32 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_33 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_27 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_45 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_34 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_46 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_36 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_37 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_38 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_39 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_48 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_41 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_40 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_50 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_51 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_49 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_53 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_42 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_35 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_43 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_44 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_52 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_47 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_55 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_56 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_54 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_57 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_60 ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_58 ... ok [INFO] [stdout] test elements::element::tests::test_element_bounding_box_polygon ... ok [INFO] [stdout] test elements::element::tests::test_element_bounding_box_path ... ok [INFO] [stdout] test elements::element::tests::test_element_bounding_box_text ... ok [INFO] [stdout] test elements::element::tests::test_element_bounding_box_reference ... ok [INFO] [stdout] test config::gds_file_types::tests::gds_record_try_from_valid::case_59 ... ok [INFO] [stdout] test elements::element::tests::test_element_move_to ... ok [INFO] [stdout] test elements::element::tests::test_element_move_by ... ok [INFO] [stdout] test elements::element::tests::test_element_to_float_unit_converts_points ... ok [INFO] [stdout] test elements::element::tests::test_element_to_integer_unit_preserves_variant ... ok [INFO] [stdout] test elements::element::tests::test_element_transform_preserves_variant ... ok [INFO] [stdout] test elements::element::tests::test_element_to_integer_unit_converts_points ... ok [INFO] [stdout] test elements::gds_box::tests::bounding_box ... ok [INFO] [stdout] test elements::element::tests::test_element_to_float_unit_preserves_variant ... ok [INFO] [stdout] test elements::gds_box::tests::creation_normalises_corners ... ok [INFO] [stdout] test elements::gds_box::tests::default_is_zero ... ok [INFO] [stdout] test elements::gds_box::tests::move_to ... ok [INFO] [stdout] test elements::gds_box::tests::points_are_closed_rectangle ... ok [INFO] [stdout] test elements::gds_box::tests::to_float_unit ... ok [INFO] [stdout] test elements::gds_box::tests::to_integer_unit ... ok [INFO] [stdout] test elements::node::tests::bounding_box ... ok [INFO] [stdout] test elements::node::tests::creation ... ok [INFO] [stdout] test elements::node::tests::default_is_empty ... ok [INFO] [stdout] test elements::node::tests::move_to ... ok [INFO] [stdout] test elements::node::tests::move_to_empty_is_noop ... ok [INFO] [stdout] test elements::node::tests::to_float_unit ... ok [INFO] [stdout] test elements::node::tests::to_integer_unit ... ok [INFO] [stdout] test elements::node::tests::truncates_beyond_max_points ... ok [INFO] [stdout] test elements::path::tests::test_path_bounding_box ... ok [INFO] [stdout] test elements::path::tests::test_path_bounding_box_single_point ... ok [INFO] [stdout] test elements::path::tests::test_path_clone_and_partial_eq ... ok [INFO] [stdout] test elements::path::tests::test_path_creation ... ok [INFO] [stdout] test elements::path::tests::test_path_default ... ok [INFO] [stdout] test elements::path::tests::test_path_to_integer_unit ... ok [INFO] [stdout] test elements::path::tests::test_path_bounding_box_empty ... ok [INFO] [stdout] test elements::path::tests::test_path_to_float_unit ... ok [INFO] [stdout] test elements::path::tests::test_path_to_integer_unit_no_width ... ok [INFO] [stdout] test elements::path::tests::test_path_type_clone_and_copy ... ok [INFO] [stdout] test elements::path::tests::test_path_type_default ... ok [INFO] [stdout] test elements::path::tests::test_path_type_new ... ok [INFO] [stdout] test elements::path::tests::test_path_type_partial_eq ... ok [INFO] [stdout] test elements::path::tests::test_path_type_value ... ok [INFO] [stdout] test elements::path::tests::test_path_type_values ... ok [INFO] [stdout] test elements::path::tests::test_path_with_different_unit_points ... ok [INFO] [stdout] test elements::polygon::tests::test_close_points_already_closed ... ok [INFO] [stdout] test elements::polygon::tests::test_close_points_empty ... ok [INFO] [stdout] test elements::polygon::tests::test_close_points_not_closed ... ok [INFO] [stdout] test elements::polygon::tests::test_is_point_inside ... ok [INFO] [stdout] test elements::polygon::tests::test_is_point_on_edge ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_area ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_bounding_box ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_creation ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_default ... ok [INFO] [stdout] test cell::tests::test_cell_display ... ok [INFO] [stdout] test elements::element::tests::test_element_from_box ... ok [INFO] [stdout] test elements::element::tests::test_element_from_reference ... ok [INFO] [stdout] test elements::element::tests::test_element_from_polygon ... ok [INFO] [stdout] test elements::element::tests::test_element_from_node ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_move_to_empty ... ok [INFO] [stdout] test elements::element::tests::test_element_from_text ... ok [INFO] [stdout] test elements::element::tests::test_element_from_path ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_to_integer_unit ... ok [INFO] [stdout] test elements::gds_box::tests::center ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_cell ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_move_to ... ok [INFO] [stdout] test elements::gds_box::tests::display ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_perimeter ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_clone ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_to_float_unit ... ok [INFO] [stdout] test elements::gds_box::tests::corner_accessors ... ok [INFO] [stdout] test elements::node::tests::display ... ok [INFO] [stdout] test elements::path::tests::test_path_display ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_display ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_default ... ok [INFO] [stdout] test elements::path::tests::test_path_type_debug ... ok [INFO] [stdout] test elements::polygon::tests::test_polygon_display_empty ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_display ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_display_element ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_from_cell ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_from_path ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_from_text ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_from_polygon ... ok [INFO] [stdout] test elements::reference::tests::instance::test_instance_from_string ... ok [INFO] [stdout] test elements::reference::tests::stream_flatten_cancellation_returns_err ... ok [INFO] [stdout] test elements::reference::tests::test_reference_1x1_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_default ... ok [INFO] [stdout] test elements::reference::tests::test_reference_asymmetric_5x1_grid_expansion ... ok [INFO] [stdout] test cell::tests::test_cell_get_elements ... ok [INFO] [stdout] test elements::reference::tests::test_reference_asymmetric_1x5_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_depth_limited_flatten_nested ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_nonexistent_cell ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_empty_cell_with_grid ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_nonexistent_cell_with_grid ... ok [INFO] [stdout] test elements::reference::tests::test_reference_depth_limited_flatten_triple_nested ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_with_depth ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_with_zero_column_grid ... ok [INFO] [stdout] test elements::reference::tests::stream_flatten_matches_flatten ... ok [INFO] [stdout] test elements::reference::tests::test_reference_from_cell_name ... ok [INFO] [stdout] test elements::reference::tests::stream_flatten_element_reference_matches_flatten ... ok [INFO] [stdout] test elements::reference::tests::test_reference_from_polygon ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_empty_cell ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten_cell_reference ... ok [INFO] [stdout] test elements::reference::tests::test_reference_display ... ok [INFO] [stdout] test elements::reference::tests::test_reference_get_elements_in_grid ... ok [INFO] [stdout] test elements::reference::tests::test_reference_flatten ... ok [INFO] [stdout] test elements::reference::tests::test_reference_move_to ... ok [INFO] [stdout] test elements::reference::tests::test_reference_negative_spacing_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_new ... ok [INFO] [stdout] test elements::reference::tests::test_reference_large_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_none_spacing_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_to_float_unit ... ok [INFO] [stdout] test elements::reference::tests::test_reference_transform ... ok [INFO] [stdout] test elements::reference::tests::test_reference_zero_column_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_with_x_reflection ... ok [INFO] [stdout] test elements::reference::tests::test_reference_zero_row_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_to_integer_unit ... ok [INFO] [stdout] test elements::reference::tests::test_reference_zero_spacing_grid_expansion ... ok [INFO] [stdout] test elements::reference::tests::test_reference_with_rotation_and_magnification ... ok [INFO] [stdout] test elements::reference::tests::test_referenced_cell_name_direct ... ok [INFO] [stdout] test elements::text::tests::test_get_presentation_value_all_combinations ... ok [INFO] [stdout] test elements::text::tests::test_get_presentations_from_value_all_valid ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_clone_copy_eq ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_default ... ok [INFO] [stdout] test elements::reference::tests::test_referenced_cell_name_nested ... ok [INFO] [stdout] test elements::reference::tests::test_referenced_cell_name_inline_polygon ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_name ... ok [INFO] [stdout] test elements::text::tests::test_get_presentations_from_value_invalid ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_display_and_debug ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_new ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_value ... ok [INFO] [stdout] test elements::text::tests::test_horizontal_presentation_values ... ok [INFO] [stdout] test elements::text::tests::test_roundtrip_presentation_conversion ... ok [INFO] [stdout] test elements::text::tests::test_presentation_error_messages ... ok [INFO] [stdout] test elements::text::tests::test_set_angle ... ok [INFO] [stdout] test elements::text::tests::test_set_horizontal_presentation ... ok [INFO] [stdout] test elements::text::tests::test_set_layer ... ok [INFO] [stdout] test elements::text::tests::test_set_magnification ... ok [INFO] [stdout] test elements::text::tests::test_set_origin ... ok [INFO] [stdout] test elements::text::tests::test_set_vertical_presentation ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_clone_copy_eq ... ok [INFO] [stdout] test elements::text::tests::test_text_to_integer_unit ... ok [INFO] [stdout] test elements::text::tests::test_set_text ... ok [INFO] [stdout] test elements::text::tests::test_set_x_reflection ... ok [INFO] [stdout] test elements::text::tests::test_setter_chaining ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_default ... ok [INFO] [stdout] test elements::text::tests::test_text_bounding_box ... ok [INFO] [stdout] test elements::text::tests::test_text_bounding_box_default ... ok [INFO] [stdout] test elements::text::tests::test_text_creation ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_name ... ok [INFO] [stdout] test elements::text::tests::test_text_default ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_display_and_debug ... ok [INFO] [stdout] test elements::text::tests::test_text_reflect ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_values ... ok [INFO] [stdout] test elements::text::tests::test_text_scale ... ok [INFO] [stdout] test elements::text::tests::test_text_rotate ... ok [INFO] [stdout] test elements::text::tests::test_text_display ... ok [INFO] [stdout] test elements::text::tests::test_text_reflect_scale_rotate ... ok [INFO] [stdout] test error::tests::test_gds_error_from_io_error ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_new ... ok [INFO] [stdout] test elements::text::tests::test_vertical_presentation_value ... ok [INFO] [stdout] test geometry::area::tests::test_area_square ... ok [INFO] [stdout] test error::tests::test_gds_error_display_io ... ok [INFO] [stdout] test error::tests::test_gds_error_display_invalid_data ... ok [INFO] [stdout] test error::tests::test_gds_error_display_validation ... ok [INFO] [stdout] test geometry::area::tests::test_area_triangle ... ok [INFO] [stdout] test elements::text::tests::test_text_to_float_unit ... ok [INFO] [stdout] test geometry::area::tests::test_area_concave_polygon ... ok [INFO] [stdout] test geometry::area::tests::test_area_empty_polygon ... ok [INFO] [stdout] test geometry::bounding_box::property_tests::bounding_box_contains_all_points ... ok [INFO] [stdout] test geometry::bounding_box::property_tests::single_point_bounding_box_is_point_itself ... ok [INFO] [stdout] test error::tests::test_gds_error_source ... ok [INFO] [stdout] test geometry::bounding_box::tests::test_bounding_box ... ok [INFO] [stdout] test geometry::area::property_tests::area_is_non_negative ... ok [INFO] [stdout] test geometry::bounding_box::tests::test_bounding_box_collinear_points ... ok [INFO] [stdout] test geometry::bounding_box::tests::test_bounding_box_empty ... ok [INFO] [stdout] test geometry::bounding_box::tests::test_bounding_box_large_coordinates ... ok [INFO] [stdout] test geometry::area::property_tests::area_invariant_under_reversal ... ok [INFO] [stdout] test geometry::bounding_box::tests::test_bounding_box_single_point ... ok [INFO] [stdout] test geometry::is_point_inside::tests::test_is_point_inside_concave_polygon ... ok [INFO] [stdout] test geometry::is_point_inside::property_tests::centroid_of_rectangle_is_inside ... ok [INFO] [stdout] test geometry::is_point_inside::property_tests::far_away_point_is_outside ... ok [INFO] [stdout] test geometry::is_point_inside::tests::test_point_inside ... ok [INFO] [stdout] test geometry::is_point_inside::tests::test_point_inside_edge_cases ... ok [INFO] [stdout] test geometry::is_point_inside::tests::test_point_inside_too_few_points ... ok [INFO] [stdout] test geometry::is_point_on_edge::property_tests::endpoints_excluded_from_segment ... ok [INFO] [stdout] test geometry::is_point_on_edge::property_tests::midpoint_is_on_segment ... ok [INFO] [stdout] test geometry::is_point_on_edge::tests::test_degenerate_segment ... ok [INFO] [stdout] test geometry::is_point_on_edge::tests::test_is_point_on_edge_vertex ... ok [INFO] [stdout] test geometry::is_point_on_edge::tests::test_is_point_on_line_segment ... ok [INFO] [stdout] test geometry::is_point_on_edge::tests::test_point_on_edge ... ok [INFO] [stdout] test geometry::is_point_on_edge::tests::test_point_on_edge_midpoint ... ok [INFO] [stdout] test geometry::is_point_on_edge::tests::test_point_on_edge_too_few_points ... ok [INFO] [stdout] test geometry::path_expansion::tests::collinear_segments ... ok [INFO] [stdout] test geometry::path_expansion::tests::horizontal_segment_overlap ... ok [INFO] [stdout] test geometry::path_expansion::tests::horizontal_segment_round ... ok [INFO] [stdout] test geometry::path_expansion::tests::horizontal_segment_square ... ok [INFO] [stdout] test geometry::path_expansion::tests::ninety_degree_corner ... ok [INFO] [stdout] test geometry::path_expansion::tests::overlap_diagonal_extensions ... ok [INFO] [stdout] test geometry::path_expansion::tests::overlap_extension_polygon_is_contiguous ... ok [INFO] [stdout] test geometry::path_expansion::tests::round_cap_polygon_is_contiguous ... ok [INFO] [stdout] test geometry::path_expansion::tests::overlap_zero_extension_matches_no_extension ... ok [INFO] [stdout] test geometry::path_expansion::tests::round_ignores_extensions ... ok [INFO] [stdout] test geometry::path_expansion::tests::square_ignores_extensions ... ok [INFO] [stdout] test geometry::path_expansion::tests::too_few_points_returns_empty ... ok [INFO] [stdout] test geometry::path_expansion::tests::zero_width_returns_empty ... ok [INFO] [stdout] test geometry::perimeter::property_tests::perimeter_of_segment_equals_distance ... ok [INFO] [stdout] test geometry::perimeter::tests::test_perimeter_closed_square ... ok [INFO] [stdout] test geometry::perimeter::tests::test_perimeter_open_polygon ... ok [INFO] [stdout] test geometry::perimeter::tests::test_perimeter_single_point ... ok [INFO] [stdout] test geometry::perimeter::property_tests::perimeter_is_non_negative ... ok [INFO] [stdout] test geometry::perimeter::tests::test_perimeter_triangle ... ok [INFO] [stdout] test geometry::perimeter::tests::test_perimeter_two_points ... ok [INFO] [stdout] test geometry::round::property_tests::round_to_zero_decimals_is_integer ... ok [INFO] [stdout] test geometry::round::tests::test_round_to_decimals ... ok [INFO] [stdout] test grid::tests::test_grid_1x1 ... ok [INFO] [stdout] test grid::tests::test_grid_angle_normalization ... ok [INFO] [stdout] test grid::tests::test_grid_default ... ok [INFO] [stdout] test grid::tests::test_grid_display ... ok [INFO] [stdout] test grid::tests::test_grid_edge_magnification ... ok [INFO] [stdout] test grid::tests::test_grid_move_to ... ok [INFO] [stdout] test grid::tests::test_grid_negative_spacing ... ok [INFO] [stdout] test grid::tests::test_grid_new_and_getters ... ok [INFO] [stdout] test grid::tests::test_grid_setters_and_with_setters ... ok [INFO] [stdout] test grid::tests::test_grid_to_float_unit ... ok [INFO] [stdout] test grid::tests::test_grid_to_integer_unit ... ok [INFO] [stdout] test grid::tests::test_grid_to_integer_unit_none_spacing ... ok [INFO] [stdout] test grid::tests::test_grid_transform_edge_magnification_with_scale ... ok [INFO] [stdout] test grid::tests::test_grid_transform_rotation_then_reflection ... ok [INFO] [stdout] test grid::tests::test_grid_transform_with_reflection ... ok [INFO] [stdout] test grid::tests::test_grid_transform_with_rotation ... ok [INFO] [stdout] test grid::tests::test_grid_transform_with_scale ... ok [INFO] [stdout] test grid::tests::test_grid_transform_with_translation ... ok [INFO] [stdout] test grid::tests::test_grid_zero_dimensions ... ok [INFO] [stdout] test grid::tests::test_grid_zero_spacing ... ok [INFO] [stdout] test library::tests::test_dangling_cell_references_detected ... ok [INFO] [stdout] test library::tests::test_dangling_cell_references_inline_element ... ok [INFO] [stdout] test library::tests::test_dangling_cell_references_multiple ... ok [INFO] [stdout] test library::tests::test_dangling_cell_references_nested_inline_element ... ok [INFO] [stdout] test library::tests::test_dangling_cell_references_none ... ok [INFO] [stdout] test library::tests::test_library_add_cell ... ok [INFO] [stdout] test library::tests::test_library_add_duplicate_cell ... ok [INFO] [stdout] test library::tests::test_library_add_multiple_cells ... ok [INFO] [stdout] test library::tests::test_library_clone ... ok [INFO] [stdout] test library::tests::test_library_contains ... ok [INFO] [stdout] test library::tests::test_library_display ... ok [INFO] [stdout] test library::tests::test_library_debug ... ok [INFO] [stdout] test library::tests::test_library_display_empty ... ok [INFO] [stdout] test library::tests::test_library_new ... ok [INFO] [stdout] test library::tests::test_library_remove_cell ... ok [INFO] [stdout] test library::tests::test_library_remove_nonexistent_cell ... ok [INFO] [stdout] test library::tests::test_remap_layers_across_library ... ok [INFO] [stdout] test library::tests::test_remap_layers_inline_element ... ok [INFO] [stdout] test library::tests::test_remap_layers_unmatched_unchanged ... ok [INFO] [stdout] test point::tests::arithmetic::add_points_with_floats ... ok [INFO] [stdout] test point::tests::arithmetic::add_points_with_integers ... ok [INFO] [stdout] test point::tests::arithmetic::chained_arithmetic_operations ... ok [INFO] [stdout] test point::tests::arithmetic::divide_by_negative_scalar ... ok [INFO] [stdout] test point::tests::arithmetic::divide_point_by_f64 ... ok [INFO] [stdout] test point::tests::arithmetic::divide_point_by_i32 ... ok [INFO] [stdout] test point::tests::arithmetic::multiply_by_negative_scalar ... ok [INFO] [stdout] test point::tests::arithmetic::multiply_point_by_f64 ... ok [INFO] [stdout] test point::tests::arithmetic::negative_results ... ok [INFO] [stdout] test point::tests::arithmetic::subtract_points_with_floats ... ok [INFO] [stdout] test point::tests::arithmetic::subtract_points_with_integers ... ok [INFO] [stdout] test point::tests::conversion::conversion_preserves_equality ... ok [INFO] [stdout] test point::tests::arithmetic::multiply_point_by_i32 ... ok [INFO] [stdout] test point::tests::conversion::roundtrip_integer_to_float_to_integer ... ok [INFO] [stdout] test point::tests::conversion::to_float_unit_from_floats ... ok [INFO] [stdout] test point::tests::conversion::to_integer_unit_from_integers ... ok [INFO] [stdout] test point::tests::creation::chaining_from_and_methods ... ok [INFO] [stdout] test point::tests::creation::from_f64_array ... ok [INFO] [stdout] test point::tests::creation::from_f64_tuple ... ok [INFO] [stdout] test point::tests::conversion::to_float_unit_from_integers ... ok [INFO] [stdout] test point::tests::creation::from_i32_array ... ok [INFO] [stdout] test point::tests::creation::getter_and_setter ... ok [INFO] [stdout] test point::tests::creation::from_unit_tuple ... ok [INFO] [stdout] test point::tests::conversion::to_integer_unit_from_floats ... ok [INFO] [stdout] test point::tests::creation::into_works_with_type_inference ... ok [INFO] [stdout] test point::tests::creation::from_i32_tuple ... ok [INFO] [stdout] test point::tests::creation::with_defaults ... ok [INFO] [stdout] test point::tests::creation::with_defaults_float ... ok [INFO] [stdout] test point::tests::creation::with_floats ... ok [INFO] [stdout] test point::tests::creation::with_integers ... ok [INFO] [stdout] test point::tests::creation::with_mixed_units ... ok [INFO] [stdout] test point::tests::creation::with_units ... ok [INFO] [stdout] test point::tests::rotation::rotate_270_degrees ... ok [INFO] [stdout] test point::tests::rotation::rotate_360_degrees ... ok [INFO] [stdout] test point::tests::rotation::rotate_90_degrees ... ok [INFO] [stdout] test point::tests::rotation::rotate_180_degrees ... ok [INFO] [stdout] test point::tests::rotation::rotate_arbitrary_point ... ok [INFO] [stdout] test property_tests::grid::translation_preserves_dimensions ... ok [INFO] [stdout] test property_tests::grid::double_reflection_cancels ... ok [INFO] [stdout] test property_tests::path::bounding_box_contains_all_points ... ok [INFO] [stdout] test property_tests::path::centerline_points_inside_expanded_straight_path ... ok [INFO] [stdout] test property_tests::path::serialized_path_contains_extension_records ... ok [INFO] [stdout] test property_tests::path::overlap_zero_extension_matches_square ... ok [INFO] [stdout] test property_tests::path::to_polygon_returns_none_without_width ... ok [INFO] [stdout] test property_tests::point::addition_commutativity ... ok [INFO] [stdout] test property_tests::point::addition_associativity ... ok [INFO] [stdout] test property_tests::path::translation_preserves_point_count ... ok [INFO] [stdout] test property_tests::path::overlap_extension_area_matches_extended_length_times_width ... ok [INFO] [stdout] test property_tests::path::straight_path_area_matches_length_times_width ... ok [INFO] [stdout] test property_tests::point::additive_inverse ... ok [INFO] [stdout] test property_tests::point::rotation_by_2pi_is_identity ... ok [INFO] [stdout] test property_tests::point::additive_identity ... ok [INFO] [stdout] test property_tests::point::scalar_multiplication_distributivity ... ok [INFO] [stdout] test property_tests::polygon::translation_preserves_perimeter ... ok [INFO] [stdout] test property_tests::polygon::bounding_box_contains_all_points ... ok [INFO] [stdout] test property_tests::polygon::close_points_is_idempotent ... ok [INFO] [stdout] test property_tests::polygon::perimeter_is_non_negative ... ok [INFO] [stdout] test property_tests::polygon::area_is_non_negative ... ok [INFO] [stdout] test property_tests::transformation::identity_does_not_change_point ... ok [INFO] [stdout] test property_tests::transformation::rotation_by_two_pi_is_identity ... ok [INFO] [stdout] test property_tests::transformation::double_reflection_cancels ... ok [INFO] [stdout] test property_tests::transformation::rotation_by_zero_is_identity ... ok [INFO] [stdout] test property_tests::polygon::rotation_preserves_area ... ok [INFO] [stdout] test property_tests::polygon::translation_preserves_area ... ok [INFO] [stdout] test property_tests::text::double_reflection_cancels ... ok [INFO] [stdout] test property_tests::text::scale_multiplies_magnification ... ok [INFO] [stdout] test property_tests::transformation::rotation_then_inverse_is_identity ... ok [INFO] [stdout] test property_tests::transformation::scale_by_one_is_identity ... ok [INFO] [stdout] test property_tests::transformation::translation_composition ... ok [INFO] [stdout] test property_tests::transformation::translation_then_inverse_is_identity ... ok [INFO] [stdout] test property_tests::unit::addition_identity ... ok [INFO] [stdout] test property_tests::unit::addition_same_units_no_scaling_error_float ... ok [INFO] [stdout] test property_tests::transformation::scale_then_inverse_is_identity ... ok [INFO] [stdout] test property_tests::unit::addition_absolute_value_correctness ... ok [INFO] [stdout] test property_tests::unit::addition_preserves_units ... ok [INFO] [stdout] test property_tests::unit::addition_inverse_property ... ok [INFO] [stdout] test property_tests::unit::float_addition_associativity ... ok [INFO] [stdout] test property_tests::unit::addition_same_units_no_scaling_error_integer ... ok [INFO] [stdout] test property_tests::unit::float_addition_commutativity ... ok [INFO] [stdout] test property_tests::unit::multiplicative_identity ... ok [INFO] [stdout] test property_tests::unit::subtraction_preserves_units ... ok [INFO] [stdout] test property_tests::validation::test_cell_name_at_max_length ... ok [INFO] [stdout] test property_tests::validation::dangling_cell_references_detected_after_cell_removal ... ok [INFO] [stdout] test property_tests::validation::test_all_presentation_combinations_roundtrip ... ok [INFO] [stdout] test property_tests::validation::test_complex_path_types_roundtrip ... ok [INFO] [stdout] test property_tests::validation::test_cell_name_invalid_characters ... ok [INFO] [stdout] test property_tests::validation::test_cell_name_too_long ... ok [INFO] [stdout] test property_tests::validation::test_empty_cell_roundtrip ... ok [INFO] [stdout] test property_tests::validation::test_empty_library_roundtrip ... ok [INFO] [stdout] test property_tests::validation::test_cell_name_valid_special_characters ... ok [INFO] [stdout] test property_tests::validation::test_error_invalid_file ... ok [INFO] [stdout] test property_tests::validation::test_invalid_path ... ok [INFO] [stdout] test property_tests::validation::test_invalid_polygon ... ok [INFO] [stdout] test property_tests::validation::test_invalid_no_cell ... ok [INFO] [stdout] test property_tests::validation::test_library_roundtrip_different_units ... ok [INFO] [stdout] test property_tests::validation::test_large_polygon_coordinates ... ok [INFO] [stdout] test property_tests::validation::test_float_coordinates ... ok [INFO] [stdout] test property_tests::validation::test_max_coordinate_values_roundtrip ... ok [INFO] [stdout] test property_tests::validation::test_library_roundtrip_mixed_elements ... ok [INFO] [stdout] test property_tests::validation::test_multiple_cells_referencing_same_cell ... ok [INFO] [stdout] test property_tests::validation::test_path_invalid_layer ... ok [INFO] [stdout] test property_tests::validation::test_polygon_invalid_data_type ... ok [INFO] [stdout] test property_tests::validation::test_polygon_invalid_layer ... ok [INFO] [stdout] test property_tests::validation::test_polygon_layer_and_data_type_at_boundary ... ok [INFO] [stdout] test property_tests::validation::test_nested_references ... ok [INFO] [stdout] test property_tests::validation::test_polygon_too_few_points ... ok [INFO] [stdout] test property_tests::validation::test_reference_columns_exceed_max ... ok [INFO] [stdout] test property_tests::validation::test_reference_rows_exceed_max ... ok [INFO] [stdout] test property_tests::validation::test_reference_col_row_at_max ... ok [INFO] [stdout] test property_tests::validation::test_special_characters_in_cell_names_roundtrip ... ok [INFO] [stdout] test property_tests::validation::test_path_invalid_data_type ... ok [INFO] [stdout] test property_tests::validation::test_single_cell_with_all_element_types ... ok [INFO] [stdout] test property_tests::validation::test_text_string_too_long ... ok [INFO] [stdout] test property_tests::validation::test_text_with_various_presentations ... ok [INFO] [stdout] test stats::tests::cell_stats_counts_elements ... ok [INFO] [stdout] test stats::tests::cell_stats_multiple_references_to_same_cell ... ok [INFO] [stdout] test stats::tests::empty_cell_stats ... ok [INFO] [stdout] test stats::tests::empty_library_statistics ... ok [INFO] [stdout] test stats::tests::library_hierarchy_depth_diamond ... ok [INFO] [stdout] test stats::tests::library_hierarchy_depth_flat ... ok [INFO] [stdout] test stats::tests::library_hierarchy_depth_nested ... ok [INFO] [stdout] test stats::tests::library_hierarchy_depth_with_cycle ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_apply_at_centre ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_display ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_from_line_apply ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_from_line_crossing_quadrants ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_from_line_diagonal ... ok [INFO] [stdout] test property_tests::validation::test_cell_reference ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_from_line_horizontal ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_from_line_negative_quadrant ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_from_line_vertical ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_horizontal_axis ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_new ... ok [INFO] [stdout] test transformation::reflection::tests::test_reflection_new_horizontal ... ok [INFO] [stdout] test property_tests::validation::test_text_invalid_layer ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_apply_at_centre ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_90_degrees ... ok [INFO] [stdout] test property_tests::validation::test_text_string_at_max_length ... ok [INFO] [stdout] test property_tests::validation::test_element_reference ... ok [INFO] [stdout] test property_tests::validation::test_multiple_cells_different_layers ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_getters ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_greater_than_2pi ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_new ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_apply_at_centre ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_negative_angle ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_by_zero ... ok [INFO] [stdout] test transformation::rotation::tests::test_rotation_display ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_by_zero_nonorigin_centre ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_double ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_getters ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_half ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_display ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_negative ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_negative_with_centre ... ok [INFO] [stdout] test transformation::scale::tests::test_scale_new ... ok [INFO] [stdout] test transformation::tests::test_all_four_transformations_combined ... ok [INFO] [stdout] test transformation::tests::test_all_transformations_simultaneously ... ok [INFO] [stdout] test transformation::tests::test_apply_to_point_scale ... ok [INFO] [stdout] test transformation::tests::test_from_reflection ... ok [INFO] [stdout] test transformation::tests::test_apply_to_point_translation ... ok [INFO] [stdout] test transformation::tests::test_from_rotation ... ok [INFO] [stdout] test transformation::tests::test_from_scale ... ok [INFO] [stdout] test transformation::tests::test_from_self_reference ... ok [INFO] [stdout] test transformation::tests::test_from_translation ... ok [INFO] [stdout] test transformation::tests::test_negative_scale ... ok [INFO] [stdout] test transformation::tests::test_negative_scale_with_nonorigin_centre ... ok [INFO] [stdout] test transformation::tests::test_order_of_operations_reflection_before_rotation ... ok [INFO] [stdout] test transformation::tests::test_reflection_and_rotation_combined ... ok [INFO] [stdout] test transformation::tests::test_rotation_and_scale_combined ... ok [INFO] [stdout] test transformation::tests::test_rotation_and_translation_combined ... ok [INFO] [stdout] test transformation::tests::test_rotation_greater_than_2pi ... ok [INFO] [stdout] test transformation::tests::test_apply_to_point_identity ... ok [INFO] [stdout] test transformation::tests::test_rotation_negative_angle ... ok [INFO] [stdout] test transformation::tests::test_scale_and_translation_combined ... ok [INFO] [stdout] test transformation::tests::test_scale_by_zero ... ok [INFO] [stdout] test transformation::tests::test_scale_by_zero_nonorigin_centre ... ok [INFO] [stdout] test transformation::tests::test_scale_by_zero_then_translate ... ok [INFO] [stdout] test transformation::tests::test_transformation_default ... ok [INFO] [stdout] test transformation::tests::test_transformation_with_reflection ... ok [INFO] [stdout] test transformation::tests::test_transformation_with_rotation ... ok [INFO] [stdout] test transformation::tests::test_transformation_with_scale ... ok [INFO] [stdout] test transformation::translation::tests::test_translation_apply_negative_delta ... ok [INFO] [stdout] test transformation::tests::test_transformation_with_translation ... ok [INFO] [stdout] test transformation::translation::tests::test_translation_apply_positive_delta ... ok [INFO] [stdout] test transformation::translation::tests::test_translation_large_values ... ok [INFO] [stdout] test transformation::translation::tests::test_translation_new ... ok [INFO] [stdout] test transformation::translation::tests::test_translation_zero_delta ... ok [INFO] [stdout] test units::tests::addition::different_units ... ok [INFO] [stdout] test units::tests::addition::different_user_units ... ok [INFO] [stdout] test units::tests::addition::float_and_integer ... ok [INFO] [stdout] test units::tests::addition::floats ... ok [INFO] [stdout] test units::tests::addition::integers ... ok [INFO] [stdout] test units::tests::addition::integers_no_overflow ... ok [INFO] [stdout] test units::tests::conversion::integer_value ... ok [INFO] [stdout] test transformation::translation::tests::test_translation_display ... ok [INFO] [stdout] test units::tests::conversion::negative_values ... ok [INFO] [stdout] test units::tests::addition::integer_and_float ... ok [INFO] [stdout] test units::tests::conversion::test_as_float_unit ... ok [INFO] [stdout] test units::tests::conversion::test_as_integer_unit ... ok [INFO] [stdout] test units::tests::conversion::absolute_value ... ok [INFO] [stdout] test units::tests::chained_operations ... ok [INFO] [stdout] test units::tests::conversion::to_float_from_float ... ok [INFO] [stdout] test units::tests::conversion::to_float_from_integer ... ok [INFO] [stdout] test units::tests::conversion::to_integer_from_float ... ok [INFO] [stdout] test units::tests::conversion::zero_value ... ok [INFO] [stdout] test units::tests::creation::float ... ok [INFO] [stdout] test units::tests::creation::integer ... ok [INFO] [stdout] test units::tests::conversion::to_integer_from_integer ... ok [INFO] [stdout] test units::tests::display_and_default::test_default ... ok [INFO] [stdout] test units::tests::creation::zero ... ok [INFO] [stdout] test units::tests::display_and_default::test_display_float ... ok [INFO] [stdout] test units::tests::display_and_default::test_display_negative_float ... ok [INFO] [stdout] test units::tests::display_and_default::test_display_integer ... ok [INFO] [stdout] test units::tests::conversion::to_integer_with_user_unit ... ok [INFO] [stdout] test units::tests::display_and_default::test_display_negative_integer ... ok [INFO] [stdout] test units::tests::display_and_default::test_scale_units_float ... ok [INFO] [stdout] test units::tests::display_and_default::test_scale_units_integer ... ok [INFO] [stdout] test units::tests::division::float_by_f64 ... ok [INFO] [stdout] test units::tests::division::float_by_i32 ... ok [INFO] [stdout] test units::tests::division::float_by_u32 ... ok [INFO] [stdout] test units::tests::division::integer_by_f64 ... ok [INFO] [stdout] test units::tests::division::integer_by_i32_exact ... ok [INFO] [stdout] test units::tests::equality::different_real_values_not_equal ... ok [INFO] [stdout] test units::tests::equality::different_values_not_equal ... ok [INFO] [stdout] test units::tests::equality::float_different_scales_equal ... ok [INFO] [stdout] test units::tests::division::integer_by_i32 ... ok [INFO] [stdout] test units::tests::equality::integer_and_float_equal ... ok [INFO] [stdout] test units::tests::equality::integer_different_scales_equal ... ok [INFO] [stdout] test units::tests::equality::same_float_same_units ... ok [INFO] [stdout] test units::tests::equality::same_integer_same_units ... ok [INFO] [stdout] test units::tests::multiplication::float_and_integer ... ok [INFO] [stdout] test units::tests::multiplication::float_by_f64 ... ok [INFO] [stdout] test units::tests::multiplication::float_by_i32 ... ok [INFO] [stdout] test units::tests::multiplication::floats ... ok [INFO] [stdout] test units::tests::multiplication::integer_and_float ... ok [INFO] [stdout] test units::tests::multiplication::integer_by_f64 ... ok [INFO] [stdout] test units::tests::multiplication::integer_by_i32 ... ok [INFO] [stdout] test units::tests::multiplication::float_by_u32 ... ok [INFO] [stdout] test units::tests::multiplication::integer_by_i32_no_overflow ... ok [INFO] [stdout] test units::tests::multiplication::integer_by_u32_no_overflow ... ok [INFO] [stdout] test units::tests::multiplication::integers ... ok [INFO] [stdout] test units::tests::subtraction::different_units ... ok [INFO] [stdout] test units::tests::subtraction::float_and_integer ... ok [INFO] [stdout] test units::tests::subtraction::floats ... ok [INFO] [stdout] test units::tests::subtraction::integer_and_float ... ok [INFO] [stdout] test units::tests::subtraction::integers ... ok [INFO] [stdout] test units::tests::unit_setters::set_units_float ... ok [INFO] [stdout] test units::tests::unit_setters::set_units_integer ... ok [INFO] [stdout] test units::tests::unit_setters::with_units_float ... ok [INFO] [stdout] test units::tests::unit_setters::with_units_integer ... ok [INFO] [stdout] test utils::gds_format::tests::test_eight_byte_real_positive ... ok [INFO] [stdout] test utils::gds_format::tests::test_eight_byte_real_zero ... ok [INFO] [stdout] test utils::gds_format::tests::test_eight_byte_real_negative ... ok [INFO] [stdout] test utils::svg::tests::different_layers_get_different_colors ... ok [INFO] [stdout] test utils::svg::tests::empty_cell_produces_valid_svg ... ok [INFO] [stdout] test utils::gds_format::tests::test_height_byte_real_log ... ok [INFO] [stdout] test utils::svg::tests::box_renders_as_svg_rect ... ok [INFO] [stdout] test utils::svg::tests::polygon_renders_as_svg_polygon ... ok [INFO] [stdout] test utils::svg::tests::node_renders_as_svg_circle ... ok [INFO] [stdout] test utils::svg::tests::path_renders_as_svg_polyline ... ok [INFO] [stdout] test utils::svg::tests::reference_is_flattened ... ok [INFO] [stdout] test utils::svg::tests::text_renders_as_svg_text ... ok [INFO] [stdout] test utils::svg::tests::svg_has_y_flip_transform ... ok [INFO] [stdout] test utils::svg::tests::text_xml_escaping ... ok [INFO] [stdout] test property_tests::roundtrip::cell_name_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::box_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::text_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::path_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::node_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::polygon_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::cell_reference_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::multi_cell_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::mixed_elements_roundtrip ... ok [INFO] [stdout] test property_tests::roundtrip::nested_reference_roundtrip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 613 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s [INFO] [stdout] [INFO] [stderr] Doc-tests gdsr [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "3682993e59de4c4a765c6e3919d9746fe909e8af36782be12fff496d3851111b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3682993e59de4c4a765c6e3919d9746fe909e8af36782be12fff496d3851111b", kill_on_drop: false }` [INFO] [stdout] 3682993e59de4c4a765c6e3919d9746fe909e8af36782be12fff496d3851111b