[INFO] cloning repository https://github.com/carthage-software/suffete [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/carthage-software/suffete" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarthage-software%2Fsuffete", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarthage-software%2Fsuffete'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3b0f22dc20bb9ae1b37f48848821caf7900f5424 [INFO] testing carthage-software/suffete against 1.100.0-beta.1 for beta-1.100-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarthage-software%2Fsuffete" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/carthage-software/suffete [INFO] finished tweaking git repo https://github.com/carthage-software/suffete [INFO] tweaked toml for git repo https://github.com/carthage-software/suffete written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/carthage-software/suffete on toolchain 1.100.0-beta.1 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/carthage-software/suffete already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:162:12 [INFO] [stderr] | [INFO] [stderr] 162 | homepage = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | repository = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ---------------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `suffete` (manifest) generated 1 warning [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466 [INFO] running `Command { std: "docker" "start" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:162:12 [INFO] [stderr] | [INFO] [stderr] 162 | homepage = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | repository = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ---------------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `suffete` (manifest) generated 1 warning [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling libc v0.2.186 [INFO] [stderr] Compiling quote v1.0.45 [INFO] [stderr] Compiling unicode-ident v1.0.24 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling log v0.4.29 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling tracing-core v0.1.36 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling notify-types v2.1.0 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling pin-project-lite v0.2.17 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling inotify v0.11.1 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling foldhash v0.2.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling notify v8.2.0 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Compiling itoa v1.0.18 [INFO] [stderr] Compiling ryu v1.0.23 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling mago-bytes v1.30.0 [INFO] [stderr] Compiling boxcar v0.2.14 [INFO] [stderr] Compiling mago-word v1.30.0 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling ordered-float v5.3.0 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling mago-database v1.30.0 [INFO] [stderr] Compiling mago-span v1.30.0 [INFO] [stderr] Compiling suffete v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 50.11s [INFO] running `Command { std: "docker" "inspect" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:162:12 [INFO] [stderr] | [INFO] [stderr] 162 | homepage = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | repository = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ---------------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `suffete` (manifest) generated 1 warning [INFO] [stderr] Compiling libc v0.2.186 [INFO] [stderr] Compiling bitflags v2.11.1 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling zerocopy v0.8.48 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling zmij v1.0.21 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.9 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling nix v0.31.2 [INFO] [stderr] Compiling cc v1.2.61 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling anyhow v1.0.102 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling notify-types v2.1.0 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling codspeed v4.5.0 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling inotify v0.11.1 [INFO] [stderr] Compiling mio v1.2.0 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling notify v8.2.0 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling statrs v0.18.0 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling globset v0.4.18 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling zerocopy-derive v0.8.48 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling clap v4.6.1 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling codspeed-criterion-compat v4.5.0 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling rand v0.9.4 [INFO] [stderr] Compiling ordered-float v5.3.0 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling mago-database v1.30.0 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling mago-span v1.30.0 [INFO] [stderr] Compiling suffete v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling proptest v1.11.0 [INFO] [stderr] Compiling codspeed-criterion-compat-walltime v4.5.0 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3m 16s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.2 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] warning: `package.homepage` is redundant with `package.repository` [INFO] [stderr] --> Cargo.toml:162:12 [INFO] [stderr] | [INFO] [stderr] 162 | homepage = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | repository = "https://github.com/carthage-software/suffete" [INFO] [stderr] | ---------------------------------------------- [INFO] [stderr] | [INFO] [stderr] = note: `cargo::redundant_homepage` is set to `warn` by default [INFO] [stderr] help: consider removing `package.homepage` [INFO] [stderr] warning: `suffete` (manifest) generated 1 warning [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.76s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.31.2 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/build/suffete/0d2729a115aab3a3/out/suffete-0d2729a115aab3a3) [INFO] [stdout] [INFO] [stdout] running 116 tests [INFO] [stdout] test element::simd::tests::count_of_kind_matches_scalar ... ok [INFO] [stdout] test element::simd::tests::contains_empty ... ok [INFO] [stdout] test element::simd::tests::any_of_kind_matches_scalar ... ok [INFO] [stdout] test element::simd::tests::count_of_kind_long_slice_with_partial_chunks ... ok [INFO] [stdout] test element::simd::tests::all_of_kind_matches_scalar ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_cross_kind_unsigned_order ... ok [INFO] [stdout] test element::simd::tests::contains_matches_scalar ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_failure_in_tail ... ok [INFO] [stdout] test element::simd::tests::contains_short_slice_falls_through_scalar ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_seam_inside_chunk ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_duplicate_in_chunk ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_descending_in_chunk ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_long_strict_increasing ... ok [INFO] [stdout] test element::simd::tests::position_of_first_match_among_duplicates ... ok [INFO] [stdout] test element::simd::tests::position_of_matches_scalar ... ok [INFO] [stdout] test element::simd::tests::position_of_second_chunk_hit ... ok [INFO] [stdout] test interner::arena::tests::arena_dedups_values ... ok [INFO] [stdout] test element::simd::tests::position_of_tail_only_hit ... ok [INFO] [stdout] test element::simd::tests::position_of_first_chunk_hit ... ok [INFO] [stdout] test interner::arena::tests::arena_slots_are_one_based_and_get_roundtrips ... ok [INFO] [stdout] test interner::arena::tests::slice_arena_dedups_by_content ... ok [INFO] [stdout] test element::simd::tests::is_sorted_strict_short_slices ... ok [INFO] [stdout] test element::simd::tests::position_of_short_slice_falls_through_scalar ... ok [INFO] [stdout] test element::simd::tests::position_of_empty ... ok [INFO] [stdout] test interner::boot::tests::array_key_mixed_uses_well_known_type_ids ... ok [INFO] [stdout] test interner::boot::tests::empty_array_resolves_to_sealed_no_known_items ... ok [INFO] [stdout] test interner::boot::tests::iterable_mixed_mixed_uses_well_known_type_ids ... ok [INFO] [stdout] test interner::boot::tests::type_int_resolves_to_singleton_int_union ... ok [INFO] [stdout] test interner::boot::tests::well_known_int_payloads_resolve_correctly ... ok [INFO] [stdout] test interner::boot::tests::type_null_or_string_elements_are_in_canonical_order ... ok [INFO] [stdout] test interner::arena::tests::slice_arena_returns_static_slices_with_correct_contents ... ok [INFO] [stdout] test interner::boot::tests::well_known_class_like_string_payloads_resolve_correctly ... ok [INFO] [stdout] test interner::boot::tests::type_minus_one_zero_one_elements_are_sorted_by_int_slot ... ok [INFO] [stdout] test interner::boot::tests::well_known_resource_payloads_resolve_correctly ... ok [INFO] [stdout] test interner::store::tests::get_int_resolves_to_the_interned_value ... ok [INFO] [stdout] test interner::store::tests::intern_type_does_not_canonicalize_bool ... ok [INFO] [stdout] test interner::store::tests::intern_type_empty_input_collapses_to_never ... ok [INFO] [stdout] test interner::store::tests::intern_type_distinguishes_flow_flags ... ok [INFO] [stdout] test interner::store::tests::global_interner_returns_the_same_instance ... ok [INFO] [stdout] test interner::store::tests::intern_type_sorts_and_dedupes_elements ... ok [INFO] [stdout] test interner::store::tests::intern_int_dedupes_and_packs_kind ... ok [INFO] [stdout] test interner::store::tests::type_id_as_ref_round_trips_through_global_interner ... ok [INFO] [stdout] test join::tests::bool_absorbs_true_and_false ... ok [INFO] [stdout] test join::tests::intern_type_does_not_canonicalize ... ok [INFO] [stdout] test interner::store::tests::side_table_intern_returns_typed_handle ... ok [INFO] [stdout] test interner::store::tests::slice_arena_intern_dedupes_by_content ... ok [INFO] [stdout] test join::tests::empty_yields_never ... ok [INFO] [stdout] test interner::store::tests::slot_spaces_are_independent_across_kinds ... ok [INFO] [stdout] test join::tests::never_alone_is_preserved ... ok [INFO] [stdout] test join::tests::never_is_dropped_when_other_elements_exist ... ok [INFO] [stdout] test join::tests::resource_absorbs_open_and_closed ... ok [INFO] [stdout] test join::tests::sorts_and_dedupes ... ok [INFO] [stdout] test join::tests::null_and_array_key_kept_separate ... ok [INFO] [stdout] test join::tests::type_id_union_does_not_apply_join_rules ... ok [INFO] [stdout] test join::tests::unrelated_elements_are_preserved ... ok [INFO] [stdout] test join::tests::vanilla_mixed_absorbs_everything_else ... ok [INFO] [stdout] test join::tests::void_alone_is_preserved ... ok [INFO] [stdout] test join::tests::void_and_never_together_keeps_void ... ok [INFO] [stdout] test join::tests::void_becomes_null_when_other_elements_exist ... ok [INFO] [stdout] test lattice::refines::tests::array_key_does_not_absorb_float_or_bool ... ok [INFO] [stdout] test join::tests::join_compute_then_union_collapses_to_well_known_handles ... ok [INFO] [stdout] test lattice::refines::tests::array_key_absorbs_int_string_class_string ... ok [INFO] [stdout] test lattice::refines::tests::callable_string_does_not_refine_numeric_or_lowercase_by_default ... ok [INFO] [stdout] test join::tests::open_or_closed_resource_merges_to_resource ... ok [INFO] [stdout] test join::tests::true_or_false_merges_to_bool ... ok [INFO] [stdout] test lattice::refines::tests::distinct_class_like_kinds_are_not_subtypes ... ok [INFO] [stdout] test interner::store::tests::intern_type_preserves_unrelated_unions ... ok [INFO] [stdout] test lattice::refines::tests::bool_family_refines_bool ... ok [INFO] [stdout] test lattice::refines::tests::bot_axiom_never_refines_anything ... ok [INFO] [stdout] test lattice::refines::tests::fresh_int_literal_refines_int ... ok [INFO] [stdout] test lattice::refines::tests::int_does_not_refine_float ... ok [INFO] [stdout] test lattice::refines::tests::float_dominator_absorbs_subforms ... ok [INFO] [stdout] test lattice::refines::tests::int_dominator_absorbs_subforms ... ok [INFO] [stdout] test lattice::refines::tests::float_unspec_literal_accepts_concrete_literals ... ok [INFO] [stdout] test lattice::refines::tests::int_literal_in_range ... ok [INFO] [stdout] test lattice::refines::tests::int_open_range_subsumes_closed ... ok [INFO] [stdout] test lattice::refines::tests::int_or_float_refines_numeric ... ok [INFO] [stdout] test lattice::refines::tests::int_or_string_or_float_or_bool_refines_scalar ... ok [INFO] [stdout] test lattice::refines::tests::generalizes_is_inverse_of_refines ... ok [INFO] [stdout] test lattice::refines::tests::int_unspec_literal_accepts_concrete_literals ... ok [INFO] [stdout] test lattice::refines::tests::input_int_or_float_fits_int_or_float_via_union_dispatch ... ok [INFO] [stdout] test lattice::refines::tests::nullable_int_refines_nullable_array_key ... ok [INFO] [stdout] test lattice::refines::tests::int_or_string_refines_array_key ... ok [INFO] [stdout] test lattice::refines::tests::reflexivity_holds_for_well_known_types ... ok [INFO] [stdout] test lattice::refines::tests::numeric_absorbs_int_float_and_numeric_string ... ok [INFO] [stdout] test lattice::refines::tests::int_range_in_range ... ok [INFO] [stdout] test lattice::refines::tests::numeric_does_not_absorb_general_string ... ok [INFO] [stdout] test lattice::refines::tests::scalar_absorbs_all_scalar_families ... ok [INFO] [stdout] test lattice::refines::tests::scalar_does_not_absorb_null_or_resource ... ok [INFO] [stdout] test lattice::refines::tests::string_literal_satisfies_casing ... ok [INFO] [stdout] test lattice::refines::tests::string_literal_satisfies_numeric ... ok [INFO] [stdout] test lattice::refines::tests::string_literal_satisfies_non_empty ... ok [INFO] [stdout] test lattice::refines::tests::truthy_string_refines_non_empty_string ... ok [INFO] [stdout] test lattice::refines::tests::type_bool_refines_scalar ... ok [INFO] [stdout] test lattice::refines::tests::resource_family_refines_resource ... ok [INFO] [stdout] test lattice::refines::tests::string_dominator_absorbs_subforms ... ok [INFO] [stdout] test lattice::refines::tests::union_right_singleton_input_fits_member_of_union ... ok [INFO] [stdout] test lattice::refines::tests::unrelated_types_do_not_refine ... ok [INFO] [stdout] test template::substitute::tests::capture_freeness_qualifier_matters ... ok [INFO] [stdout] test template::substitute::tests::distributes_over_union ... ok [INFO] [stdout] test lattice::refines::tests::string_literal_satisfies_truthy ... ok [INFO] [stdout] test template::substitute::tests::no_template_no_change ... ok [INFO] [stdout] test lattice::refines::tests::top_axiom_anything_refines_vanilla_mixed ... ok [INFO] [stdout] test template::substitute::tests::replacement_with_union_flat_merges_into_parent ... ok [INFO] [stdout] test template::substitute::tests::miss_leaves_template_in_place ... ok [INFO] [stdout] test template::substitute::tests::nested_object_substitution ... ok [INFO] [stdout] test template::substitute::tests::substitutes_inside_keyed_array_value ... ok [INFO] [stdout] test template::substitute::tests::substitutes_inside_object_type_args ... ok [INFO] [stdout] test template::substitute::tests::substitutes_inside_list_element_type ... ok [INFO] [stdout] test template::substitute::tests::substitutes_top_level_template ... ok [INFO] [stdout] test template::substitute::tests::substitutes_inside_iterable_key_and_value ... ok [INFO] [stdout] test template::substitute::tests::unchanged_returns_same_handle ... ok [INFO] [stdout] test interner::arena::tests::slice_arena_distinguishes_empty_from_singleton ... ok [INFO] [stdout] test lattice::refines::tests::class_like_string_refines_string ... ok [INFO] [stdout] test lattice::refines::tests::union_left_every_input_element_must_fit_some_container_element ... ok [INFO] [stdout] test interner::arena::tests::arena_handles_concurrent_inserts_without_duplicates ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 116 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/algorithmic_gaps.rs (/opt/rustwide/target/debug/build/suffete/02f9596ecf612c99/out/algorithmic_gaps-02f9596ecf612c99) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test gap_refines_string_covered_by_lowercase_and_non_lowercase ... ok [INFO] [stdout] test gap_subtract_scalar_minus_int_splits_to_other_scalars ... ok [INFO] [stdout] test gap_subtract_numeric_minus_int_yields_float_or_numeric_string ... ok [INFO] [stdout] test gap_arity_zero_class_with_explicit_args_reduces_to_bare ... ok [INFO] [stdout] test gap_compose_descendant_invariant_mismatch_collapses_to_never ... ok [INFO] [stdout] test gap_subtract_string_minus_string_literal_preserves_narrowing ... ok [INFO] [stdout] test gap_meet_iterable_with_array_yields_array ... ok [INFO] [stdout] test gap_subtract_array_key_minus_int_yields_string ... ok [INFO] [stdout] test gap_subtract_b_minus_descendant_a_excludes_a_instances ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/builder_basic.rs (/opt/rustwide/target/debug/build/suffete/26ea267addc85ef6/out/builder_basic-26ea267addc85ef6) [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test elements_returns_buffer_view_in_mutation_order ... ok [INFO] [stdout] test empty_builder_after_remove_all_collapses_to_never ... ok [INFO] [stdout] test contains_reports_buffer_membership ... ok [INFO] [stdout] test default_matches_new ... ok [INFO] [stdout] test extend_appends_many_elements ... ok [INFO] [stdout] test build_canonicalises_string_decomposition_to_string ... ok [INFO] [stdout] test flat_map_collapsing_all_to_empty_yields_never ... ok [INFO] [stdout] test build_canonicalises_full_int_decomposition_to_int ... ok [INFO] [stdout] test flat_map_one_to_zero_drops_element ... ok [INFO] [stdout] test flat_map_one_to_many_explodes ... ok [INFO] [stdout] test modify_flags_lets_caller_mutate_flag_set ... ok [INFO] [stdout] test push_order_does_not_affect_build_result ... ok [INFO] [stdout] test map_replaces_in_place ... ok [INFO] [stdout] test mutated_then_reverted_buffer_still_rebuilds_via_no_diff_check ... ok [INFO] [stdout] test remove_absent_is_noop_and_preserves_short_circuit ... ok [INFO] [stdout] test new_is_empty_with_empty_flags ... ok [INFO] [stdout] test push_then_build_canonicalises_to_union ... ok [INFO] [stdout] test remove_all_drops_every_occurrence ... ok [INFO] [stdout] test replace_absent_is_noop_and_preserves_short_circuit ... ok [INFO] [stdout] test set_flags_replaces_flag_set ... ok [INFO] [stdout] test unmodified_from_type_short_circuits_to_origin_handle ... ok [INFO] [stdout] test from_via_into_round_trips ... ok [INFO] [stdout] test remove_drops_first_match ... ok [INFO] [stdout] test retain_keeps_matching_predicate ... ok [INFO] [stdout] test replace_swaps_first_match ... ok [INFO] [stdout] test chain_of_mutations_yields_canonical_union ... ok [INFO] [stdout] test from_type_round_trips_unchanged_via_short_circuit ... ok [INFO] [stdout] test len_reports_pre_canonicalisation_count ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.26s [INFO] [stdout] [INFO] [stderr] Running tests/cast_basic.rs (/opt/rustwide/target/debug/build/suffete/6f209c4fb92ffb7e/out/cast_basic-6f209c4fb92ffb7e) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test cast_int_literal_to_int_is_lossless_and_preserves ... ok [INFO] [stdout] test cast_int_literal_to_string_preserves ... ok [INFO] [stdout] test cast_array_to_string_may_throw ... ok [INFO] [stdout] test cast_falsy_literals_to_bool_collapse_to_false ... ok [INFO] [stdout] test cast_general_int_to_bool_widens_to_bool ... ok [INFO] [stdout] test cast_false_to_string_is_empty_literal ... ok [INFO] [stdout] test cast_float_to_int_is_lossy ... ok [INFO] [stdout] test cast_null_to_array_is_empty_array ... ok [INFO] [stdout] test cast_int_to_array_is_lossy ... ok [INFO] [stdout] test cast_null_to_int_is_zero ... ok [INFO] [stdout] test cast_numeric_string_literal_to_int_preserves ... ok [INFO] [stdout] test cast_true_to_int_is_one ... ok [INFO] [stdout] test cast_object_to_bool_is_always_true ... ok [INFO] [stdout] test cast_int_to_float_is_lossless ... ok [INFO] [stdout] test cast_object_to_int_may_throw ... ok [INFO] [stdout] test cast_object_to_object_is_lossless_passthrough ... ok [INFO] [stdout] test cast_int_to_object_is_lossy_stdclass ... ok [INFO] [stdout] test cast_distributes_over_union_with_worst_classification ... ok [INFO] [stdout] test cast_non_numeric_string_to_int_is_lossy_zero ... ok [INFO] [stdout] test cast_true_to_string_is_one_literal ... ok [INFO] [stdout] test cast_truthy_literals_to_bool_collapse_to_true ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_arrays.rs (/opt/rustwide/target/debug/build/suffete/b122a696b86bad65/out/combiner_arrays-b122a696b86bad65) [INFO] [stdout] [INFO] [stdout] running 35 tests [INFO] [stdout] test custom_low_array_threshold_generalises_quickly ... ok [INFO] [stdout] test empty_array_or_list_kept_separate ... ok [INFO] [stdout] test empty_array_or_non_empty_list_kept_separate ... ok [INFO] [stdout] test keyed_sealed_different_keys_kept_separate ... ok [INFO] [stdout] test keyed_or_string_kept_separate ... ok [INFO] [stdout] test keyed_sealed_overlapping_keys_combine_values ... ok [INFO] [stdout] test keyed_sealed_same_collapses ... ok [INFO] [stdout] test empty_array_overwritten_by_keyed ... ok [INFO] [stdout] test keyed_with_different_key_types_combine ... ok [INFO] [stdout] test list_and_keyed_kept_separate ... ok [INFO] [stdout] test list_int_idempotent ... ok [INFO] [stdout] test list_or_int_kept_separate ... ok [INFO] [stdout] test keyed_unsealed_idempotent ... ok [INFO] [stdout] test keyed_with_different_value_types_combine ... ok [INFO] [stdout] test list_string_idempotent ... ok [INFO] [stdout] test list_then_empty_yields_just_list ... ok [INFO] [stdout] test list_with_different_element_types_combine ... ok [INFO] [stdout] test empty_array_overwritten_by_list ... ok [INFO] [stdout] test list_with_known_elements_idempotent ... ok [INFO] [stdout] test many_lists_with_various_elements_combine_into_one ... ok [INFO] [stdout] test many_distinct_sealed_lists_generalise ... ok [INFO] [stdout] test list_with_subset_element_collapses ... ok [INFO] [stdout] test many_unsealed_lists_collapse ... ok [INFO] [stdout] test non_empty_list_or_general_list_yields_general ... ok [INFO] [stdout] test many_unsealed_keyed_collapse ... ok [INFO] [stdout] test sealed_list_meets_unsealed_list_collapses ... ok [INFO] [stdout] test two_non_empty_lists_stay_non_empty ... ok [INFO] [stdout] test single_sealed_list_passthrough ... ok [INFO] [stdout] test under_array_threshold_keeps_sealed_lists ... ok [INFO] [stderr] Running tests/combiner_atomic_pairs_explicit.rs (/opt/rustwide/target/debug/build/suffete/eee48daa45459ce9/out/combiner_atomic_pairs_explicit-eee48daa45459ce9) [INFO] [stdout] test empty_or_int_kept_separate ... ok [INFO] [stdout] test empty_array_singleton_passthrough ... ok [INFO] [stdout] test mixed_dominates_array ... ok [INFO] [stdout] test empty_alone_with_overwrite_kept ... ok [INFO] [stdout] test empty_array_idempotent ... ok [INFO] [stdout] test many_empty_arrays_collapse ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 173 tests [INFO] [stdout] test p_ak_bool ... ok [INFO] [stdout] test p_arr_empty ... ok [INFO] [stdout] test p_ak_int ... ok [INFO] [stdout] test p_ak_float ... ok [INFO] [stdout] test p_ak_scalar ... ok [INFO] [stdout] test p_arr_empty_empty ... ok [INFO] [stdout] test p_ak_null ... ok [INFO] [stdout] test p_ak_string ... ok [INFO] [stdout] test p_arr_list_with_empty ... ok [INFO] [stdout] test p_arr_ne_with_e ... ok [INFO] [stdout] test p_arr_ne_list_int ... ok [INFO] [stdout] test p_arr_list_int ... ok [INFO] [stdout] test p_bool_false ... ok [INFO] [stdout] test p_closed_closed ... ok [INFO] [stdout] test p_bool_true ... ok [INFO] [stdout] test p_closed_open ... ok [INFO] [stdout] test p_closed_res ... ok [INFO] [stdout] test p_cs_cs ... ok [INFO] [stdout] test p_cs_es ... ok [INFO] [stdout] test p_arr_empty_with_list ... ok [INFO] [stdout] test p_cs_int ... ok [INFO] [stdout] test p_arr_list_int_x2 ... ok [INFO] [stdout] test p_arr_ne_list_x2 ... ok [INFO] [stdout] test p_cs_is ... ok [INFO] [stdout] test p_arr_list_int_string ... ok [INFO] [stdout] test p_cs_null ... ok [INFO] [stdout] test p_cs_scalar ... ok [INFO] [stdout] test p_cs_string ... ok [INFO] [stdout] test p_e_e ... ok [INFO] [stdout] test p_e_ea ... ok [INFO] [stdout] test p_ea_ea ... ok [INFO] [stdout] test p_es_es ... ok [INFO] [stdout] test p_bool_bool ... ok [INFO] [stdout] test p_ea_eb ... ok [INFO] [stdout] test p_cs_never ... ok [INFO] [stdout] test p_bool_scalar ... ok [INFO] [stdout] test p_false_bool ... ok [INFO] [stdout] test p_false_false ... ok [INFO] [stdout] test p_false_scalar ... ok [INFO] [stdout] test p_false_true ... ok [INFO] [stdout] test p_float_lit ... ok [INFO] [stdout] test p_float_numeric ... ok [INFO] [stdout] test p_float_scalar ... ok [INFO] [stdout] test p_foo_bar ... ok [INFO] [stdout] test p_float_bool ... ok [INFO] [stdout] test p_float_float ... ok [INFO] [stdout] test p_foo_foo ... ok [INFO] [stdout] test p_from_lit_extends ... ok [INFO] [stdout] test p_foo_obj ... ok [INFO] [stdout] test p_from_to_adjacent ... ok [INFO] [stdout] test p_int_bool ... ok [INFO] [stdout] test p_int_lit_0 ... ok [INFO] [stdout] test p_int_lit_1 ... ok [INFO] [stdout] test p_int_lit_neg ... ok [INFO] [stdout] test p_int_mixed ... ok [INFO] [stdout] test p_int_ak ... ok [INFO] [stdout] test p_int_negative ... ok [INFO] [stdout] test p_from_to_overlap ... ok [INFO] [stdout] test p_int_float ... ok [INFO] [stdout] test p_int_int ... ok [INFO] [stdout] test p_int_numeric ... ok [INFO] [stdout] test p_int_scalar ... ok [INFO] [stdout] test p_int_string ... ok [INFO] [stdout] test p_is_is ... ok [INFO] [stdout] test p_lit_0_int ... ok [INFO] [stdout] test p_lit_0_lit_0 ... ok [INFO] [stdout] test p_lit_0_lit_1 ... ok [INFO] [stdout] test p_int_range ... ok [INFO] [stdout] test p_lit_a_lit_b ... ok [INFO] [stdout] test p_int_non_neg ... ok [INFO] [stdout] test p_int_non_pos ... ok [INFO] [stdout] test p_lit_a_lit_a ... ok [INFO] [stdout] test p_lit_empty_non_empty ... ok [INFO] [stdout] test p_int_positive ... ok [INFO] [stdout] test p_lit_float ... ok [INFO] [stdout] test p_lit_int_numeric ... ok [INFO] [stdout] test p_cs_ak ... ok [INFO] [stdout] test p_e_f ... ok [INFO] [stdout] test p_from_to_disjoint ... ok [INFO] [stdout] test p_lit_neg_lit_pos ... ok [INFO] [stdout] test p_lit_string_string ... ok [INFO] [stdout] test p_lower_upper ... ok [INFO] [stdout] test p_lit_uppercase_kept ... ok [INFO] [stdout] test p_mixed_array ... ok [INFO] [stdout] test p_lower_lit_hi_lower ... ok [INFO] [stdout] test p_mixed_mixed ... ok [INFO] [stdout] test p_mixed_null ... ok [INFO] [stdout] test p_mixed_object ... ok [INFO] [stdout] test p_mixed_resource ... ok [INFO] [stdout] test p_mixed_string ... ok [INFO] [stdout] test p_neg_lit_0 ... ok [INFO] [stdout] test p_never_int ... ok [INFO] [stdout] test p_never_never ... ok [INFO] [stdout] test p_never_null ... ok [INFO] [stdout] test p_never_resource ... ok [INFO] [stdout] test p_never_object ... ok [INFO] [stdout] test p_never_void ... ok [INFO] [stdout] test p_non_empty_lit_0 ... ok [INFO] [stdout] test p_non_empty_lit_hi ... ok [INFO] [stdout] test p_non_empty_lower ... ok [INFO] [stdout] test p_non_empty_string ... ok [INFO] [stdout] test p_lit_lit_float ... ok [INFO] [stdout] test p_lit_lit_float_distinct ... ok [INFO] [stdout] test p_lower_lit_hi_upper ... ok [INFO] [stdout] test p_non_neg_non_pos ... ok [INFO] [stdout] test p_mixed_int ... ok [INFO] [stdout] test p_mixed_never ... ok [INFO] [stdout] test p_mixed_void ... ok [INFO] [stdout] test p_non_empty_lit_empty ... ok [INFO] [stdout] test p_null_resource ... ok [INFO] [stdout] test p_null_object ... ok [INFO] [stdout] test p_non_empty_truthy ... ok [INFO] [stdout] test p_null_int ... ok [INFO] [stdout] test p_null_never ... ok [INFO] [stdout] test p_numeric_lit_123 ... ok [INFO] [stdout] test p_numeric_lit_abc ... ok [INFO] [stdout] test p_numeric_lit_int ... ok [INFO] [stdout] test p_numeric_scalar ... ok [INFO] [stdout] test p_numeric_string ... ok [INFO] [stdout] test p_null_null ... ok [INFO] [stdout] test p_obj_obj ... ok [INFO] [stdout] test p_open_open ... ok [INFO] [stdout] test p_numeric_float ... ok [INFO] [stdout] test p_numeric_int ... ok [INFO] [stdout] test p_null_void ... ok [INFO] [stdout] test p_obj_foo ... ok [INFO] [stdout] test p_open_closed ... ok [INFO] [stdout] test p_range_adjacent ... ok [INFO] [stdout] test p_range_overlap ... ok [INFO] [stdout] test p_res_open ... ok [INFO] [stdout] test p_res_res ... ok [INFO] [stdout] test p_scalar_ak ... ok [INFO] [stdout] test p_scalar_bool ... ok [INFO] [stdout] test p_open_res ... ok [INFO] [stdout] test p_pos_lit_neg_1 ... ok [INFO] [stdout] test p_pos_lit_0 ... ok [INFO] [stdout] test p_range_disjoint ... ok [INFO] [stdout] test p_positive_negative ... ok [INFO] [stdout] test p_res_closed ... ok [INFO] [stdout] test p_scalar_int ... ok [INFO] [stdout] test p_scalar_numeric ... ok [INFO] [stdout] test p_scalar_string ... ok [INFO] [stdout] test p_string_bool ... ok [INFO] [stdout] test p_string_cs ... ok [INFO] [stdout] test p_string_lit_empty ... ok [INFO] [stdout] test p_string_lit_hi ... ok [INFO] [stdout] test p_scalar_true ... ok [INFO] [stdout] test p_scalar_false ... ok [INFO] [stdout] test p_string_ak ... ok [INFO] [stdout] test p_scalar_float ... ok [INFO] [stdout] test p_string_float ... ok [INFO] [stdout] test p_string_string ... ok [INFO] [stdout] test p_string_scalar ... ok [INFO] [stdout] test p_string_lit_0 ... ok [INFO] [stdout] test p_string_non_empty ... ok [INFO] [stdout] test p_truthy_lit_hi_lower ... ok [INFO] [stdout] test p_true_false ... ok [INFO] [stdout] test p_to_lit_extends ... ok [INFO] [stdout] test p_true_scalar ... ok [INFO] [stdout] test p_true_true ... ok [INFO] [stdout] test p_true_bool ... ok [INFO] [stdout] test p_ts_ts ... ok [INFO] [stdout] test p_void_int ... ok [INFO] [stdout] test p_upper_lit_hi_lower ... ok [INFO] [stdout] test p_void_resource ... ok [INFO] [stdout] test p_void_void ... ok [INFO] [stdout] test p_truthy_non_empty ... ok [INFO] [stdout] test p_void_never ... ok [INFO] [stderr] Running tests/combiner_combinatorial.rs (/opt/rustwide/target/debug/build/suffete/8ab31b0ab89a90a1/out/combiner_combinatorial-8ab31b0ab89a90a1) [INFO] [stdout] test p_truthy_lit_0 ... ok [INFO] [stdout] test p_truthy_lit_empty ... ok [INFO] [stdout] test p_upper_lit_hi_upper ... ok [INFO] [stdout] test p_void_null ... ok [INFO] [stdout] test p_void_object ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 173 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test generic_with_int_and_string_param_keeps_one_container ... ok [INFO] [stdout] test from_n_with_lit_n_minus_1_extends_for_many_n ... ok [INFO] [stdout] test generic_with_n_distinct_int_params_collapse_to_one_container ... ok [INFO] [stdout] test alternating_int_string_collapses_to_two ... ok [INFO] [stdout] test all_bool_triples_collapse ... ok [INFO] [stdout] test lit_float_self_dedup_many_values ... ok [INFO] [stdout] test adjacent_lit_pairs_merge_to_range ... ok [INFO] [stdout] test alternating_named_collapses ... ok [INFO] [stdout] test many_distinct_enum_cases_kept_apart ... ok [INFO] [stdout] test many_distinct_enums_kept_apart ... ok [INFO] [stdout] test many_copies_of_simple_atoms_collapse ... ok [INFO] [stdout] test lit_string_self_dedup_many_values ... ok [INFO] [stdout] test float_absorbs_many_literals ... ok [INFO] [stdout] test mixed_dominates_every_simple_atom ... ok [INFO] [stdout] test many_named_with_lits ... ok [INFO] [stdout] test lit_int_self_dedup_for_many_values ... ok [INFO] [stdout] test distinct_lit_string_pairs_kept_apart ... ok [INFO] [stdout] test n_copies_plus_adjacent_int_merges_to_range ... ok [INFO] [stdout] test same_named_with_many_copies_collapses ... ok [INFO] [stdout] test many_distinct_named_objects_kept_apart ... ok [INFO] [stdout] test object_any_absorbs_many_named ... ok [INFO] [stdout] test non_adjacent_lit_pairs_kept_apart ... ok [INFO] [stdout] test never_absorbed_by_every_non_void_atom ... ok [INFO] [stdout] test ranges_with_overlaps_collapse ... ok [INFO] [stdout] test unspec_int_absorbs_lit_unspec_lit ... ok [INFO] [stdout] test to_n_with_lit_n_plus_1_extends_for_many_n ... ok [INFO] [stdout] test int_absorbs_every_literal_in_minus_500_to_500 ... ok [INFO] [stdout] test string_absorbs_many_literals ... ok [INFO] [stderr] Running tests/combiner_floats.rs (/opt/rustwide/target/debug/build/suffete/d57cd1c7ce1f6dda/out/combiner_floats-d57cd1c7ce1f6dda) [INFO] [stdout] test three_way_stable_primitives_consistent ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test float_absorbs_unspec_literal_either_order ... ok [INFO] [stdout] test idempotent_general_float ... ok [INFO] [stdout] test float_int_kept_separate ... ok [INFO] [stdout] test float_absorbs_literal_either_order ... ok [INFO] [stdout] test idempotent_specific_literal ... ok [INFO] [stdout] test float_absorbs_many_literals ... ok [INFO] [stdout] test duplicate_literal_floats_collapse ... ok [INFO] [stdout] test custom_low_threshold_generalises_quickly ... ok [INFO] [stdout] test idempotent_unspec_literal ... ok [INFO] [stdout] test lit_float_lit_int_kept_separate ... ok [INFO] [stdout] test n_distinct_literals_kept ... ok [INFO] [stdout] test two_distinct_literals_kept ... ok [INFO] [stdout] test negative_zero_collapses_with_zero ... ok [INFO] [stdout] test under_threshold_keeps_literals ... ok [INFO] [stdout] test many_distinct_literals_exceed_threshold_generalise ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_integers.rs (/opt/rustwide/target/debug/build/suffete/548397e243c0ab09/out/combiner_integers-548397e243c0ab09) [INFO] [stdout] [INFO] [stdout] running 72 tests [INFO] [stdout] test from_and_to_adjacent_become_unspecified ... ok [INFO] [stdout] test duplicates_in_mixed_literals_dedup_then_merge ... ok [INFO] [stdout] test disjoint_ranges_kept_apart ... ok [INFO] [stdout] test custom_low_threshold_generalises_quickly ... ok [INFO] [stdout] test from_absorbs_literal_above ... ok [INFO] [stdout] test equal_ranges_collapse ... ok [INFO] [stdout] test from_and_to_with_overlap_become_unspecified ... ok [INFO] [stdout] test from_keeps_literal_far_below ... ok [INFO] [stdout] test from_lo_overrides_higher_from ... ok [INFO] [stdout] test adjacent_ranges_merge ... ok [INFO] [stdout] test from_with_literal_one_below_extends ... ok [INFO] [stdout] test from_and_to_disjoint_kept_apart ... ok [INFO] [stdout] test consecutive_literals_merge_to_range ... ok [INFO] [stdout] test idempotent_literal ... ok [INFO] [stdout] test idempotent_named_ranges ... ok [INFO] [stdout] test idempotent_range ... ok [INFO] [stdout] test idempotent_to ... ok [INFO] [stdout] test idempotent_unspec ... ok [INFO] [stdout] test literal_min_max ... ok [INFO] [stdout] test integer_combine_order_independent ... ok [INFO] [stdout] test literal_extends_lower_with_adjacent_range ... ok [INFO] [stdout] test literal_far_from_from_kept_apart ... ok [INFO] [stdout] test literal_n_minus_1_with_to_n_merges_to_to_n ... ok [INFO] [stdout] test literals_with_duplicates_collapse ... ok [INFO] [stdout] test literal_4_with_from_5_merges_to_from_4 ... ok [INFO] [stdout] test many_disjoint_ranges_kept_apart ... ok [INFO] [stdout] test n_consecutive_literals_merge_to_range ... ok [INFO] [stdout] test n_non_adjacent_literals_kept ... ok [INFO] [stdout] test idempotent_unspec_literal ... ok [INFO] [stdout] test many_ranges_consecutive_merge ... ok [INFO] [stdout] test many_distinct_literals_exceed_threshold_generalise ... ok [INFO] [stdout] test negative_int_or_range_extends ... ok [INFO] [stdout] test nested_ranges_merge_to_outer ... ok [INFO] [stdout] test negative_int_is_to_minus_1 ... ok [INFO] [stdout] test many_disjoint_literals_kept_apart ... ok [INFO] [stdout] test many_ranges_merge_chain ... ok [INFO] [stdout] test non_negative_int_is_from_0 ... ok [INFO] [stdout] test negative_or_zero_collapses_to_non_positive ... ok [INFO] [stdout] test non_negative_or_non_positive_become_unspecified ... ok [INFO] [stdout] test positive_int_or_range_extends ... ok [INFO] [stdout] test positive_absorbs_positive_literal ... ok [INFO] [stdout] test non_positive_int_is_to_0 ... ok [INFO] [stdout] test positive_extends_with_zero_to_non_negative ... ok [INFO] [stdout] test positive_or_zero_collapses_to_non_negative ... ok [INFO] [stdout] test positive_or_negative_kept_apart ... ok [INFO] [stdout] test overlapping_ranges_merge ... ok [INFO] [stdout] test range_extends_with_adjacent_literal ... ok [INFO] [stdout] test range_absorbs_literal_inside ... ok [INFO] [stdout] test range_at_minmax_boundaries ... ok [INFO] [stdout] test positive_int_is_from_1 ... ok [INFO] [stdout] test singleton_range_normalises_to_literal ... ok [INFO] [stdout] test small_subranges_merge_into_named_range ... ok [INFO] [stdout] test to_absorbs_literal_below ... ok [INFO] [stdout] test to_hi_overrides_lower_to ... ok [INFO] [stdout] test to_keeps_literal_far_above ... ok [INFO] [stdout] test to_with_literal_one_above_extends ... ok [INFO] [stdout] test range_keeps_literal_outside ... ok [INFO] [stdout] test repeated_same_literal_collapses_to_single_literal ... ok [INFO] [stdout] test small_range_and_literal_extend ... ok [INFO] [stdout] test unspecified_absorbs_literals ... ok [INFO] [stdout] test two_adjacent_literals_merge_to_range ... ok [INFO] [stdout] test unspecified_absorbs_from ... ok [INFO] [stdout] test non_adjacent_literals_kept_under_threshold ... ok [INFO] [stdout] test unspecified_absorbs_ranges ... ok [INFO] [stdout] test unspecified_absorbs_to ... ok [INFO] [stdout] test unspecified_literal_keeps_with_actual_literal ... ok [INFO] [stdout] test two_distinct_non_adjacent_literals_kept ... ok [INFO] [stdout] test unspecified_literal_with_range_keeps_both ... ok [INFO] [stdout] test unspecified_literal_with_unspecified_collapses_to_unspecified ... ok [INFO] [stdout] test unspecified_absorbs_named ... ok [INFO] [stdout] test unspecified_absorbs_unspecified_literal ... ok [INFO] [stdout] test idempotent_from ... ok [INFO] [stderr] Running tests/combiner_megatable.rs (/opt/rustwide/target/debug/build/suffete/236adb536fd0beb9/out/combiner_megatable-236adb536fd0beb9) [INFO] [stdout] [INFO] [stdout] test result: ok. 72 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test array_megatable_shapes ... ok [INFO] [stdout] test integer_megatable_subtype ... ok [INFO] [stdout] test object_megatable_generic ... ok [INFO] [stdout] test scalar_synthesis_megatable ... ok [INFO] [stdout] test boolean_megatable ... ok [INFO] [stdout] test integer_megatable_singletons ... ok [INFO] [stdout] test integer_megatable_dominator ... ok [INFO] [stdout] test cross_family_megatable ... ok [INFO] [stdout] test string_megatable_dominator ... ok [INFO] [stdout] test array_megatable_empty ... ok [INFO] [stdout] test object_megatable ... ok [INFO] [stdout] test string_megatable_singletons ... ok [INFO] [stdout] test string_megatable_subtype ... ok [INFO] [stdout] test float_megatable ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_mixed.rs (/opt/rustwide/target/debug/build/suffete/96b7a0a0957722bf/out/combiner_mixed-96b7a0a0957722bf) [INFO] [stdout] [INFO] [stdout] running 34 tests [INFO] [stdout] test never_then_truthy_mixed_yields_truthy ... ok [INFO] [stderr] Running tests/combiner_null_void_never.rs (/opt/rustwide/target/debug/build/suffete/83f360c192b40ad9/out/combiner_null_void_never-83f360c192b40ad9) [INFO] [stdout] test many_nonnull_mixed_collapse ... ok [INFO] [stdout] test falsy_mixed_with_null_preserves_falsy ... ok [INFO] [stdout] test falsy_mixed_then_vanilla_yields_vanilla ... ok [INFO] [stdout] test falsy_mixed_idempotent ... ok [INFO] [stdout] test never_dominated_by_mixed ... ok [INFO] [stdout] test many_falsy_mixed_collapse ... ok [INFO] [stdout] test nontruthy_int_then_truthy_mixed_yields_truthy_mixed ... ok [INFO] [stdout] test truthy_mixed_first_then_null_yields_nonnull ... ok [INFO] [stdout] test nonnull_mixed_idempotent ... ok [INFO] [stdout] test truthy_mixed_idempotent ... ok [INFO] [stdout] test nonnull_mixed_then_vanilla_yields_nonnull ... ok [INFO] [stdout] test nonnull_mixed_with_null_becomes_vanilla ... ok [INFO] [stdout] test null_first_then_truthy_mixed_yields_vanilla ... ok [INFO] [stdout] test many_truthy_mixed_collapse ... ok [INFO] [stdout] test truthy_mixed_then_falsy_string_literal_yields_nonnull ... ok [INFO] [stdout] test truthy_mixed_then_never_yields_nonnull ... ok [INFO] [stdout] test truthy_mixed_then_nontruthy_int_yields_nonnull ... ok [INFO] [stdout] test truthy_mixed_then_vanilla_yields_nonnull ... ok [INFO] [stdout] test truthy_or_nonnull_mixed_collapses_to_nonnull ... ok [INFO] [stdout] test vanilla_dominates_array ... ok [INFO] [stdout] test vanilla_dominates_int ... ok [INFO] [stdout] test vanilla_dominates_many_atoms ... ok [INFO] [stdout] test vanilla_dominates_never ... ok [INFO] [stdout] test vanilla_dominates_null ... ok [INFO] [stdout] test vanilla_dominates_object ... ok [INFO] [stdout] test truthy_mixed_then_truthy_literal_preserves_truthy ... ok [INFO] [stdout] test vanilla_dominates_string ... ok [INFO] [stdout] test truthy_or_falsy_mixed_yields_nonnull ... ok [INFO] [stdout] test vanilla_dominates_void ... ok [INFO] [stdout] test vanilla_mixed_idempotent ... ok [INFO] [stdout] test vanilla_then_falsy_mixed_yields_vanilla ... ok [INFO] [stdout] test vanilla_then_nonnull_mixed_yields_vanilla ... ok [INFO] [stdout] test vanilla_then_truthy_mixed_yields_vanilla ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test never_dropped_with_three_atoms ... ok [INFO] [stdout] test many_nevers_collapse ... ok [INFO] [stdout] test never_dropped_with_object ... ok [INFO] [stdout] test never_dropped_with_string ... ok [INFO] [stdout] test never_with_many_others_disappears ... ok [INFO] [stdout] test never_dropped_with_array ... ok [INFO] [stdout] test never_dropped_with_int ... ok [INFO] [stdout] test never_idempotent ... ok [INFO] [stdout] test null_or_int_kept_separate ... ok [INFO] [stdout] test null_absorbs_never ... ok [INFO] [stdout] test null_idempotent ... ok [INFO] [stdout] test null_or_bool_kept_separate ... ok [INFO] [stdout] test null_or_string_kept_separate ... ok [INFO] [stdout] test void_becomes_null_alongside_bool ... ok [INFO] [stdout] test void_becomes_null_alongside_int ... ok [INFO] [stdout] test void_becomes_null_alongside_resource ... ok [INFO] [stdout] test void_becomes_null_alongside_object ... ok [INFO] [stdout] test void_idempotent ... ok [INFO] [stdout] test void_becomes_null_alongside_string ... ok [INFO] [stdout] test void_becomes_null_with_two_other_types ... ok [INFO] [stdout] test void_or_never_keeps_void ... ok [INFO] [stdout] test void_or_null_yields_null ... ok [INFO] [stdout] test null_or_object_kept_separate ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_objects.rs (/opt/rustwide/target/debug/build/suffete/164ca8dcd93183a2/out/combiner_objects-164ca8dcd93183a2) [INFO] [stdout] [INFO] [stdout] running 25 tests [INFO] [stdout] test different_generic_kept_apart ... ok [INFO] [stdout] test generic_int_or_lit_int_absorbs ... ok [INFO] [stdout] test generic_with_many_distinct_params_combine ... ok [INFO] [stdout] test distinct_enum_cases_same_enum_kept_apart ... ok [INFO] [stdout] test distinct_named_kept_apart ... ok [INFO] [stdout] test many_distinct_named_kept_apart ... ok [INFO] [stdout] test many_objects_with_int_kept_separate ... ok [INFO] [stdout] test distinct_enums_kept_apart ... ok [INFO] [stdout] test enum_idempotent ... ok [INFO] [stdout] test object_any_absorbs_named ... ok [INFO] [stdout] test many_object_any_collapse ... ok [INFO] [stdout] test named_object_idempotent ... ok [INFO] [stdout] test named_or_string_kept_separate ... ok [INFO] [stdout] test object_any_absorbs_many_nameds ... ok [INFO] [stdout] test object_or_int_kept_separate ... ok [INFO] [stdout] test same_enum_case_collapses ... ok [INFO] [stdout] test same_generic_different_params_combine_params ... ok [INFO] [stdout] test enum_case_idempotent ... ok [INFO] [stdout] test enum_or_named_kept_apart ... ok [INFO] [stdout] test enum_case_absorbed_by_enum ... ok [INFO] [stdout] test same_enum_collapses ... ok [INFO] [stdout] test same_generic_same_params_collapses ... ok [INFO] [stdout] test object_any_idempotent ... ok [INFO] [stdout] test object_dominated_by_mixed ... ok [INFO] [stderr] Running tests/combiner_options.rs (/opt/rustwide/target/debug/build/suffete/478101acac013768/out/combiner_options-478101acac013768) [INFO] [stdout] test same_named_collapses ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test merge_int_ranges_off_keeps_separate ... ok [INFO] [stdout] test merge_array_shapes_off_keeps_separate ... ok [INFO] [stdout] test merge_array_shapes_combines_overlapping_keys ... ok [INFO] [stdout] test merge_int_ranges_combines_overlapping_ranges ... ok [INFO] [stdout] test merge_int_ranges_collapses_consecutive_literals ... ok [INFO] [stdout] test merge_int_ranges_with_gap_keeps_separate ... ok [INFO] [stdout] test overwrite_empty_array_drops_when_other_array_present ... ok [INFO] [stdout] test overwrite_empty_array_keeps_when_alone ... ok [INFO] [stdout] test overwrite_empty_array_off_keeps_both ... ok [INFO] [stdout] test rewrite_int_keyed_to_list_converts_contiguous_indices ... ok [INFO] [stdout] test default_options_match_compute ... ok [INFO] [stdout] test string_literal_collapse_fires_above_threshold ... ok [INFO] [stdout] test merge_array_shapes_skips_disjoint_keys ... ok [INFO] [stdout] test rewrite_int_keyed_to_list_skips_string_keys ... ok [INFO] [stdout] test string_literal_collapse_at_or_below_threshold_keeps_literals ... ok [INFO] [stderr] Running tests/combiner_pairs.rs (/opt/rustwide/target/debug/build/suffete/42f49e91ca9859ed/out/combiner_pairs-42f49e91ca9859ed) [INFO] [stdout] test rewrite_int_keyed_to_list_skips_non_contiguous ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test numeric_pairs ... ok [INFO] [stdout] test primitive_pairs_array ... ok [INFO] [stdout] test primitive_pairs_array_key ... ok [INFO] [stdout] test primitive_pairs_mixed ... ok [INFO] [stdout] test primitive_pairs_class_like ... ok [INFO] [stdout] test primitive_pairs_null ... ok [INFO] [stdout] test primitive_pairs_never ... ok [INFO] [stdout] test primitive_pairs_object ... ok [INFO] [stdout] test primitive_pairs_int ... ok [INFO] [stdout] test primitive_pairs_float ... ok [INFO] [stdout] test string_refinement_pairs ... ok [INFO] [stdout] test primitive_pairs_bool ... ok [INFO] [stdout] test primitive_pairs_scalar ... ok [INFO] [stdout] test primitive_pairs_resource ... ok [INFO] [stdout] test primitive_pairs_string ... ok [INFO] [stdout] test primitive_pairs_void ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_property_idempotence.rs (/opt/rustwide/target/debug/build/suffete/6048ef0a650e28bf/out/combiner_property_idempotence-6048ef0a650e28bf) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test never_is_absorbed_by_every_non_void_zoo_atom ... ok [INFO] [stdout] test lit_int_absorbed_by_int_for_many_values ... ok [INFO] [stdout] test order_independence_for_non_asymmetric_pairs ... ok [INFO] [stdout] test double_input_matches_single_for_zoo ... ok [INFO] [stdout] test lit_string_absorbed_by_string_for_many_values ... ok [INFO] [stdout] test mixed_dominates_every_zoo_atom ... ok [INFO] [stdout] test lit_float_absorbed_by_float_for_many_values ... ok [INFO] [stdout] test self_idempotency_basic ... ok [INFO] [stdout] test singleton_passthrough_for_full_zoo ... ok [INFO] [stderr] Running tests/combiner_resources.rs (/opt/rustwide/target/debug/build/suffete/419c1399b6c9e561/out/combiner_resources-419c1399b6c9e561) [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test idempotent_general ... ok [INFO] [stdout] test closed_or_string_kept_separate ... ok [INFO] [stdout] test alternating_open_closed_collapses_to_resource ... ok [INFO] [stdout] test many_closed_resources_collapse ... ok [INFO] [stdout] test idempotent_open ... ok [INFO] [stdout] test general_absorbs_open ... ok [INFO] [stdout] test general_absorbs_closed ... ok [INFO] [stdout] test idempotent_closed ... ok [INFO] [stdout] test resource_or_null_kept_separate ... ok [INFO] [stdout] test many_open_resources_collapse ... ok [INFO] [stdout] test open_or_closed_is_resource ... ok [INFO] [stdout] test open_or_closed_or_general_is_resource ... ok [INFO] [stdout] test open_or_int_kept_separate ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_scalars.rs (/opt/rustwide/target/debug/build/suffete/e7dfea626dc6843a/out/combiner_scalars-e7dfea626dc6843a) [INFO] [stdout] [INFO] [stdout] running 58 tests [INFO] [stdout] test array_key_does_not_absorb_bool ... ok [INFO] [stdout] test array_key_absorbs_int_either_order ... ok [INFO] [stdout] test array_key_does_not_absorb_float ... ok [INFO] [stdout] test array_key_absorbs_string_either_order ... ok [INFO] [stdout] test array_key_absorbs_literal_string_either_order ... ok [INFO] [stdout] test bool_absorbs_false_either_order ... ok [INFO] [stdout] test bool_absorbs_true_either_order ... ok [INFO] [stdout] test bool_absorbs_true_and_false ... ok [INFO] [stdout] test array_key_absorbs_literal_int_either_order ... ok [INFO] [stdout] test big_zoo_singleton_passthrough ... ok [INFO] [stdout] test distinct_class_like_kinds_kept_apart ... ok [INFO] [stdout] test distinct_literal_strings_kept_apart ... ok [INFO] [stdout] test class_string_absorbed_by_array_key ... ok [INFO] [stdout] test class_string_absorbed_by_string ... ok [INFO] [stdout] test big_zoo_self_dedup ... ok [INFO] [stdout] test equal_literal_strings_collapse ... ok [INFO] [stdout] test class_string_absorbed_by_scalar ... ok [INFO] [stdout] test duplicated_class_like_collapses ... ok [INFO] [stdout] test equal_literal_floats_collapse ... ok [INFO] [stdout] test float_absorbs_literal_float_either_order ... ok [INFO] [stdout] test equal_literal_ints_collapse ... ok [INFO] [stdout] test int_bool_kept_separate ... ok [INFO] [stdout] test float_bool_kept_separate ... ok [INFO] [stdout] test float_string_kept_separate ... ok [INFO] [stdout] test distinct_literal_floats_kept_apart ... ok [INFO] [stdout] test duplicated_true_collapses ... ok [INFO] [stdout] test idempotent_zoo ... ok [INFO] [stdout] test int_absorbs_literal_int_either_order ... ok [INFO] [stdout] test many_bool_variants_collapse_to_bool ... ok [INFO] [stdout] test many_lit_int_with_int_collapses ... ok [INFO] [stdout] test int_float_kept_separate ... ok [INFO] [stdout] test lit_string_lit_float_kept_separate ... ok [INFO] [stdout] test many_lit_float_with_float_collapses ... ok [INFO] [stdout] test non_adjacent_literal_ints_kept_apart_under_threshold ... ok [INFO] [stdout] test int_string_kept_separate ... ok [INFO] [stdout] test lit_int_lit_float_kept_separate ... ok [INFO] [stdout] test lit_int_lit_string_kept_separate ... ok [INFO] [stdout] test numeric_absorbs_float_either_order ... ok [INFO] [stdout] test numeric_bool_kept_separate ... ok [INFO] [stdout] test many_lit_string_with_string_collapses ... ok [INFO] [stdout] test numeric_absorbs_int_either_order ... ok [INFO] [stdout] test numeric_absorbs_literal_float_either_order ... ok [INFO] [stdout] test numeric_absorbs_literal_int_either_order ... ok [INFO] [stdout] test scalar_absorbs_float_either_order ... ok [INFO] [stdout] test scalar_absorbs_array_key_either_order ... ok [INFO] [stdout] test scalar_absorbs_bool_either_order ... ok [INFO] [stdout] test scalar_absorbs_true_false_either_order ... ok [INFO] [stdout] test scalar_absorbs_int_either_order ... ok [INFO] [stdout] test numeric_does_not_absorb_string_either_order ... ok [INFO] [stdout] test scalar_not_synthesised_when_no_unspecified_int ... ok [INFO] [stdout] test scalar_absorbs_string_either_order ... ok [INFO] [stdout] test scalar_synthesised_from_string_float_bool_int ... ok [INFO] [stdout] test string_bool_kept_separate ... ok [INFO] [stdout] test scalar_absorbs_literals_either_order ... ok [INFO] [stderr] Running tests/combiner_smoke.rs (/opt/rustwide/target/debug/build/suffete/42950e1c8c241ae0/out/combiner_smoke-42950e1c8c241ae0) [INFO] [stdout] test scalar_absorbs_numeric_either_order ... ok [INFO] [stdout] test single_input_passthrough_zoo ... ok [INFO] [stdout] test string_absorbs_literal_string_either_order ... ok [INFO] [stdout] test true_or_false_yields_bool ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 58 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stderr] Running tests/combiner_strings.rs (/opt/rustwide/target/debug/build/suffete/e25143dfaa19834d/out/combiner_strings-e25143dfaa19834d) [INFO] [stdout] test smoke_true_false_becomes_bool ... ok [INFO] [stdout] test smoke_int_int_collapses ... ok [INFO] [stdout] test smoke_empty_array_alone ... ok [INFO] [stdout] test smoke_never_is_absorbed ... ok [INFO] [stdout] test smoke_mixed_dominates ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 40 tests [INFO] [stdout] test custom_low_threshold_generalises_quickly ... ok [INFO] [stdout] test empty_literal_first_downgrades_non_empty_to_general_string ... ok [INFO] [stdout] test case_sensitive_literals_kept_apart ... ok [INFO] [stdout] test duplicate_literal_strings_collapse ... ok [INFO] [stdout] test literal_only_combine_order_independent ... ok [INFO] [stdout] test lit_lower_with_lit_upper_kept_apart ... ok [INFO] [stdout] test callable_string_with_literal_keeps_truthy_axis ... ok [INFO] [stdout] test idempotent_zoo ... ok [INFO] [stdout] test lower_or_numeric_keeps_axes ... ok [INFO] [stdout] test lower_or_upper_collapses_to_general_string ... ok [INFO] [stdout] test lowercase_with_empty_literal_collapses_to_general_string ... ok [INFO] [stdout] test lowercase_string_absorbs_lowercase_literal ... ok [INFO] [stdout] test lowercase_string_first_keeps_uppercase_literal_separate ... ok [INFO] [stdout] test many_literals_with_general_collapse ... ok [INFO] [stdout] test many_distinct_literals_exceed_threshold_generalise ... ok [INFO] [stdout] test many_compatible_literals_with_non_empty_collapse ... ok [INFO] [stdout] test non_empty_or_lower_collapses_to_general_string ... ok [INFO] [stdout] test non_numeric_literal_first_with_numeric_string_keeps_separate ... ok [INFO] [stdout] test numeric_string_absorbs_numeric_literal ... ok [INFO] [stdout] test mixed_compatible_and_incompatible_literals_with_non_empty ... ok [INFO] [stdout] test many_uppercase_literals_with_uppercase_collapse ... ok [INFO] [stdout] test non_empty_absorbs_compatible_literal ... ok [INFO] [stdout] test non_empty_first_keeps_empty_literal_separate ... ok [INFO] [stdout] test singleton_passthrough ... ok [INFO] [stdout] test non_empty_unspec_literal_absorbs_specific ... ok [INFO] [stdout] test numeric_string_first_keeps_non_numeric_literal_separate ... ok [INFO] [stdout] test string_absorbs_literal_either_order ... ok [INFO] [stdout] test truthy_string_absorbs_truthy_literal ... ok [INFO] [stdout] test truthy_string_first_keeps_falsy_literal_separate ... ok [INFO] [stdout] test two_distinct_literals_kept ... ok [INFO] [stdout] test unspec_literal_absorbs_specific_literal ... ok [INFO] [stdout] test threshold_zero_immediate_generalisation_when_two_or_more ... ok [INFO] [stdout] test uppercase_string_first_keeps_lowercase_literal_separate ... ok [INFO] [stdout] test truthy_or_non_empty_collapses_to_non_empty ... ok [INFO] [stdout] test truthy_or_numeric_collapses ... ok [INFO] [stdout] test uppercase_with_empty_literal_collapses_to_general_string ... ok [INFO] [stdout] test under_threshold_keeps_literals ... ok [INFO] [stdout] test many_lower_literals_with_non_empty_lower_collapse ... ok [INFO] [stdout] test uppercase_string_absorbs_uppercase_literal ... ok [INFO] [stdout] test n_distinct_literals_kept ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 40 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_table_cases.rs (/opt/rustwide/target/debug/build/suffete/caa704ff5c372159/out/combiner_table_cases-caa704ff5c372159) [INFO] [stdout] [INFO] [stdout] running 17 tests [INFO] [stdout] test array_cases_shapes ... ok [INFO] [stdout] test integer_cases_subtype ... ok [INFO] [stdout] test cross_family_cases_subtype ... ok [INFO] [stdout] test mixed_axis_cases ... ok [INFO] [stdout] test float_cases ... ok [INFO] [stdout] test array_cases_empty ... ok [INFO] [stdout] test cross_family_cases_structural ... ok [INFO] [stdout] test mixed_dominance_cases ... ok [INFO] [stdout] test integer_cases_structural ... ok [INFO] [stdout] test bool_cases ... ok [INFO] [stdout] test class_like_string_cases ... ok [INFO] [stdout] test multi_atom_cases_structural ... ok [INFO] [stdout] test object_cases ... ok [INFO] [stdout] test resource_cases ... ok [INFO] [stdout] test string_cases_subtype ... ok [INFO] [stdout] test string_cases_structural ... ok [INFO] [stdout] test special_type_cases ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_thresholds.rs (/opt/rustwide/target/debug/build/suffete/524854e2797a31fb/out/combiner_thresholds-524854e2797a31fb) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test array_threshold_zero_with_two_inputs_generalises ... ok [INFO] [stdout] test many_distinct_sealed_lists_above_threshold_collapse ... ok [INFO] [stdout] test integer_threshold_zero_with_two_inputs_generalises ... ok [INFO] [stdout] test just_over_default_string_threshold_generalises ... ok [INFO] [stdout] test int_threshold_above_input_count_keeps_literals ... ok [INFO] [stdout] test string_threshold_zero_with_two_inputs_generalises ... ok [INFO] [stdout] test many_int_thresholds_walk ... ok [INFO] [stdout] test just_over_default_float_threshold_generalises ... ok [INFO] [stdout] test just_over_default_int_threshold_generalises ... ok [INFO] [stdout] test at_default_string_threshold_keeps_literals ... ok [INFO] [stdout] test at_default_int_threshold_keeps_non_adjacent_literals ... ok [INFO] [stdout] test many_string_thresholds_walk ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_triples.rs (/opt/rustwide/target/debug/build/suffete/f26d8a036f0515e6/out/combiner_triples-f26d8a036f0515e6) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test array_triples ... ok [INFO] [stdout] test int_lit_range_triples ... ok [INFO] [stdout] test scalar_subtype_triples ... ok [INFO] [stdout] test string_triples ... ok [INFO] [stdout] test void_triples ... ok [INFO] [stdout] test mixed_triples_dominate ... ok [INFO] [stdout] test four_atoms ... ok [INFO] [stdout] test never_triples_absorbed ... ok [INFO] [stdout] test bool_triples ... ok [INFO] [stdout] test resource_triples ... ok [INFO] [stdout] test object_triples ... ok [INFO] [stdout] test null_triples ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/combiner_void_value_context.rs (/opt/rustwide/target/debug/build/suffete/91982487d58674a3/out/combiner_void_value_context-91982487d58674a3) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test resource_or_void_should_be_resource_or_null ... ok [INFO] [stdout] test false_or_void_should_be_false_or_null ... ok [INFO] [stdout] test literal_or_void_should_be_literal_or_null ... ok [INFO] [stdout] test bool_or_void_should_be_bool_or_null ... ok [INFO] [stdout] test int_or_void_should_be_int_or_null ... ok [INFO] [stdout] test string_or_void_should_be_string_or_null ... ok [INFO] [stdout] test object_or_void_should_be_object_or_null ... ok [INFO] [stdout] test three_way_int_string_void_should_have_null_not_void ... ok [INFO] [stdout] test void_or_never_keeps_void ... ok [INFO] [stdout] test void_or_null_collapses_to_null ... ok [INFO] [stdout] test true_or_void_should_be_true_or_null ... ok [INFO] [stdout] test void_with_multiple_others_is_replaced_by_single_null ... ok [INFO] [stdout] test void_with_only_nevers_keeps_void ... ok [INFO] [stdout] test void_alone_is_preserved_as_return_type_annotation ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_arrays.rs (/opt/rustwide/target/debug/build/suffete/fbc4fa74c04adc6d/out/comparator_arrays-fbc4fa74c04adc6d) [INFO] [stdout] [INFO] [stdout] running 50 tests [INFO] [stdout] test array_with_int_keys_not_in_list ... ok [INFO] [stdout] test deep_keyed_with_optional_property ... ok [INFO] [stdout] test deep_keyed_extra_keys_not_subtype ... ok [INFO] [stdout] test deep_keyed_of_lists ... ok [INFO] [stdout] test array_not_in_int ... ok [INFO] [stdout] test array_in_mixed ... ok [INFO] [stdout] test array_not_in_object ... ok [INFO] [stdout] test deep_keyed_subset_with_optional ... ok [INFO] [stdout] test deep_list_of_keyed ... ok [INFO] [stdout] test deep_list_of_lists ... ok [INFO] [stdout] test empty_not_in_non_empty_list ... ok [INFO] [stdout] test iterable_reflexive ... ok [INFO] [stdout] test keyed_disjoint_keys ... ok [INFO] [stdout] test deep_list_three_levels ... ok [INFO] [stdout] test empty_in_empty ... ok [INFO] [stdout] test keyed_disjoint_values ... ok [INFO] [stdout] test empty_in_list ... ok [INFO] [stdout] test keyed_in_iterable ... ok [INFO] [stdout] test keyed_key_covariance_to_array_key ... ok [INFO] [stdout] test keyed_sealed_reflexive ... ok [INFO] [stdout] test keyed_reflexive ... ok [INFO] [stdout] test keyed_sealed_value_covariance ... ok [INFO] [stdout] test keyed_value_covariance ... ok [INFO] [stdout] test keyed_sealed_distinct_keys_disjoint ... ok [INFO] [stdout] test keyed_with_value_subtypes_for_many_combos ... ok [INFO] [stdout] test iterable_not_in_keyed ... ok [INFO] [stdout] test iterable_not_in_list ... ok [INFO] [stdout] test list_in_array_with_array_key ... ok [INFO] [stdout] test list_in_array_with_int_keys ... ok [INFO] [stdout] test list_covariance_in_element ... ok [INFO] [stdout] test keyed_sealed_in_unsealed_keyed ... ok [INFO] [stdout] test keyed_sealed_optional_not_in_required ... ok [INFO] [stdout] test keyed_sealed_required_in_optional ... ok [INFO] [stdout] test list_in_iterable ... ok [INFO] [stdout] test list_int_lits_in_list_int ... ok [INFO] [stdout] test list_int_not_in_list_float ... ok [INFO] [stdout] test list_not_in_ne_list ... ok [INFO] [stdout] test list_reflexive ... ok [INFO] [stdout] test ne_list_in_list ... ok [INFO] [stdout] test sealed_list_distinct_disjoint ... ok [INFO] [stdout] test sealed_list_in_unsealed_list ... ok [INFO] [stdout] test sealed_list_in_widened_sealed ... ok [INFO] [stdout] test list_not_in_narrower_element ... ok [INFO] [stdout] test sealed_list_reflexive ... ok [INFO] [stdout] test unsealed_list_not_in_sealed_list ... ok [INFO] [stdout] test list_string_lits_in_list_string ... ok [INFO] [stdout] test many_distinct_lists_disjoint ... ok [INFO] [stdout] test list_not_covariance_when_disjoint_elements ... ok [INFO] [stderr] Running tests/comparator_booleans.rs (/opt/rustwide/target/debug/build/suffete/94a85ee365bf7482/out/comparator_booleans-94a85ee365bf7482) [INFO] [stdout] test list_not_in_empty ... ok [INFO] [stdout] test list_string_in_list_array_key ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 20 tests [INFO] [stdout] test bool_not_in_int ... ok [INFO] [stdout] test bool_in_scalar ... ok [INFO] [stdout] test bool_not_in_array_key ... ok [INFO] [stdout] test bool_not_in_false ... ok [INFO] [stdout] test bool_reflexive ... ok [INFO] [stdout] test false_in_scalar ... ok [INFO] [stdout] test bool_not_in_float ... ok [INFO] [stdout] test bool_not_in_string ... ok [INFO] [stdout] test bool_not_in_object ... ok [INFO] [stdout] test bool_not_in_null ... ok [INFO] [stdout] test bool_not_in_true ... ok [INFO] [stdout] test bool_not_in_numeric ... ok [INFO] [stdout] test false_reflexive ... ok [INFO] [stdout] test scalar_not_in_bool ... ok [INFO] [stdout] test true_in_bool ... ok [INFO] [stdout] test false_in_bool ... ok [INFO] [stdout] test false_not_in_true ... ok [INFO] [stdout] test true_not_in_false ... ok [INFO] [stdout] test true_in_scalar ... ok [INFO] [stdout] test true_reflexive ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_callable.rs (/opt/rustwide/target/debug/build/suffete/0d8c0166fe1d6cc6/out/comparator_callable-0d8c0166fe1d6cc6) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test callable_in_mixed ... ok [INFO] [stdout] test callable_not_in_object ... ok [INFO] [stdout] test callable_not_in_callable_string ... ok [INFO] [stdout] test callable_string_in_callable ... ok [INFO] [stdout] test callable_not_in_closure ... ok [INFO] [stdout] test closure_in_callable ... ok [INFO] [stdout] test closure_reflexive ... ok [INFO] [stdout] test int_not_in_callable ... ok [INFO] [stdout] test never_in_callable ... ok [INFO] [stdout] test callable_reflexive ... ok [INFO] [stdout] test callable_not_in_int ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_callable_signatures.rs (/opt/rustwide/target/debug/build/suffete/f25899ed70bffc3d/out/comparator_callable_signatures-f25899ed70bffc3d) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test parameter_contravariance_holds ... ok [INFO] [stdout] test any_callable_does_not_refine_specific ... ok [INFO] [stdout] test input_with_default_satisfies_smaller_arity_container ... ok [INFO] [stdout] test parameter_contravariance_failure ... ok [INFO] [stdout] test arity_mismatch_more_required_input ... ok [INFO] [stdout] test arity_mismatch_more_required_container ... ok [INFO] [stdout] test anything_refines_any_callable ... ok [INFO] [stdout] test closure_refines_signature_with_compatible_shape ... ok [INFO] [stdout] test signature_reflexive ... ok [INFO] [stdout] test unspecified_container_accepts_any_signature ... ok [INFO] [stdout] test unspecified_input_does_not_refine_specific_container ... ok [INFO] [stdout] test variadic_container_requires_variadic_input ... ok [INFO] [stdout] test parameter_contravariance_widens_via_mixed ... ok [INFO] [stdout] test return_covariance_failure ... ok [INFO] [stdout] test pure_input_satisfies_impure_container ... ok [INFO] [stdout] test pure_input_satisfies_pure_container ... ok [INFO] [stdout] test variadic_input_absorbs_extra_container_param ... ok [INFO] [stdout] test return_covariance_holds ... ok [INFO] [stderr] Running tests/comparator_class_strings.rs (/opt/rustwide/target/debug/build/suffete/0600bf92fe7172ed/out/comparator_class_strings-0600bf92fe7172ed) [INFO] [stdout] test return_widens_into_mixed ... ok [INFO] [stdout] test variadic_to_variadic_with_contravariant_type ... ok [INFO] [stdout] test pure_container_rejects_impure_input ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 32 tests [INFO] [stdout] test class_string_not_in_lit_class_string ... ok [INFO] [stdout] test class_string_not_in_numeric ... ok [INFO] [stdout] test class_string_in_array_key ... ok [INFO] [stdout] test class_string_in_string ... ok [INFO] [stdout] test class_string_not_in_int ... ok [INFO] [stdout] test class_string_kinds_disjoint ... ok [INFO] [stdout] test class_string_of_child_in_class_string_of_parent ... ok [INFO] [stdout] test class_string_reflexive ... ok [INFO] [stdout] test enum_string_reflexive ... ok [INFO] [stdout] test enum_string_in_string ... ok [INFO] [stdout] test lit_class_string_in_array_key ... ok [INFO] [stdout] test class_string_of_parent_not_in_class_string_of_child ... ok [INFO] [stdout] test lit_class_string_in_class_string ... ok [INFO] [stdout] test lit_class_string_in_string ... ok [INFO] [stdout] test lit_class_string_not_in_class_string_of_unrelated ... ok [INFO] [stdout] test lit_class_string_reflexive ... ok [INFO] [stdout] test lit_string_in_class_string_of_matching_class ... ok [INFO] [stdout] test class_string_of_unrelated_classes_disjoint ... ok [INFO] [stdout] test interface_string_reflexive ... ok [INFO] [stdout] test lit_string_of_class_does_not_fit_enum_string_container ... ok [INFO] [stdout] test lit_string_of_descendant_in_class_string_of_parent ... ok [INFO] [stdout] test lit_string_of_valid_class_name_fits_class_string ... ok [INFO] [stdout] test many_lit_class_strings_in_class_string ... ok [INFO] [stdout] test trait_string_in_string ... ok [INFO] [stdout] test lit_string_of_invalid_class_name_does_not_fit_class_string ... ok [INFO] [stdout] test lit_class_string_in_class_string_of_ancestor ... ok [INFO] [stdout] test lit_string_of_pure_enum_routes_through_enum_kind ... ok [INFO] [stdout] test interface_string_in_string ... ok [INFO] [stdout] test class_string_in_scalar ... ok [INFO] [stdout] test lit_class_string_in_class_string_of_self ... ok [INFO] [stdout] test trait_string_reflexive ... ok [INFO] [stdout] test distinct_lit_class_strings_disjoint ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_combinatorial.rs (/opt/rustwide/target/debug/build/suffete/92cd6be0d55b44d6/out/comparator_combinatorial-92cd6be0d55b44d6) [INFO] [stdout] [INFO] [stdout] running 19 tests [INFO] [stdout] test every_atom_eq_self ... ok [INFO] [stdout] test every_atom_in_mixed ... ok [INFO] [stdout] test every_positive_lit_in_positive ... ok [INFO] [stdout] test every_lit_str_eq_self ... ok [INFO] [stdout] test every_zero_or_positive_in_non_negative ... ok [INFO] [stdout] test int_or_str_contains_every_lit ... ok [INFO] [stdout] test every_lit_float_in_float ... ok [INFO] [stdout] test every_zero_or_negative_in_non_positive ... ok [INFO] [stdout] test never_in_every_atom ... ok [INFO] [stdout] test every_negative_lit_in_negative ... ok [INFO] [stdout] test lit_in_from ... ok [INFO] [stdout] test every_lit_str_in_string ... ok [INFO] [stdout] test lit_in_to ... ok [INFO] [stdout] test lit_in_range_inclusive ... ok [INFO] [stdout] test lit_below_from_not_subtype ... ok [INFO] [stdout] test nullable_int_contains_every_lit ... ok [INFO] [stdout] test no_distinct_lit_ints_subtype ... ok [INFO] [stdout] test no_distinct_lit_strs_subtype ... ok [INFO] [stdout] test every_lit_int_in_int ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_deep_structures.rs (/opt/rustwide/target/debug/build/suffete/c132d3f2c6576bd0/out/comparator_deep_structures-c132d3f2c6576bd0) [INFO] [stdout] [INFO] [stdout] running 24 tests [INFO] [stdout] test list_in_iterable_with_lit_values ... ok [INFO] [stdout] test deeply_nested_list_lit_in_general ... ok [INFO] [stdout] test deep_object_with_generic_param ... ok [INFO] [stdout] test keyed_of_lists ... ok [INFO] [stdout] test array_of_arrays_chain ... ok [INFO] [stdout] test list_of_keyed_arrays ... ok [INFO] [stdout] test deeply_nested_keyed_shape_three_levels ... ok [INFO] [stdout] test list_with_known_elements_lit_in_general ... ok [INFO] [stdout] test list_with_known_elements_in_unsealed_list ... ok [INFO] [stdout] test list_with_class_hierarchy ... ok [INFO] [stdout] test list_of_lists_reflexive ... ok [INFO] [stdout] test list_of_generic_objects ... ok [INFO] [stdout] test shape_with_string_in_string_lit ... ok [INFO] [stdout] test shaped_array_extra_required_not_subtype ... ok [INFO] [stdout] test nested_shape_with_keyed_value ... ok [INFO] [stdout] test shaped_array_required_in_optional ... ok [INFO] [stdout] test shaped_array_simple ... ok [INFO] [stdout] test nested_shape_with_list_value ... ok [INFO] [stdout] test keyed_with_object_values ... ok [INFO] [stdout] test many_shape_widths ... ok [INFO] [stdout] test shape_in_unsealed_keyed_array ... ok [INFO] [stdout] test shaped_array_subset_with_optional_extra ... ok [INFO] [stdout] test shaped_array_with_lit_values_in_general_shape ... ok [INFO] [stdout] test deep_nested_object_in_box ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_enum_structural.rs (/opt/rustwide/target/debug/build/suffete/5199705593a9d289/out/comparator_enum_structural-5199705593a9d289) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test backed_enum_has_value_property ... ok [INFO] [stdout] test pure_enum_does_not_have_value_property ... ok [INFO] [stdout] test enum_name_property_is_non_empty_string ... ok [INFO] [stdout] test pure_enum_has_name_property ... ok [INFO] [stdout] test pure_enum_does_not_refine_shape_demanding_value ... ok [INFO] [stdout] test enum_refines_sealed_shape_matching_exactly ... ok [INFO] [stdout] test backed_string_enum_does_not_refine_int_value_shape ... ok [INFO] [stdout] test enum_does_not_refine_sealed_shape_with_extra_required_key ... ok [INFO] [stdout] test backed_int_enum_refines_int_value_shape ... ok [INFO] [stdout] test backed_string_enum_refines_name_value_string_shape ... ok [INFO] [stdout] test pure_enum_refines_name_only_shape ... ok [INFO] [stdout] test unknown_enum_rejects_value_but_keeps_name ... ok [INFO] [stdout] test pure_enum_refines_shape_with_optional_value ... ok [INFO] [stdout] test unknown_enum_rejects_object_shape ... ok [INFO] [stdout] test specific_enum_case_does_not_refine_lit_name_of_different_case ... ok [INFO] [stdout] test specific_enum_case_refines_shape_with_lit_name ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_flags.rs (/opt/rustwide/target/debug/build/suffete/5bcf70e97ff57b62/out/comparator_flags-5bcf70e97ff57b62) [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test fresh_report_has_empty_bounds_and_no_replacements ... ok [INFO] [stdout] test array_key_to_string_sets_coerced ... ok [INFO] [stdout] test int_or_false_to_int_with_ignore_false_passes ... ok [INFO] [stdout] test int_does_not_refine_float_under_strict_subtype ... ok [INFO] [stdout] test bool_to_false_sets_coerced ... ok [INFO] [stdout] test equal_atoms_no_flags ... ok [INFO] [stdout] test bool_to_true_sets_coerced ... ok [INFO] [stdout] test int_to_positive_int_no_coerced_flag ... ok [INFO] [stdout] test literal_int_to_other_literal_no_coerced_flag ... ok [INFO] [stdout] test int_to_lit_int_no_coerced_flag ... ok [INFO] [stdout] test mixed_to_int_sets_coerced_and_from_nested ... ok [INFO] [stdout] test mixed_to_never_sets_coerced ... ok [INFO] [stdout] test lit_int_in_int_no_flags_set ... ok [INFO] [stdout] test template_constrained_to_mixed_sets_from_as_mixed_on_rejection ... ok [INFO] [stdout] test mixed_to_string_sets_coerced_and_from_nested ... ok [INFO] [stdout] test nullable_int_to_int_without_ignore_null_fails ... ok [INFO] [stdout] test never_to_anything_no_flags ... ok [INFO] [stdout] test template_to_mixed_does_not_set_from_as_mixed ... ok [INFO] [stdout] test nullable_int_to_int_with_ignore_null_passes ... ok [INFO] [stderr] Running tests/comparator_floats.rs (/opt/rustwide/target/debug/build/suffete/22009fd617b4f427/out/comparator_floats-22009fd617b4f427) [INFO] [stdout] test object_to_named_sets_coerced_and_object_any_down ... ok [INFO] [stdout] test array_key_to_int_sets_coerced ... ok [INFO] [stdout] test concrete_to_never_does_not_set_coerced ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test float_not_in_bool ... ok [INFO] [stdout] test float_not_in_string ... ok [INFO] [stdout] test float_not_in_lit ... ok [INFO] [stdout] test distinct_lits_disjoint ... ok [INFO] [stdout] test float_in_scalar ... ok [INFO] [stdout] test float_not_in_int ... ok [INFO] [stdout] test float_not_in_array_key ... ok [INFO] [stdout] test float_in_numeric ... ok [INFO] [stdout] test float_reflexive ... ok [INFO] [stdout] test lit_in_unspec_lit ... ok [INFO] [stdout] test lit_in_float ... ok [INFO] [stdout] test lit_float_in_numeric ... ok [INFO] [stdout] test lit_float_reflexive ... ok [INFO] [stdout] test unspec_lit_in_float ... ok [INFO] [stdout] test many_lit_in_float ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running tests/comparator_generic_parameters.rs (/opt/rustwide/target/debug/build/suffete/921b45d3e688ea0f/out/comparator_generic_parameters-921b45d3e688ea0f) [INFO] [stdout] running 11 tests [INFO] [stdout] test concrete_value_does_not_refine_template_parameter ... ok [INFO] [stdout] test never_refines_any_template ... ok [INFO] [stdout] test different_defining_entities_not_same_t ... ok [INFO] [stdout] test template_with_int_constraint_refines_array_key ... ok [INFO] [stdout] test different_parameter_names_same_class_not_same_t ... ok [INFO] [stdout] test same_t_reflexive_under_same_defining_entity ... ok [INFO] [stdout] test template_with_int_constraint_refines_int ... ok [INFO] [stdout] test template_with_int_constraint_does_not_refine_string ... ok [INFO] [stdout] test template_with_mixed_constraint_refines_mixed ... ok [INFO] [stdout] test template_self_refines_via_mixed_top ... ok [INFO] [stdout] test template_with_named_constraint_refines_ancestor ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_generics.rs (/opt/rustwide/target/debug/build/suffete/d86595ef995a4e4f/out/comparator_generics-d86595ef995a4e4f) [INFO] [stdout] [INFO] [stdout] running 17 tests [INFO] [stdout] test box_int_in_box_int_reflexive ... ok [INFO] [stdout] test covariant_descendant_widening ... ok [INFO] [stdout] test box_int_flows_into_unspecialised_box_under_invariance ... ok [INFO] [stdout] test cell_int_not_in_cell_scalar_exploit_rejected ... ok [INFO] [stdout] test descendant_threading_template ... ok [INFO] [stdout] test box_int_not_in_box_scalar_invariant_default ... ok [INFO] [stdout] test container_int_in_container_scalar_when_covariant ... ok [INFO] [stdout] test descendant_reaches_generic_ancestor_without_own_templates ... ok [INFO] [stdout] test nested_unspec_box_does_not_flow_into_box_int_under_invariance ... ok [INFO] [stdout] test non_generic_named_into_non_generic_descendant ... ok [INFO] [stdout] test sink_scalar_in_sink_int_when_contravariant ... ok [INFO] [stdout] test unspec_to_unspec_box_passes_via_reflexivity ... ok [INFO] [stdout] test unspecialised_box_does_not_flow_into_box_int_under_invariance ... ok [INFO] [stdout] test unrelated_classes_disjoint_with_args ... ok [INFO] [stdout] test descendant_with_concrete_parent_specialisation ... ok [INFO] [stdout] test descendant_with_template_in_nested_position ... ok [INFO] [stdout] test multi_level_chain_with_explicit_grandparent_link ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_indirection.rs (/opt/rustwide/target/debug/build/suffete/f2dfd38b3d0e38e7/out/comparator_indirection-f2dfd38b3d0e38e7) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test distinct_indirection_kinds_dont_cross ... ok [INFO] [stdout] test distinct_references_dont_refine_without_resolution ... ok [INFO] [stdout] test alias_handle_equality ... ok [INFO] [stdout] test global_reference_handle_equality ... ok [INFO] [stdout] test conditional_handle_equality ... ok [INFO] [stdout] test reference_input_does_not_refine_concrete_container ... ok [INFO] [stdout] test variable_reflexive ... ok [INFO] [stdout] test reference_handle_equal_refines_via_interning ... ok [INFO] [stdout] test member_reference_handle_equality ... ok [INFO] [stdout] test never_refines_reference_via_bot ... ok [INFO] [stdout] test reference_refines_mixed_via_top ... ok [INFO] [stdout] test derived_handle_equality ... ok [INFO] [stdout] test distinct_variables_dont_refine ... ok [INFO] [stdout] test concrete_input_does_not_refine_unresolved_reference ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_integers.rs (/opt/rustwide/target/debug/build/suffete/f4c4b1786088bf08/out/comparator_integers-f4c4b1786088bf08) [INFO] [stdout] [INFO] [stdout] running 55 tests [INFO] [stdout] test from_5_in_positive ... ok [INFO] [stdout] test from_0_in_non_negative ... ok [INFO] [stdout] test equal_range_is_subtype ... ok [INFO] [stdout] test from_1_in_positive ... ok [INFO] [stdout] test int_not_in_positive ... ok [INFO] [stdout] test int_not_in_negative ... ok [INFO] [stdout] test int_not_in_unspec_lit ... ok [INFO] [stdout] test from_min_to_max_is_int ... ok [INFO] [stdout] test int_reflexive ... ok [INFO] [stdout] test from_0_not_in_positive ... ok [INFO] [stdout] test int_does_not_contain_specific_literal ... ok [INFO] [stdout] test lit_inside_range ... ok [INFO] [stdout] test lit_in_unspec_lit ... ok [INFO] [stdout] test lit_not_in_from_below ... ok [INFO] [stdout] test lit_zero_in_non_negative_and_non_positive ... ok [INFO] [stdout] test lit_not_inside_range_outside_bounds ... ok [INFO] [stdout] test lit_not_in_to_above ... ok [INFO] [stdout] test lit_zero_not_in_positive_or_negative ... ok [INFO] [stdout] test negative_in_int ... ok [INFO] [stdout] test lit_int_reflexive_for_many_values ... ok [INFO] [stdout] test negative_in_non_positive ... ok [INFO] [stdout] test lit_in_to ... ok [INFO] [stdout] test negative_int_contains_strictly_negative_literals ... ok [INFO] [stdout] test distinct_literals_are_disjoint ... ok [INFO] [stdout] test lit_in_from ... ok [INFO] [stdout] test int_contains_every_literal ... ok [INFO] [stdout] test negative_int_does_not_contain_positives ... ok [INFO] [stdout] test negative_int_does_not_contain_zero ... ok [INFO] [stdout] test non_negative_in_int ... ok [INFO] [stdout] test non_negative_int_contains_zero_and_positives ... ok [INFO] [stdout] test non_negative_int_does_not_contain_negatives ... ok [INFO] [stdout] test non_negative_not_in_positive ... ok [INFO] [stdout] test positive_in_non_negative ... ok [INFO] [stdout] test non_positive_in_int ... ok [INFO] [stdout] test range_in_int ... ok [INFO] [stdout] test non_positive_int_contains_zero_and_negatives ... ok [INFO] [stdout] test positive_int_does_not_contain_negatives ... ok [INFO] [stdout] test non_positive_int_does_not_contain_positives ... ok [INFO] [stdout] test positive_int_does_not_contain_zero ... ok [INFO] [stdout] test positive_int_contains_strictly_positive_literals ... ok [INFO] [stdout] test positive_in_int ... ok [INFO] [stdout] test non_positive_not_in_negative ... ok [INFO] [stdout] test range_in_negative_when_hi_leq_minus_1 ... ok [INFO] [stdout] test range_in_non_negative_when_lo_geq_0 ... ok [INFO] [stdout] test range_in_positive_when_lo_geq_1 ... ok [INFO] [stdout] test range_inside_range ... ok [INFO] [stdout] test range_not_in_negative_when_hi_geq_0 ... ok [INFO] [stdout] test range_not_in_non_negative_when_lo_lt_0 ... ok [INFO] [stdout] test range_not_in_positive_when_lo_lt_1 ... ok [INFO] [stdout] test to_minus_1_in_non_positive ... ok [INFO] [stdout] test unspec_lit_in_int ... ok [INFO] [stdout] test unspec_lit_not_in_specific_lit ... ok [INFO] [stdout] test to_minus_1_in_negative ... ok [INFO] [stdout] test to_0_in_non_positive ... ok [INFO] [stdout] test range_not_inside_smaller_range ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 55 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_iterable.rs (/opt/rustwide/target/debug/build/suffete/d762db02eef7fbc6/out/comparator_iterable-d762db02eef7fbc6) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test empty_array_in_iterable ... ok [INFO] [stdout] test iterable_not_in_keyed ... ok [INFO] [stdout] test keyed_in_iterable_string_value ... ok [INFO] [stdout] test iterable_disjoint_value ... ok [INFO] [stdout] test iterable_in_mixed ... ok [INFO] [stdout] test iterable_reflexive ... ok [INFO] [stdout] test iterable_value_covariance ... ok [INFO] [stdout] test list_in_iterable_int_int ... ok [INFO] [stdout] test iterable_not_in_list ... ok [INFO] [stdout] test list_in_iterable_with_array_key ... ok [INFO] [stdout] test never_in_iterable ... ok [INFO] [stdout] test list_with_lit_in_iterable_general ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_mixed.rs (/opt/rustwide/target/debug/build/suffete/521498480177b6e4/out/comparator_mixed-521498480177b6e4) [INFO] [stdout] [INFO] [stdout] running 50 tests [INFO] [stdout] test falsy_mixed_reflexive ... ok [INFO] [stdout] test float_general_truthiness_undetermined ... ok [INFO] [stdout] test float_in_mixed ... ok [INFO] [stdout] test false_not_in_truthy_mixed ... ok [INFO] [stdout] test general_list_truthiness_undetermined ... ok [INFO] [stdout] test array_in_mixed ... ok [INFO] [stdout] test falsy_mixed_in_mixed ... ok [INFO] [stdout] test bool_not_in_truthy_or_falsy_mixed ... ok [INFO] [stdout] test general_string_truthiness_undetermined ... ok [INFO] [stdout] test int_general_truthiness_undetermined ... ok [INFO] [stdout] test int_in_mixed ... ok [INFO] [stdout] test int_in_nonnull_mixed ... ok [INFO] [stdout] test lit_int_truthiness ... ok [INFO] [stdout] test empty_array_is_falsy ... ok [INFO] [stdout] test class_like_strings_are_truthy ... ok [INFO] [stdout] test bool_in_mixed ... ok [INFO] [stdout] test lit_string_truthiness ... ok [INFO] [stdout] test mixed_not_in_float ... ok [INFO] [stdout] test mixed_not_in_string ... ok [INFO] [stdout] test mixed_reflexive ... ok [INFO] [stdout] test lit_float_truthiness ... ok [INFO] [stdout] test mixed_not_in_object ... ok [INFO] [stdout] test nonnull_mixed_in_mixed ... ok [INFO] [stdout] test never_in_mixed_variants ... ok [INFO] [stdout] test nonnull_mixed_in_nonnull_mixed ... ok [INFO] [stdout] test mixed_not_in_array ... ok [INFO] [stdout] test mixed_not_in_bool ... ok [INFO] [stdout] test non_empty_list_is_truthy ... ok [INFO] [stdout] test mixed_not_in_int ... ok [INFO] [stdout] test mixed_not_in_null ... ok [INFO] [stdout] test null_not_in_nonnull_mixed ... ok [INFO] [stdout] test object_in_nonnull_mixed ... ok [INFO] [stdout] test positive_int_in_truthy_mixed ... ok [INFO] [stdout] test resource_in_mixed ... ok [INFO] [stdout] test null_not_in_truthy_mixed ... ok [INFO] [stdout] test object_in_mixed ... ok [INFO] [stdout] test objects_are_truthy ... ok [INFO] [stdout] test nonnull_mixed_reflexive ... ok [INFO] [stdout] test null_in_falsy_mixed ... ok [INFO] [stdout] test null_in_mixed ... ok [INFO] [stdout] test truthy_mixed_reflexive ... ok [INFO] [stdout] test truthy_mixed_in_nonnull_mixed ... ok [INFO] [stdout] test truthy_string_in_truthy_mixed ... ok [INFO] [stdout] test resources_are_truthy ... ok [INFO] [stdout] test string_in_mixed ... ok [INFO] [stdout] test string_in_nonnull_mixed ... ok [INFO] [stdout] test true_in_truthy_mixed ... ok [INFO] [stdout] test vanilla_mixed_not_in_nonnull_mixed ... ok [INFO] [stdout] test void_in_mixed ... ok [INFO] [stdout] test truthy_mixed_in_mixed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_null_void_never.rs (/opt/rustwide/target/debug/build/suffete/0e020cfff1a9d851/out/comparator_null_void_never-0e020cfff1a9d851) [INFO] [stdout] [INFO] [stdout] running 32 tests [INFO] [stdout] test never_in_mixed ... ok [INFO] [stdout] test never_in_null ... ok [INFO] [stdout] test never_in_int ... ok [INFO] [stdout] test never_in_array_key ... ok [INFO] [stdout] test never_in_float ... ok [INFO] [stdout] test never_in_numeric ... ok [INFO] [stdout] test never_in_resource ... ok [INFO] [stdout] test never_in_scalar ... ok [INFO] [stdout] test never_in_void ... ok [INFO] [stdout] test never_in_string ... ok [INFO] [stdout] test anything_not_in_never ... ok [INFO] [stdout] test never_in_bool ... ok [INFO] [stdout] test never_in_object ... ok [INFO] [stdout] test never_reflexive ... ok [INFO] [stdout] test null_not_in_bool ... ok [INFO] [stdout] test never_in_array ... ok [INFO] [stdout] test null_not_in_float ... ok [INFO] [stdout] test null_in_mixed ... ok [INFO] [stdout] test null_not_in_int ... ok [INFO] [stdout] test null_in_void ... ok [INFO] [stdout] test null_not_in_array ... ok [INFO] [stderr] Running tests/comparator_object_intersections.rs (/opt/rustwide/target/debug/build/suffete/40eb28cb0c5f3d16/out/comparator_object_intersections-40eb28cb0c5f3d16) [INFO] [stdout] test null_not_in_string ... ok [INFO] [stdout] test null_not_in_never ... ok [INFO] [stdout] test void_in_mixed ... ok [INFO] [stdout] test void_in_null ... ok [INFO] [stdout] test void_not_in_int ... ok [INFO] [stdout] test null_not_in_object ... ok [INFO] [stdout] test null_not_in_scalar ... ok [INFO] [stdout] test null_reflexive ... ok [INFO] [stdout] test void_not_in_never ... ok [INFO] [stdout] test void_not_in_string ... ok [INFO] [stdout] test void_reflexive ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 32 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test static_container_accepts_static_input ... ok [INFO] [stdout] test static_container_rejects_plain_named_input ... ok [INFO] [stdout] test input_must_refine_every_conjunct_of_intersected_container ... ok [INFO] [stdout] test this_container_accepts_only_this_input ... ok [INFO] [stdout] test intersected_input_does_not_refine_unrelated_class ... ok [INFO] [stdout] test this_input_refines_static_container ... ok [INFO] [stdout] test static_input_refines_plain_named_container ... ok [INFO] [stdout] test intersected_input_refines_each_conjunct ... ok [INFO] [stdout] test intersected_input_into_intersected_container_both_directions ... ok [INFO] [stdout] test input_missing_one_conjunct_fails_intersected_container ... ok [INFO] [stdout] test intersected_input_refines_ancestor_of_any_conjunct ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_object_structural.rs (/opt/rustwide/target/debug/build/suffete/dc4c5bd619c5f2e5/out/comparator_object_structural-dc4c5bd619c5f2e5) [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test has_method_refines_object_any ... ok [INFO] [stdout] test distinct_has_methods_dont_refine ... ok [INFO] [stdout] test has_method_reflexive ... ok [INFO] [stdout] test has_method_does_not_refine_named ... ok [INFO] [stdout] test inherited_property_satisfies_has_property ... ok [INFO] [stdout] test inherited_method_satisfies_has_method ... ok [INFO] [stdout] test has_property_reflexive ... ok [INFO] [stdout] test distinct_has_properties_dont_refine ... ok [INFO] [stdout] test named_class_with_more_specific_property_refines_shape ... ok [INFO] [stdout] test named_class_missing_optional_property_accepts_shape ... ok [INFO] [stdout] test named_class_missing_required_property_rejects_shape ... ok [INFO] [stdout] test named_class_with_property_refines_has_property ... ok [INFO] [stdout] test inherited_property_satisfies_shape ... ok [INFO] [stdout] test sealed_container_rejects_input_with_extra_keys ... ok [INFO] [stdout] test named_class_with_wrong_property_type_rejects_shape ... ok [INFO] [stdout] test shape_missing_optional_property_still_refines ... ok [INFO] [stdout] test shape_optional_does_not_refine_required ... ok [INFO] [stdout] test shape_reflexive ... ok [INFO] [stdout] test named_class_without_method_does_not_refine_has_method ... ok [INFO] [stdout] test shape_required_in_optional_container_refines ... ok [INFO] [stdout] test named_class_refines_compatible_shape ... ok [INFO] [stdout] test object_any_does_not_refine_has_method ... ok [INFO] [stdout] test named_class_with_method_refines_has_method ... ok [INFO] [stdout] test unsealed_container_accepts_input_with_extra_keys ... ok [INFO] [stdout] test shape_missing_required_property_does_not_refine ... ok [INFO] [stdout] test shape_with_lit_refines_shape_with_general_via_value_covariance ... ok [INFO] [stdout] test sealed_container_rejects_unsealed_input ... ok [INFO] [stderr] Running tests/comparator_objects.rs (/opt/rustwide/target/debug/build/suffete/a17f3198d8ce30a5/out/comparator_objects-a17f3198d8ce30a5) [INFO] [stdout] test unrelated_class_method_does_not_satisfy ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test class_not_in_int ... ok [INFO] [stdout] test class_implements_multiple_interfaces ... ok [INFO] [stdout] test class_does_not_implement_unrelated_interface ... ok [INFO] [stdout] test class_not_in_sibling ... ok [INFO] [stdout] test class_in_mixed ... ok [INFO] [stdout] test class_implements_inherited_interface ... ok [INFO] [stdout] test class_implements_interface ... ok [INFO] [stdout] test enum_cases_disjoint ... ok [INFO] [stdout] test class_not_in_string ... ok [INFO] [stdout] test enum_not_in_enum_case ... ok [INFO] [stdout] test distinct_enums_disjoint ... ok [INFO] [stdout] test class_reflexive ... ok [INFO] [stdout] test interface_not_in_class ... ok [INFO] [stdout] test many_class_hierarchy_relations ... ok [INFO] [stdout] test enum_reflexive ... ok [INFO] [stdout] test interface_in_parent_interface ... ok [INFO] [stdout] test many_class_hierarchy_non_relations ... ok [INFO] [stdout] test named_in_object_any ... ok [INFO] [stdout] test mock_world_transitive_closure ... ok [INFO] [stdout] test object_any_reflexive ... ok [INFO] [stderr] Running tests/comparator_overlaps.rs (/opt/rustwide/target/debug/build/suffete/7b8f58ed045923fb/out/comparator_overlaps-7b8f58ed045923fb) [INFO] [stdout] test object_any_not_in_named ... ok [INFO] [stdout] test parent_interface_not_in_child ... ok [INFO] [stdout] test class_not_in_object_when_not_a_subtype ... ok [INFO] [stdout] test enum_case_in_enum ... ok [INFO] [stdout] test enum_case_reflexive ... ok [INFO] [stdout] test superclass_not_in_subclass ... ok [INFO] [stdout] test subclass_in_superclass ... ok [INFO] [stdout] test unrelated_classes_disjoint ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 31 tests [INFO] [stdout] test generic_parameter_overlaps_via_constraint ... ok [INFO] [stdout] test distinct_int_literals_disjoint ... ok [INFO] [stdout] test falsy_mixed_disjoint_with_truthy_inputs ... ok [INFO] [stdout] test class_like_string_overlaps_string ... ok [INFO] [stdout] test int_and_float_are_disjoint ... ok [INFO] [stdout] test falsy_mixed_overlaps_falsy_inputs ... ok [INFO] [stdout] test int_ranges_overlap_when_intervals_intersect ... ok [INFO] [stdout] test distinct_kinds_disjoint ... ok [INFO] [stdout] test nonnull_mixed_disjoint_with_null ... ok [INFO] [stdout] test nullable_overlap_via_null_branch ... ok [INFO] [stdout] test lit_int_disjoint_with_range_when_out_of_bounds ... ok [INFO] [stdout] test lit_int_overlaps_range_when_in_bounds ... ok [INFO] [stdout] test mixed_overlaps_anything ... ok [INFO] [stdout] test open_lower_int_overlaps_open_upper_int ... ok [INFO] [stdout] test never_type_disjoint_at_type_level ... ok [INFO] [stdout] test class_string_literal_overlaps_lit_class_string ... ok [INFO] [stdout] test int_ranges_disjoint_when_intervals_separate ... ok [INFO] [stdout] test never_disjoint_with_anything ... ok [INFO] [stdout] test placeholder_overlaps_anything ... ok [INFO] [stdout] test truthy_mixed_overlaps_truthy_inputs ... ok [INFO] [stdout] test truthy_mixed_overlaps_undetermined_inputs ... ok [INFO] [stdout] test unbounded_generic_parameter_overlaps_anything ... ok [INFO] [stdout] test positive_int_disjoint_with_negative_int ... ok [INFO] [stderr] Running tests/comparator_pairs_explicit.rs (/opt/rustwide/target/debug/build/suffete/c1bc431997266a69/out/comparator_pairs_explicit-c1bc431997266a69) [INFO] [stdout] test reflexive_overlap ... ok [INFO] [stdout] test subtype_implies_overlap ... ok [INFO] [stdout] test touching_int_ranges_overlap_at_endpoint ... ok [INFO] [stdout] test truthy_mixed_disjoint_with_falsy_mixed ... ok [INFO] [stdout] test truthy_mixed_disjoint_with_null ... ok [INFO] [stdout] test truthy_mixed_overlaps_int ... ok [INFO] [stdout] test union_disjoint_when_no_pair_overlaps ... ok [INFO] [stdout] test union_overlap_distributes ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 147 tests [INFO] [stdout] test pp_bool_in_mixed ... ok [INFO] [stdout] test pp_array_resource_disjoint ... ok [INFO] [stdout] test pp_a_lit_in_non_empty ... ok [INFO] [stdout] test pp_array_key_array_key ... ok [INFO] [stdout] test pp_array_key_in_scalar ... ok [INFO] [stdout] test pp_array_in_mixed ... ok [INFO] [stdout] test pp_array_key_not_in_int ... ok [INFO] [stdout] test pp_bool_bool ... ok [INFO] [stdout] test pp_bool_not_in_false ... ok [INFO] [stdout] test pp_class_not_in_int ... ok [INFO] [stdout] test pp_bool_in_scalar ... ok [INFO] [stdout] test pp_bool_not_in_true ... ok [INFO] [stdout] test pp_class_in_array_key ... ok [INFO] [stdout] test pp_closed_in_resource ... ok [INFO] [stdout] test pp_class_not_in_lit_class ... ok [INFO] [stdout] test pp_empty_lit_not_in_non_empty ... ok [INFO] [stdout] test pp_float_in_mixed ... ok [INFO] [stdout] test pp_false_false ... ok [INFO] [stdout] test pp_float_in_scalar ... ok [INFO] [stdout] test pp_class_in_str ... ok [INFO] [stdout] test pp_class_in_scalar ... ok [INFO] [stdout] test pp_false_in_bool ... ok [INFO] [stdout] test pp_float_float ... ok [INFO] [stdout] test pp_false_not_in_true ... ok [INFO] [stdout] test pp_float_not_in_array_key ... ok [INFO] [stdout] test pp_float_in_numeric ... ok [INFO] [stdout] test pp_from0_not_in_pos ... ok [INFO] [stdout] test pp_bool_not_in_numeric ... ok [INFO] [stdout] test pp_float_not_in_int ... ok [INFO] [stdout] test pp_from5_in_pos ... ok [INFO] [stdout] test pp_int_in_mixed ... ok [INFO] [stdout] test pp_int_in_numeric ... ok [INFO] [stdout] test pp_int_bool_disjoint ... ok [INFO] [stdout] test pp_int_in_array_key ... ok [INFO] [stdout] test pp_int_array_disjoint ... ok [INFO] [stdout] test pp_float_not_in_lit_float ... ok [INFO] [stdout] test pp_int_in_scalar ... ok [INFO] [stdout] test pp_int_not_in_lit ... ok [INFO] [stdout] test pp_int_int ... ok [INFO] [stdout] test pp_int_not_neg ... ok [INFO] [stdout] test pp_int_not_pos ... ok [INFO] [stdout] test pp_int_not_in_float ... ok [INFO] [stdout] test pp_from0_in_nn ... ok [INFO] [stdout] test pp_int_not_in_never ... ok [INFO] [stdout] test pp_int_null_disjoint ... ok [INFO] [stdout] test pp_int_object_disjoint ... ok [INFO] [stdout] test pp_lit15_not_in_range010 ... ok [INFO] [stdout] test pp_int_not_in_unspec_lit ... ok [INFO] [stdout] test pp_lit5_in_unspec_lit ... ok [INFO] [stdout] test pp_lit_123_in_numeric ... ok [INFO] [stdout] test pp_int_resource_disjoint ... ok [INFO] [stdout] test pp_int_str_disjoint ... ok [INFO] [stdout] test pp_lit_class_in_class ... ok [INFO] [stdout] test pp_lit5_in_range010 ... ok [INFO] [stdout] test pp_lit_disjoint ... ok [INFO] [stdout] test pp_lit_0_not_in_truthy ... ok [INFO] [stdout] test pp_lit_abc_not_in_numeric ... ok [INFO] [stdout] test pp_lit_float_in_float ... ok [INFO] [stdout] test pp_lit_empty_not_in_truthy ... ok [INFO] [stdout] test pp_lit_eq ... ok [INFO] [stdout] test pp_lit_hi_in_lower ... ok [INFO] [stdout] test pp_lit_in_int_neg ... ok [INFO] [stdout] test pp_lit_int_not_in_float ... ok [INFO] [stdout] test pp_lit_str_disjoint ... ok [INFO] [stdout] test pp_lit_in_int_1 ... ok [INFO] [stdout] test pp_lit_float_in_numeric ... ok [INFO] [stdout] test pp_lit_upper_hi_in_upper ... ok [INFO] [stdout] test pp_lit_floats_disjoint ... ok [INFO] [stdout] test pp_lit_hi_in_truthy ... ok [INFO] [stdout] test pp_lit_upper_hi_not_in_lower ... ok [INFO] [stdout] test pp_lit_in_int_0 ... ok [INFO] [stdout] test pp_lower_in_str ... ok [INFO] [stdout] test pp_lower_not_in_upper ... ok [INFO] [stdout] test pp_mixed_mixed ... ok [INFO] [stdout] test pp_mixed_not_in_bool ... ok [INFO] [stdout] test pp_mixed_not_in_float ... ok [INFO] [stdout] test pp_mixed_not_in_int ... ok [INFO] [stdout] test pp_mixed_not_in_null ... ok [INFO] [stdout] test pp_lit_str_eq ... ok [INFO] [stdout] test pp_mixed_not_in_object ... ok [INFO] [stdout] test pp_neg_in_int ... ok [INFO] [stdout] test pp_mixed_not_in_str ... ok [INFO] [stdout] test pp_lit_str_in_str ... ok [INFO] [stdout] test pp_never_in_bool ... ok [INFO] [stdout] test pp_never_in_array ... ok [INFO] [stdout] test pp_neg_in_np ... ok [INFO] [stdout] test pp_never_in_object ... ok [INFO] [stdout] test pp_never_in_mixed ... ok [INFO] [stdout] test pp_never_never ... ok [INFO] [stdout] test pp_never_in_null ... ok [INFO] [stdout] test pp_never_in_resource ... ok [INFO] [stdout] test pp_never_in_str ... ok [INFO] [stdout] test pp_never_in_void ... ok [INFO] [stdout] test pp_null_not_in_never ... ok [INFO] [stdout] test pp_nn_in_int ... ok [INFO] [stdout] test pp_null_not_in_scalar ... ok [INFO] [stdout] test pp_non_empty_in_str ... ok [INFO] [stdout] test pp_np_in_int ... ok [INFO] [stdout] test pp_null_in_mixed ... ok [INFO] [stdout] test pp_numeric_numeric ... ok [INFO] [stdout] test pp_numstr_in_numeric ... ok [INFO] [stdout] test pp_object_array_disjoint ... ok [INFO] [stdout] test pp_object_not_in_scalar ... ok [INFO] [stdout] test pp_object_object ... ok [INFO] [stdout] test pp_object_resource_disjoint ... ok [INFO] [stdout] test pp_open_in_resource ... ok [INFO] [stdout] test pp_open_not_in_closed ... ok [INFO] [stdout] test pp_pos_in_int ... ok [INFO] [stdout] test pp_pos_in_nn ... ok [INFO] [stdout] test pp_never_in_int ... ok [INFO] [stdout] test pp_range_010_not_in_range_05 ... ok [INFO] [stdout] test pp_range_05_in_pos ... ok [INFO] [stdout] test pp_range_05_in_range_010 ... ok [INFO] [stdout] test pp_range_15_in_pos ... ok [INFO] [stdout] test pp_resource_in_mixed ... ok [INFO] [stdout] test pp_resource_not_in_open ... ok [INFO] [stdout] test pp_resource_resource ... ok [INFO] [stdout] test pp_scalar_scalar ... ok [INFO] [stdout] test pp_str_bool_disjoint ... ok [INFO] [stdout] test pp_str_in_array_key ... ok [INFO] [stdout] test pp_never_in_float ... ok [INFO] [stdout] test pp_str_in_mixed ... ok [INFO] [stdout] test pp_str_not_in_lit ... ok [INFO] [stdout] test pp_null_null ... ok [INFO] [stdout] test pp_object_in_mixed ... ok [INFO] [stdout] test pp_object_not_in_never ... ok [INFO] [stdout] test pp_numeric_in_scalar ... ok [INFO] [stdout] test pp_str_in_scalar ... ok [INFO] [stdout] test pp_numeric_in_str ... ok [INFO] [stdout] test pp_pos_neg_disjoint ... ok [INFO] [stdout] test pp_str_null_disjoint ... ok [INFO] [stdout] test pp_string_string ... ok [INFO] [stdout] test pp_to0_in_np ... ok [INFO] [stdout] test pp_to_neg1_in_neg ... ok [INFO] [stdout] test pp_true_not_in_false ... ok [INFO] [stdout] test pp_truthy_in_non_empty ... ok [INFO] [stdout] test pp_truthy_in_str ... ok [INFO] [stdout] test pp_str_not_in_never ... ok [INFO] [stdout] test pp_unspec_lit_in_int ... ok [INFO] [stdout] test pp_upper_in_str ... ok [INFO] [stdout] test pp_void_in_mixed ... ok [INFO] [stdout] test pp_void_void ... ok [INFO] [stdout] test pp_true_true ... ok [INFO] [stdout] test pp_str_not_in_non_empty ... ok [INFO] [stdout] test pp_str_not_in_numeric ... ok [INFO] [stdout] test pp_str_not_in_numeric_atom ... ok [INFO] [stdout] test pp_true_in_bool ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 147 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/comparator_resources.rs (/opt/rustwide/target/debug/build/suffete/fcc371cb8edfeedb/out/comparator_resources-fcc371cb8edfeedb) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test closed_in_resource ... ok [INFO] [stdout] test closed_not_in_open ... ok [INFO] [stdout] test open_in_resource ... ok [INFO] [stdout] test resource_in_mixed ... ok [INFO] [stdout] test open_not_in_closed ... ok [INFO] [stdout] test never_in_resource ... ok [INFO] [stdout] test open_reflexive ... ok [INFO] [stdout] test closed_reflexive ... ok [INFO] [stdout] test resource_not_in_array ... ok [INFO] [stdout] test resource_not_in_string ... ok [INFO] [stdout] test resource_reflexive ... ok [INFO] [stdout] test resource_not_in_closed ... ok [INFO] [stdout] test resource_not_in_int ... ok [INFO] [stdout] test resource_not_in_object ... ok [INFO] [stdout] test resource_not_in_open ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 71 tests [INFO] [stderr] Running tests/comparator_scalars.rs (/opt/rustwide/target/debug/build/suffete/b78b6b4280c9e7e1/out/comparator_scalars-b78b6b4280c9e7e1) [INFO] [stdout] test bool_not_in_numeric ... ok [INFO] [stdout] test bool_not_in_array_key ... ok [INFO] [stdout] test array_key_not_in_string ... ok [INFO] [stdout] test array_key_in_scalar ... ok [INFO] [stdout] test bool_in_scalar ... ok [INFO] [stdout] test array_key_not_in_int ... ok [INFO] [stdout] test bool_not_in_false ... ok [INFO] [stdout] test array_not_in_scalar ... ok [INFO] [stdout] test bool_not_in_true ... ok [INFO] [stdout] test class_string_in_string ... ok [INFO] [stdout] test class_like_string_in_array_key ... ok [INFO] [stdout] test cross_family_disjoint_int_string ... ok [INFO] [stdout] test cross_family_disjoint_string_bool ... ok [INFO] [stdout] test distinct_lit_floats_disjoint ... ok [INFO] [stdout] test distinct_lit_strings_disjoint ... ok [INFO] [stdout] test equal_lit_ints_subtype ... ok [INFO] [stdout] test false_in_bool ... ok [INFO] [stdout] test false_in_scalar ... ok [INFO] [stdout] test false_not_in_true ... ok [INFO] [stdout] test float_in_float ... ok [INFO] [stdout] test float_in_numeric ... ok [INFO] [stdout] test float_in_scalar ... ok [INFO] [stdout] test float_not_in_array_key ... ok [INFO] [stdout] test float_not_in_lit_float ... ok [INFO] [stdout] test cross_family_disjoint_int_bool ... ok [INFO] [stdout] test int_and_float_are_disjoint ... ok [INFO] [stdout] test int_in_array_key ... ok [INFO] [stdout] test distinct_lit_ints_disjoint ... ok [INFO] [stdout] test int_in_int ... ok [INFO] [stdout] test int_in_scalar ... ok [INFO] [stdout] test int_not_in_lit_int ... ok [INFO] [stdout] test lit_class_string_in_class_string ... ok [INFO] [stdout] test lit_class_string_in_string ... ok [INFO] [stdout] test lit_float_in_float ... ok [INFO] [stdout] test lit_float_in_scalar ... ok [INFO] [stdout] test lit_int_in_array_key ... ok [INFO] [stdout] test class_string_in_scalar ... ok [INFO] [stdout] test lit_int_in_int ... ok [INFO] [stdout] test cross_family_disjoint_float_bool ... ok [INFO] [stdout] test lit_int_in_numeric ... ok [INFO] [stdout] test lit_int_in_scalar ... ok [INFO] [stdout] test lit_int_lit_float_disjoint ... ok [INFO] [stdout] test lit_string_in_array_key ... ok [INFO] [stdout] test lit_string_in_scalar ... ok [INFO] [stdout] test lit_string_in_string ... ok [INFO] [stdout] test numeric_lit_string_in_numeric ... ok [INFO] [stdout] test non_numeric_lit_string_not_in_numeric ... ok [INFO] [stdout] test numeric_not_in_float ... ok [INFO] [stdout] test numeric_not_in_int ... ok [INFO] [stdout] test numeric_not_in_string ... ok [INFO] [stdout] test numeric_string_in_numeric ... ok [INFO] [stdout] test resource_not_in_scalar ... ok [INFO] [stdout] test scalar_not_in_array_key ... ok [INFO] [stdout] test scalar_not_in_int ... ok [INFO] [stdout] test scalar_not_in_numeric ... ok [INFO] [stdout] test lit_float_in_numeric ... ok [INFO] [stdout] test object_not_in_scalar ... ok [INFO] [stdout] test scalar_not_in_string ... ok [INFO] [stdout] test string_float_disjoint ... ok [INFO] [stdout] test string_in_array_key ... ok [INFO] [stdout] test string_in_scalar ... ok [INFO] [stdout] test string_not_in_lit_string ... ok [INFO] [stdout] test string_not_in_numeric ... ok [INFO] [stdout] test true_in_bool ... ok [INFO] [stdout] test true_in_scalar ... ok [INFO] [stdout] test true_not_in_false ... ok [INFO] [stdout] test null_not_in_scalar ... ok [INFO] [stdout] test numeric_in_scalar ... ok [INFO] [stdout] test reflexivity_all_scalars ... ok [INFO] [stdout] test string_in_string ... ok [INFO] [stdout] test int_in_numeric ... ok [INFO] [stdout] [INFO] [stderr] Running tests/comparator_smoke.rs (/opt/rustwide/target/debug/build/suffete/9736c21d900180ea/out/comparator_smoke-9736c21d900180ea) [INFO] [stdout] test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test smoke_int_int ... ok [INFO] [stdout] test smoke_int_not_in_string ... ok [INFO] [stdout] test smoke_int_in_mixed ... ok [INFO] [stdout] test smoke_never_in_anything ... ok [INFO] [stderr] Running tests/comparator_strings.rs (/opt/rustwide/target/debug/build/suffete/c9b53f3164f48722/out/comparator_strings-c9b53f3164f48722) [INFO] [stdout] test smoke_lit_int_in_int ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 44 tests [INFO] [stdout] test empty_lit_not_in_non_empty ... ok [INFO] [stdout] test falsy_lit_empty_not_in_truthy ... ok [INFO] [stdout] test empty_lit_not_in_non_empty_unspec_lit ... ok [INFO] [stdout] test distinct_lits_are_disjoint ... ok [INFO] [stdout] test falsy_lit_zero_not_in_truthy ... ok [INFO] [stdout] test enum_string_in_string ... ok [INFO] [stdout] test class_string_not_in_lit_class_string ... ok [INFO] [stdout] test lit_in_unspec_lit ... ok [INFO] [stdout] test interface_string_in_string ... ok [INFO] [stdout] test lit_reflexive_for_many_values ... ok [INFO] [stdout] test lits_with_diff_case_disjoint ... ok [INFO] [stdout] test lower_lits_not_in_upper_string ... ok [INFO] [stdout] test lower_not_in_upper ... ok [INFO] [stdout] test non_empty_in_string ... ok [INFO] [stdout] test non_empty_lit_in_non_empty ... ok [INFO] [stdout] test non_empty_lit_in_non_empty_unspec_lit ... ok [INFO] [stdout] test non_empty_not_in_numeric ... ok [INFO] [stdout] test non_empty_not_in_truthy ... ok [INFO] [stdout] test non_empty_unspec_lit_in_non_empty_string ... ok [INFO] [stdout] test lower_in_string ... ok [INFO] [stdout] test lit_class_string_in_class_string ... ok [INFO] [stdout] test non_numeric_lits_not_in_numeric_string ... ok [INFO] [stdout] test numeric_in_string ... ok [INFO] [stdout] test numeric_in_non_empty_string ... ok [INFO] [stdout] test numeric_lits_in_numeric_string ... ok [INFO] [stdout] test many_distinct_lits_disjoint ... ok [INFO] [stdout] test lower_lits_in_lower_string ... ok [INFO] [stdout] test string_contains_every_literal ... ok [INFO] [stdout] test string_does_not_contain_specific_literal ... ok [INFO] [stdout] test string_not_in_non_empty ... ok [INFO] [stdout] test string_not_in_numeric_string ... ok [INFO] [stdout] test string_not_in_truthy ... ok [INFO] [stdout] test string_not_in_unspec_lit_string ... ok [INFO] [stdout] test string_reflexive ... ok [INFO] [stdout] test truthy_in_non_empty ... ok [INFO] [stdout] test truthy_in_string ... ok [INFO] [stdout] test truthy_lits_in_truthy_string ... ok [INFO] [stdout] test unspec_lit_not_in_non_empty ... ok [INFO] [stdout] test upper_lits_not_in_lower_string ... ok [INFO] [stdout] test upper_not_in_lower ... ok [INFO] [stdout] test unspec_lit_string_in_string ... ok [INFO] [stdout] test upper_in_string ... ok [INFO] [stdout] test upper_lits_in_upper_string ... ok [INFO] [stderr] Running tests/comparator_unions.rs (/opt/rustwide/target/debug/build/suffete/bf2693a301a212f4/out/comparator_unions-bf2693a301a212f4) [INFO] [stdout] test class_string_in_string ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test int_or_string_in_int_or_string_or_float ... ok [INFO] [stdout] test int_in_int_or_string ... ok [INFO] [stdout] test int_or_string_not_in_int ... ok [INFO] [stdout] test ignore_null_flag_skips_null_in_input ... ok [INFO] [stdout] test int_or_string_in_int_or_string ... ok [INFO] [stdout] test float_not_in_int_or_string ... ok [INFO] [stdout] test anything_in_mixed_union ... ok [INFO] [stdout] test ignore_false_flag_skips_false_in_input ... ok [INFO] [stdout] test lit_int_in_int_or_string ... ok [INFO] [stdout] test lit_string_in_int_or_string ... ok [INFO] [stdout] test many_lits_in_int ... ok [INFO] [stdout] test many_lits_in_array_key ... ok [INFO] [stdout] test never_in_any_union ... ok [INFO] [stdout] test nullable_int_contains_int_and_null ... ok [INFO] [stdout] test nullable_int_does_not_contain_string ... ok [INFO] [stdout] test nullable_string_in_nullable_array_key ... ok [INFO] [stdout] test order_independent_unions ... ok [INFO] [stdout] test singleton_union_reflexive ... ok [INFO] [stdout] test string_in_int_or_string ... ok [INFO] [stdout] test three_way_union_membership ... ok [INFO] [stdout] test union_with_lit_subtypes_general ... ok [INFO] [stdout] test union_with_three_atoms_subtypes ... ok [INFO] [stdout] test union_string_lits_subtypes_string ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/compatibility_basic.rs (/opt/rustwide/target/debug/build/suffete/485f190413bfd296/out/compatibility_basic-485f190413bfd296) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test cross_family_object_vs_int_incompatible_at_runtime ... ok [INFO] [stdout] test array_key_and_string_compatible_under_both ... ok [INFO] [stdout] test has_method_runtime_compatible_with_any_object ... ok [INFO] [stdout] test intersection_runtime_compatible_with_each_conjunct ... ok [INFO] [stdout] test never_and_anything_incompatible_under_both ... ok [INFO] [stdout] test primitives_int_and_string_are_incompatible_under_both ... ok [INFO] [stdout] test object_any_runtime_compatible_with_any_named_class ... ok [INFO] [stdout] test descendant_classes_compatible_under_both ... ok [INFO] [stdout] test cell_int_and_cell_string_diverge_static_vs_runtime ... ok [INFO] [stdout] test enum_and_named_class_unrelated_incompatible ... ok [INFO] [stdout] test numeric_and_string_compatible_under_both ... ok [INFO] [stdout] test union_distribution_static_and_runtime ... ok [INFO] [stdout] test cell_int_and_box_string_unrelated_classes_incompatible ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/expand_aliases.rs (/opt/rustwide/target/debug/build/suffete/b270991dfa578a91/out/expand_aliases-b270991dfa578a91) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test alias_to_union_flat_merges ... ok [INFO] [stdout] test alias_inside_object_type_args_expands ... ok [INFO] [stdout] test alias_inside_keyed_array_value_expands ... ok [INFO] [stdout] test alias_inside_list_expands ... ok [INFO] [stdout] test alias_inside_iterable_expands ... ok [INFO] [stdout] test alias_to_int_expands ... ok [INFO] [stdout] test alias_preserves_flow_flags ... ok [INFO] [stdout] test alias_to_alias_chain_expands_to_terminal ... ok [INFO] [stdout] test deeply_nested_alias_in_box_of_list_expands ... ok [INFO] [stdout] test expanded_handle_is_stable ... ok [INFO] [stdout] test fully_structural_input_returns_same_handle ... ok [INFO] [stdout] test nested_alias_expands_recursively ... ok [INFO] [stdout] test no_alias_no_change ... ok [INFO] [stdout] test unknown_alias_passes_through_unchanged ... ok [INFO] [stderr] Running tests/expand_context.rs (/opt/rustwide/target/debug/build/suffete/e7d63f77e0910681/out/expand_context-e7d63f77e0910681) [INFO] [stdout] test distinct_aliases_in_union_each_expand ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 18 tests [INFO] [stdout] test conditional_widens_to_union_when_undecidable ... ok [INFO] [stdout] test conditional_passes_through_when_eval_off ... ok [INFO] [stdout] test is_this_flag_resolved_with_static_class ... ok [INFO] [stdout] test is_static_flag_resolved_with_static_class ... ok [INFO] [stdout] test conditional_picks_otherwise_when_test_disjoint ... ok [INFO] [stdout] test keyword_in_conditional_branch_resolves ... ok [INFO] [stdout] test conditional_picks_then_branch_when_test_passes ... ok [INFO] [stdout] test keyword_inside_generic_object_args_resolves ... ok [INFO] [stdout] test expand_default_wrapper_uses_default_context ... ok [INFO] [stdout] test keyword_without_context_passes_through ... ok [INFO] [stdout] test negated_conditional_swaps_branches_on_disjoint ... ok [INFO] [stdout] test conditional_with_alias_inside_branch_resolves_after_pick ... ok [INFO] [stdout] test parent_keyword_substitutes_with_parent_class ... ok [INFO] [stdout] test plain_named_object_unaffected_by_context ... ok [INFO] [stdout] test self_keyword_substitutes_with_self_class ... ok [INFO] [stdout] test static_keyword_substitutes_with_static_class ... ok [INFO] [stdout] test keyword_inside_list_resolves ... ok [INFO] [stdout] test negated_conditional_swaps_branches_on_pass ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/expand_derived.rs (/opt/rustwide/target/debug/build/suffete/461b24f8fac5b499/out/expand_derived-461b24f8fac5b499) [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test index_access_on_sealed_shape_with_unknown_key_returns_never ... ok [INFO] [stdout] test index_access_on_sealed_shape_with_known_key_returns_value ... ok [INFO] [stdout] test index_access_on_iterable_returns_value_type ... ok [INFO] [stdout] test int_mask_of_three_literals_yields_eight_combinations ... ok [INFO] [stdout] test int_mask_of_two_literals_yields_four_combinations ... ok [INFO] [stdout] test index_access_on_unsealed_keyed_array_returns_value_param ... ok [INFO] [stdout] test int_mask_with_non_literal_operand_widens_to_mixed ... ok [INFO] [stdout] test index_access_object_shape_with_unknown_literal_key_is_never ... ok [INFO] [stdout] test int_mask_of_widens_target_to_int_mask_set ... ok [INFO] [stdout] test index_access_on_list_with_literal_index_returns_known_element ... ok [INFO] [stdout] test index_access_object_shape_with_non_literal_key_widens_to_value_union ... ok [INFO] [stdout] test index_access_object_shape_with_literal_key_returns_property_type ... ok [INFO] [stdout] test key_of_object_shape_is_union_of_property_name_literals ... ok [INFO] [stdout] test key_of_iterable_is_key_type ... ok [INFO] [stdout] test key_of_keyed_array_with_param_is_key_param ... ok [INFO] [stdout] test key_of_sealed_keyed_shape_is_union_of_literal_keys ... ok [INFO] [stdout] test key_of_empty_object_shape_is_never ... ok [INFO] [stdout] test key_of_non_container_is_mixed ... ok [INFO] [stdout] test nested_derived_inside_alias_resolves ... ok [INFO] [stdout] test new_passes_through_for_now ... ok [INFO] [stdout] test properties_of_passes_through_for_now ... ok [INFO] [stdout] test template_type_resolves_to_constraint ... ok [INFO] [stdout] test template_type_unknown_passes_through ... ok [INFO] [stdout] test key_of_unsealed_list_is_non_negative_int ... ok [INFO] [stdout] test value_of_iterable_is_value_type ... ok [INFO] [stdout] test value_of_keyed_array_with_param_is_value_param ... ok [INFO] [stdout] test value_of_list_is_element_type ... ok [INFO] [stdout] test value_of_object_shape_is_union_of_property_types ... ok [INFO] [stdout] test key_of_sealed_list_is_index_range ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/expand_granular.rs (/opt/rustwide/target/debug/build/suffete/97263d7bd1f76e2b/out/expand_granular-97263d7bd1f76e2b) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test class_constant_resolves_when_flag_on ... ok [INFO] [stdout] test alias_resolves_when_eval_aliases_on ... ok [INFO] [stdout] test function_is_final_collapses_static_modality_without_static_class ... ok [INFO] [stdout] test global_constant_resolves_when_flag_on ... ok [INFO] [stdout] test alias_passes_through_when_eval_aliases_off ... ok [INFO] [stdout] test template_constraint_substituted_when_flag_on ... ok [INFO] [stdout] test template_passes_through_when_constraint_flag_off ... ok [INFO] [stdout] test class_constant_passes_through_when_flag_off ... ok [INFO] [stdout] test unfilled_generic_object_filled_when_flag_on ... ok [INFO] [stdout] test global_constant_passes_through_when_flag_off ... ok [INFO] [stdout] test static_modality_preserved_when_function_is_final_off ... ok [INFO] [stdout] test unfilled_generic_object_unchanged_when_flag_off ... ok [INFO] [stdout] test unfilled_generic_object_uses_declared_upper_bound_when_present ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/expand_properties_and_new.rs (/opt/rustwide/target/debug/build/suffete/b5d1b355dc5a172b/out/expand_properties_and_new-b5d1b355dc5a172b) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test new_with_unresolved_target_passes_through ... ok [INFO] [stdout] test properties_of_class_with_two_properties_returns_shape ... ok [INFO] [stdout] test properties_of_class_with_no_properties_returns_empty_shape ... ok [INFO] [stdout] test properties_of_inside_alias_resolves ... ok [INFO] [stdout] test new_with_generic_class_fills_args_with_constraints_or_mixed ... ok [INFO] [stdout] test properties_of_target_resolves_through_alias_first ... ok [INFO] [stdout] test properties_of_subclass_overrides_inherited_property ... ok [INFO] [stdout] test properties_of_with_public_filter_drops_private ... ok [INFO] [stdout] test new_with_generic_class_uses_template_upper_bound ... ok [INFO] [stdout] test properties_of_walks_inheritance ... ok [INFO] [stdout] test new_with_non_generic_class_returns_object ... ok [INFO] [stdout] test new_with_class_string_literal_returns_named_object ... ok [INFO] [stdout] test properties_of_unknown_class_yields_empty_shape ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s [INFO] [stdout] [INFO] [stderr] Running tests/expand_references.rs (/opt/rustwide/target/debug/build/suffete/4a9b86fe4aa8467a/out/expand_references-4a9b86fe4aa8467a) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test global_reference_resolves_to_constant_type ... ok [INFO] [stdout] test member_reference_resolves_to_constant_type ... ok [INFO] [stdout] test member_reference_to_union_constant_flat_merges ... ok [INFO] [stdout] test member_reference_inside_iterable_expands ... ok [INFO] [stdout] test intersected_reference_resolves_to_intersected_object ... ok [INFO] [stdout] test member_reference_inherits_from_ancestor ... ok [INFO] [stdout] test chained_alias_then_reference_resolves ... ok [INFO] [stdout] test member_reference_with_wildcard_passes_through ... ok [INFO] [stdout] test nested_alias_inside_reference_type_args_expands ... ok [INFO] [stdout] test symbol_reference_with_type_args_resolves_to_generic_object ... ok [INFO] [stdout] test unknown_global_reference_passes_through ... ok [INFO] [stdout] test unknown_member_reference_passes_through ... ok [INFO] [stdout] test reference_inside_list_expands ... ok [INFO] [stdout] test symbol_reference_resolves_to_named_object ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/hierarchy_basic.rs (/opt/rustwide/target/debug/build/suffete/9c7db0110084c468/out/hierarchy_basic-9c7db0110084c468) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test direct_edge_returns_registered_args ... ok [INFO] [stdout] test transitive_two_step_concrete_args_compose ... ok [INFO] [stdout] test missing_pair_returns_none ... ok [INFO] [stdout] test last_added_edge_wins_on_duplicate ... ok [INFO] [stdout] test transitive_three_step_chain ... ok [INFO] [stdout] test nested_template_in_parent_args_substitutes ... ok [INFO] [stdout] test iter_yields_every_pair ... ok [INFO] [stdout] test args_returns_full_slice ... ok [INFO] [stdout] test transitive_two_step_template_threading ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/id.rs (/opt/rustwide/target/debug/build/suffete/5121c6234b71902a/out/id-5121c6234b71902a) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test type_id_carries_flags_and_meta_independently_of_arena_slot ... ok [INFO] [stdout] test element_id_roundtrips_kind_and_slot ... ok [INFO] [stdout] test ids_are_niche_optimized ... ok [INFO] [stdout] test well_known_int_family_slots_are_ordered ... ok [INFO] [stdout] test well_known_trivial_elements_have_trivial_kind ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/inspect_basic.rs (/opt/rustwide/target/debug/build/suffete/c616702654bfa056/out/inspect_basic-c616702654bfa056) [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stdout] test all_top_level_match ... ok [INFO] [stdout] test any_short_circuits_after_first_match ... ok [INFO] [stdout] test any_descends_into_iterable_key_and_value ... ok [INFO] [stdout] test any_descends_into_object_type_args ... ok [INFO] [stdout] test all_top_level_no_match ... ok [INFO] [stdout] test all_descends_into_list_element_failure ... ok [INFO] [stdout] test any_descends_into_list_element ... ok [INFO] [stdout] test any_top_level_no_match ... ok [INFO] [stdout] test any_descends_into_generic_parameter_constraint ... ok [INFO] [stderr] Running tests/intersections.rs (/opt/rustwide/target/debug/build/suffete/db3171c1c448c799/out/intersections-db3171c1c448c799) [INFO] [stdout] test any_top_level_match ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test object_can_be_intersected_but_has_no_intersections_when_unset ... ok [INFO] [stdout] test has_property_intersection_via_wrapper ... ok [INFO] [stdout] test object_with_intersections_returns_them ... ok [INFO] [stdout] test intersection_types_descend_via_inspect ... ok [INFO] [stdout] test has_method_intersection_via_wrapper ... ok [INFO] [stdout] test primitive_kinds_have_no_intersections_by_default ... ok [INFO] [stdout] test object_shape_intersection_via_wrapper ... ok [INFO] [stdout] test intersection_round_trips_through_serializable ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/meet_basic.rs (/opt/rustwide/target/debug/build/suffete/3e5d0a92072f3c99/out/meet_basic-3e5d0a92072f3c99) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test meet_with_mixed_yields_other ... ok [INFO] [stdout] test meet_with_never_yields_never ... ok [INFO] [stdout] test class_like_string_meet_string_picks_class_like_string ... ok [INFO] [stdout] test distinct_kinds_meet_to_never ... ok [INFO] [stdout] test distinct_int_literals_meet_to_never ... ok [INFO] [stdout] test lit_int_in_range_meets_to_lit ... ok [INFO] [stdout] test lit_int_outside_range_meets_to_never ... ok [INFO] [stdout] test nullable_int_meet_int_drops_null ... ok [INFO] [stdout] test non_empty_lowercase_meet_non_empty_uppercase_is_never ... ok [INFO] [stdout] test open_lower_meets_open_upper_into_bounded_range ... ok [INFO] [stdout] test intersected_partition_cover_with_shared_head ... ok [INFO] [stdout] test overlapping_int_ranges_meet_to_intersection ... ok [INFO] [stdout] test union_meet_yields_union_when_multiple_pairs_survive ... ok [INFO] [stdout] test touching_int_ranges_collapse_to_literal ... ok [INFO] [stdout] test union_meet_distributes ... ok [INFO] [stdout] test unrelated_named_objects_compose_intersection ... ok [INFO] [stdout] test nominal_subsumption_meet_picks_descendant ... ok [INFO] [stdout] test reflexive_meet ... ok [INFO] [stdout] test subsumption_picks_more_specific_side ... ok [INFO] [stderr] Running tests/meet_precision.rs (/opt/rustwide/target/debug/build/suffete/a7d96bf0e4ba7e16/out/meet_precision-a7d96bf0e4ba7e16) [INFO] [stdout] test plain_lowercase_meet_uppercase_is_empty_string ... ok [INFO] [stdout] test disjoint_int_ranges_meet_to_never ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 45 tests [INFO] [stdout] test array_key_meet_string_is_string ... ok [INFO] [stdout] test associativity_a_numeric_meet_a_intersected_has_method_meet_a_a ... ok [INFO] [stdout] test associativity_array_int_int_meet_via_arb_failing_case ... ok [INFO] [stdout] test class_string_kinds_disjoint_meet_is_never ... ok [INFO] [stdout] test class_string_descendant_meet_is_descendant ... ok [INFO] [stdout] test callable_meet_with_compatible_signatures_intersects_return_unions_params ... ok [INFO] [stdout] test class_string_unrelated_constraints_meet_is_never ... ok [INFO] [stdout] test distinct_enum_cases_meet_is_never ... ok [INFO] [stdout] test distinct_enums_meet_is_never ... ok [INFO] [stdout] test empty_array_meet_array_int_int_collapses_to_empty ... ok [INFO] [stdout] test empty_array_meet_list_int_is_empty_array ... ok [INFO] [stdout] test enum_intersected_with_unrelated_class_is_uninhabited ... ok [INFO] [stdout] test class_string_unrelated_meet_is_never ... ok [INFO] [stdout] test contravariant_a_object_meet_a_int_under_contravariant_t_subsumes_to_more_specific ... ok [INFO] [stdout] test distinct_templates_have_no_meet_rule_and_collapse_to_never ... ok [INFO] [stdout] test enum_meet_enum_case_is_case ... ok [INFO] [stdout] test iterable_int_a_meet_iterable_int_b_keys_intersect ... ok [INFO] [stdout] test final_class_intersected_with_unrelated_is_uninhabited_in_meet ... ok [INFO] [stdout] test array_key_meet_int_is_int ... ok [INFO] [stdout] test iterable_int_int_meet_iterable_int_string_is_iterable_int_never ... ok [INFO] [stdout] test has_method_meet_has_method_composes ... ok [INFO] [stdout] test keyed_array_disjoint_keys_meet_is_combined_shape ... ok [INFO] [stdout] test list_int_meet_list_string_is_list_never ... ok [INFO] [stdout] test nonnull_mixed_meet_null_is_never ... ok [INFO] [stdout] test numeric_meet_string_is_numeric_string ... ok [INFO] [stdout] test open_resource_meet_closed_resource_is_never ... ok [INFO] [stdout] test refines_a_descending_c_int_under_contravariant_t ... ok [INFO] [stdout] test list_intersection_overlap_consistency_arb_case ... ok [INFO] [stdout] test lower_meet_non_empty_is_lower_non_empty ... ok [INFO] [stdout] test named_object_with_method_meet_has_method_passes_when_world_confirms ... ok [INFO] [stdout] test template_with_int_meet_string_is_impossible ... ok [INFO] [stdout] test same_template_meet_with_overlapping_constraints_intersects_them ... ok [INFO] [stdout] test scalar_meet_bool_is_bool ... ok [INFO] [stdout] test template_with_int_or_string_meet_string_narrows_constraint_to_string ... ok [INFO] [stdout] test template_with_int_meet_int_is_redundant_keeps_template ... ok [INFO] [stdout] test truthy_meet_numeric_is_truthy_numeric ... ok [INFO] [stdout] test truthy_mixed_meet_falsy_mixed_is_never ... ok [INFO] [stdout] test truthy_mixed_meet_int_is_truthy_int_set ... ok [INFO] [stdout] test unrelated_objects_no_finality_overlap_is_open ... ok [INFO] [stdout] test upper_meet_non_empty_is_upper_non_empty ... ok [INFO] [stdout] test template_with_int_or_string_meet_int_narrows_constraint_to_int ... ok [INFO] [stdout] test invariant_a_associativity_arb_failing_case ... ok [INFO] [stdout] test associativity_array_bool_int_meet_via_arb_failing_case ... ok [INFO] [stderr] Running tests/meet_soundness.rs (/opt/rustwide/target/debug/build/suffete/044c17820d17c1ad/out/meet_soundness-044c17820d17c1ad) [INFO] [stdout] test list_int_meet_keyed_int_int_is_list_int ... ok [INFO] [stdout] test lower_meet_upper_keeps_only_empty ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 45 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 36 tests [INFO] [stdout] test class_string_refines_truthy_mixed ... ok [INFO] [stdout] test falsy_mixed_meet_bool_is_false ... ok [INFO] [stdout] test empty_array_refines_falsy_mixed ... ok [INFO] [stdout] test falsy_mixed_meet_callable_is_never ... ok [INFO] [stdout] test falsy_mixed_meet_float_is_zero_only ... ok [INFO] [stdout] test callable_refines_truthy_mixed ... ok [INFO] [stdout] test empty_list_singleton_refines_falsy_mixed ... ok [INFO] [stdout] test falsy_mixed_meet_class_like_string_is_never ... ok [INFO] [stdout] test falsy_mixed_meet_iterable_is_never ... ok [INFO] [stdout] test falsy_mixed_meet_list_is_empty_list_only ... ok [INFO] [stdout] test falsy_mixed_meet_unsealed_array_is_empty_array_only ... ok [INFO] [stdout] test falsy_mixed_meet_uppercase_string_excludes_truthy_uppercase_literals ... ok [INFO] [stdout] test falsy_mixed_meet_numeric_string_includes_zero_excludes_one ... ok [INFO] [stdout] test falsy_mixed_meet_object_is_never ... ok [INFO] [stdout] test intersected_mixed_meet_drops_no_constraint_axis ... ok [INFO] [stdout] test falsy_mixed_meet_int_is_zero_only ... ok [INFO] [stdout] test intersected_int_excluding_zero_refines_truthy_mixed ... ok [INFO] [stdout] test mixed_meet_preserves_is_empty_flag ... ok [INFO] [stdout] test mixed_with_is_empty_implies_falsy_truthiness ... ok [INFO] [stdout] test nonnull_mixed_meet_null_is_never ... ok [INFO] [stdout] test mixed_meet_preserves_is_isset_from_loop_flag ... ok [INFO] [stdout] test sealed_list_with_required_never_is_uninhabited ... ok [INFO] [stdout] test truthy_mixed_meet_int_excludes_zero ... ok [INFO] [stdout] test resource_refines_truthy_mixed ... ok [INFO] [stdout] test truthy_mixed_meet_literal_empty_string_is_never ... ok [INFO] [stdout] test truthy_mixed_meet_bool_is_true ... ok [INFO] [stdout] test truthy_mixed_meet_literal_zero_string_is_never ... ok [INFO] [stdout] test falsy_mixed_meet_resource_is_never ... ok [INFO] [stdout] test truthy_mixed_meet_lowercase_string_excludes_falsy_literals ... ok [INFO] [stdout] test falsy_mixed_meet_truthy_string_is_never ... ok [INFO] [stdout] test falsy_mixed_meet_non_empty_list_is_never ... ok [INFO] [stdout] test truthy_mixed_meet_non_null_mixed_is_truthy_non_null ... ok [INFO] [stdout] test truthy_mixed_meet_object_passes_through ... ok [INFO] [stdout] test truthy_mixed_meet_truthy_mixed_is_truthy ... ok [INFO] [stdout] test falsy_mixed_meet_non_empty_string_excludes_empty_literal ... ok [INFO] [stdout] test intersected_truthy_int_in_falsy_mixed_meet_is_never ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/narrow_outcomes.rs (/opt/rustwide/target/debug/build/suffete/e181332c797f8f01/out/narrow_outcomes-e181332c797f8f01) [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test meet_compute_unwraps_redundant ... ok [INFO] [stdout] test meet_narrow_redundant_when_input_equals_narrowing ... ok [INFO] [stdout] test meet_narrow_int_range_overlap_is_narrowed ... ok [INFO] [stdout] test meet_narrow_narrowed_when_strictly_smaller ... ok [INFO] [stdout] test meet_narrow_impossible_when_disjoint ... ok [INFO] [stdout] test meet_compute_returns_never_when_impossible ... ok [INFO] [stdout] test meet_narrow_impossible_for_unrelated_named_objects_with_no_descend ... ok [INFO] [stdout] test meet_narrow_narrowed_via_subsumption_other_direction ... ok [INFO] [stdout] test meet_narrow_int_range_disjoint_is_impossible ... ok [INFO] [stdout] test meet_narrow_redundant_when_input_refines_narrowing ... ok [INFO] [stdout] test subtract_compute_returns_never_when_impossible ... ok [INFO] [stdout] test subtract_narrow_impossible_when_input_equals_narrowing ... ok [INFO] [stdout] test meet_narrow_unrelated_final_objects_are_impossible ... ok [INFO] [stdout] test meet_outcome_into_type_round_trip ... ok [INFO] [stdout] test subtract_outcome_into_type_round_trip ... ok [INFO] [stdout] test subtract_int_minus_zero_splits_into_negative_and_positive_ranges ... ok [INFO] [stdout] test subtract_narrow_impossible_when_int_range_fully_covered ... ok [INFO] [stdout] test subtract_narrow_narrowed_for_int_range_split ... ok [INFO] [stdout] test subtract_narrow_narrowed_when_strictly_smaller ... ok [INFO] [stdout] test subtract_narrow_redundant_when_disjoint ... ok [INFO] [stdout] test subtract_compute_unwraps_redundant ... ok [INFO] [stdout] test subtract_narrow_impossible_when_input_refines_narrowing ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s [INFO] [stdout] [INFO] [stderr] Running tests/predicates_basic.rs (/opt/rustwide/target/debug/build/suffete/5f2b39a61c38f352/out/predicates_basic-5f2b39a61c38f352) [INFO] [stdout] [INFO] [stdout] running 39 tests [INFO] [stdout] test callable_always_truthy ... ok [INFO] [stdout] test contains_mixed_top_level_only ... ok [INFO] [stdout] test contains_object_in_union ... ok [INFO] [stdout] test class_like_string_truthy ... ok [INFO] [stdout] test contains_null_in_nullable ... ok [INFO] [stdout] test contains_template_anywhere_finds_nested ... ok [INFO] [stdout] test contains_string_in_union ... ok [INFO] [stdout] test contains_mixed_anywhere_walks_into_object_args ... ok [INFO] [stdout] test contains_unresolved_anywhere_finds_alias_in_list ... ok [INFO] [stdout] test could_be_falsy_excludes_never_but_includes_void ... ok [INFO] [stdout] test empty_array_falsy ... ok [INFO] [stdout] test empty_string_falsy_truthy_string_truthy ... ok [INFO] [stdout] test is_array_covers_list_and_keyed ... ok [INFO] [stdout] test int_range_truthy_when_excludes_zero ... ok [INFO] [stdout] test could_be_truthy_excludes_never_and_void ... ok [INFO] [stdout] test could_be_truthy_for_general_int ... ok [INFO] [stdout] test is_int_true_for_union_of_int_variants ... ok [INFO] [stdout] test is_literal_false_for_general_forms ... ok [INFO] [stdout] test is_bool_includes_true_false ... ok [INFO] [stdout] test is_callable_strict ... ok [INFO] [stdout] test is_constant_foldable_requires_singleton ... ok [INFO] [stdout] test is_literal_true_for_known_values ... ok [INFO] [stdout] test is_scalar_dominator_and_members ... ok [INFO] [stdout] test is_mixed_true_only_for_vanilla_mixed ... ok [INFO] [stdout] test is_never_true_only_for_type_never ... ok [INFO] [stdout] test is_singleton_and_is_union ... ok [INFO] [stdout] test null_void_falsy ... ok [INFO] [stdout] test nullable_int_could_be_both ... ok [INFO] [stdout] test is_int_false_for_unions_with_other_kinds ... ok [INFO] [stdout] test is_string_distinguishes_class_like_string ... ok [INFO] [stdout] test is_int_true_for_int_family ... ok [INFO] [stdout] test is_numeric_includes_int_and_float ... ok [INFO] [stdout] test lit_int_zero_falsy_nonzero_truthy ... ok [INFO] [stdout] test non_empty_list_truthy ... ok [INFO] [stderr] Running tests/property_lattice.rs (/opt/rustwide/target/debug/build/suffete/4ecbbc2cf5c0354f/out/property_lattice-4ecbbc2cf5c0354f) [INFO] [stdout] test truthy_mixed_truthy ... ok [INFO] [stdout] test object_always_truthy ... ok [INFO] [stdout] test is_object_covers_object_family ... ok [INFO] [stdout] test resources_truthy_unless_explicitly_closed ... ok [INFO] [stdout] test true_is_truthy_false_is_falsy ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 39 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 59 tests [INFO] [stdout] test join_with_mixed_absorbs ... ok [INFO] [stdout] test canonical_join_widens_or_preserves ... ok [INFO] [stdout] test disjoint_implies_subtract_value_equivalent ... ok [INFO] [stdout] test double_negation_value_equal ... ok [INFO] [stdout] test join_is_commutative ... ok [INFO] [stdout] test join_is_upper_bound ... ok [INFO] [stdout] test join_with_never_is_identity ... ok [INFO] [stdout] test disjoint_implies_meet_never ... ok [INFO] [stdout] test double_subtract_with_swapped_args_equivalent ... ok [INFO] [stdout] test join_with_self_widens_to_at_least_a ... ok [INFO] [stdout] test meet_compute_is_lower_bound ... ok [INFO] [stdout] test meet_idempotent_left ... ok [INFO] [stdout] test lattice_pair_laws_hold ... ok [INFO] [stdout] test meet_implies_refines_both ... ok [INFO] [stdout] test meet_is_idempotent ... ok [INFO] [stdout] test meet_is_commutative ... ok [INFO] [stdout] test meet_is_associative_lower_bound ... ok [INFO] [stdout] test lattice_triple_laws_hold ... ok [INFO] [stdout] test meet_refines_join ... ok [INFO] [stdout] test meet_overlaps_iff_non_never ... ok [INFO] [stdout] test meet_is_lower_bound ... ok [INFO] [stdout] test meet_subtract_partition ... ok [INFO] [stdout] test meet_with_mixed_is_identity ... ok [INFO] [stdout] test meet_monotonic_in_rhs ... ok [INFO] [stdout] test meet_then_subtract_same_is_empty ... ok [INFO] [stdout] test meet_with_never_is_never ... ok [INFO] [stdout] test meet_with_never_is_never_symmetric ... ok [INFO] [stdout] test meet_with_self_is_self ... ok [INFO] [stdout] test meet_when_overlapping_is_non_empty ... ok [INFO] [stdout] test meet_with_subtract_is_disjoint_from_subtract ... ok [INFO] [stdout] test negated_meet_with_self_is_never ... ok [INFO] [stdout] test negated_meet_equals_subtract ... ok [INFO] [stdout] test overlaps_with_never_is_false ... ok [INFO] [stdout] test overlaps_is_reflexive_for_non_bottom ... ok [INFO] [stdout] test negated_subtract_equals_meet ... ok [INFO] [stdout] test negated_refines_iff_no_overlap ... ok [INFO] [stdout] test refines_bottom_axiom ... ok [INFO] [stdout] test overlaps_is_symmetric ... ok [INFO] [stdout] test refines_is_reflexive ... ok [INFO] [stdout] test refines_implies_meet_is_input ... ok [INFO] [stdout] test refines_implies_subtract_outcome_impossible ... ok [INFO] [stdout] test refines_implies_overlaps ... ok [INFO] [stdout] test refines_implies_meet_value_equivalent ... ok [INFO] [stdout] test refines_is_antisymmetric_modulo_equivalence ... ok [INFO] [stdout] test refines_top_axiom ... ok [INFO] [stdout] test sealed_full_cover_subtract_is_never ... ok [INFO] [stdout] test structural_join_is_idempotent_at_element_level ... ok [INFO] [stdout] test refines_is_transitive ... ok [INFO] [stdout] test subtract_compute_refines_input ... ok [INFO] [stdout] test subtract_disjoint_is_identity ... ok [INFO] [stdout] test subtract_is_idempotent ... ok [INFO] [stdout] test subtract_followed_by_meet_with_b_is_empty ... ok [INFO] [stdout] test subtract_anti_monotonic_in_lhs ... ok [INFO] [stdout] test subtract_self_is_never ... ok [INFO] [stdout] test subtract_is_sound ... ok [INFO] [stdout] test subtract_with_never_is_identity ... ok [INFO] [stdout] test subtract_with_mixed_is_never ... ok [INFO] [stdout] test subtract_when_subset_is_empty ... ok [INFO] [stdout] test subtract_monotonic_in_rhs ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 59 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 38.91s [INFO] [stdout] [INFO] [stderr] Running tests/reconcile_basic.rs (/opt/rustwide/target/debug/build/suffete/72d708a1b76a4f11/out/reconcile_basic-72d708a1b76a4f11) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test empty_bounds_returns_none ... ok [INFO] [stdout] test deeper_bound_discarded_without_equality_marker ... ok [INFO] [stdout] test deeper_bound_included_when_baseline_is_equality_marker_and_offset_matches ... ok [INFO] [stdout] test covariant_only_bounds_keep_shallowest_only ... ok [INFO] [stdout] test two_shallow_bounds_at_same_depth_union ... ok [INFO] [stdout] test multiple_baseline_bounds_with_equality_propagate ... ok [INFO] [stdout] test deeper_bound_discarded_when_equality_marker_present_but_offset_differs ... ok [INFO] [stdout] test single_bound_yields_that_type ... ok [INFO] [stdout] test equality_marker_propagates_to_further_depths ... ok [INFO] [stdout] test upper_bound_alone_is_returned_as_witness ... ok [INFO] [stdout] test unsorted_input_is_handled_correctly ... ok [INFO] [stdout] test witness_uses_recorded_bounds_when_present ... ok [INFO] [stdout] test witness_after_two_arguments_unions_bounds ... ok [INFO] [stdout] test witness_after_invariant_then_nested_arg_keeps_deep_bound ... ok [INFO] [stdout] test witness_falls_back_when_no_bound_collected ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/sealed_cover_identities.rs (/opt/rustwide/target/debug/build/suffete/d666c543e9685467/out/sealed_cover_identities-d666c543e9685467) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test error_or_exception_union_refines_throwable ... ok [INFO] [stdout] test non_class_head_skips_sealed_logic ... ok [INFO] [stdout] test null_world_returns_no_sealed_inheritors ... ok [INFO] [stdout] test final_class_with_negated_self_is_being_uninhabited_by_existing_rules ... ok [INFO] [stdout] test partial_cover_does_not_collapse_when_residual_has_multiple ... ok [INFO] [stdout] test error_refines_throwable_minus_exception ... ok [INFO] [stdout] test subtract_throwable_by_error_or_exception_is_never ... ok [INFO] [stdout] test throwable_refines_error_or_exception_union ... ok [INFO] [stdout] test throwable_with_full_negations_is_uninhabited ... ok [INFO] [stdout] test throwable_minus_exception_refines_error ... ok [INFO] [stdout] test traversable_refines_iterator_or_iterator_aggregate ... ok [INFO] [stdout] test transitive_sealing_collapses_to_never ... ok [INFO] [stdout] test transitive_negation_via_descendant ... ok [INFO] [stdout] test throwable_with_full_negations_meet_anything_is_never ... ok [INFO] [stdout] test traversable_with_full_negations_is_uninhabited ... ok [INFO] [stdout] test unrelated_negation_does_not_affect_cover ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] Running tests/sealed_cover_ops.rs (/opt/rustwide/target/debug/build/suffete/9a8f1de8b8b2bfaa/out/sealed_cover_ops-9a8f1de8b8b2bfaa) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test non_class_head_skips_sealed_logic ... ok [INFO] [stdout] test null_world_returns_no_sealed_inheritors ... ok [INFO] [stdout] test final_class_with_negated_self_is_never ... ok [INFO] [stdout] test cycle_with_direct_coverage_collapses ... ok [INFO] [stdout] test partial_cover_does_not_collapse_when_residual_has_multiple ... ok [INFO] [stdout] test cycle_without_direct_coverage_terminates ... ok [INFO] [stdout] test meet_throwable_with_negated_exception_canonicalises_to_error ... ok [INFO] [stdout] test subtract_throwable_by_error_canonicalises_to_exception ... ok [INFO] [stdout] test subtract_throwable_by_error_or_exception_is_never ... ok [INFO] [stdout] test depth_cap_does_not_overflow ... ok [INFO] [stdout] test subtract_throwable_by_exception_canonicalises_to_error ... ok [INFO] [stdout] test traversable_minus_iterator_minus_iterator_aggregate_is_never ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stderr] Running tests/serialize_basic.rs (/opt/rustwide/target/debug/build/suffete/d336376caa4d8956/out/serialize_basic-d336376caa4d8956) [INFO] [stdout] [INFO] [stdout] running 18 tests [INFO] [stdout] test flags_round_trip ... ok [INFO] [stdout] test generic_object_round_trips ... ok [INFO] [stdout] test float_literal_round_trips ... ok [INFO] [stdout] test int_range_round_trips ... ok [INFO] [stdout] test element_id_round_trips_via_serializable ... ok [INFO] [stdout] test callable_signature_round_trips ... ok [INFO] [stdout] test element_id_with_generic_args_round_trips ... ok [INFO] [stdout] test int_literal_round_trips ... ok [INFO] [stdout] test meta_round_trips ... ok [INFO] [stdout] test named_object_round_trips ... ok [INFO] [stdout] test iterable_round_trips ... ok [INFO] [stdout] test string_literal_and_refinements_round_trip ... ok [INFO] [stdout] test unions_round_trip ... ok [INFO] [stdout] test primitives_round_trip ... ok [INFO] [stdout] test nested_unions_round_trip ... ok [INFO] [stdout] test keyed_array_round_trips ... ok [INFO] [stdout] test list_round_trips ... ok [INFO] [stdout] test restored_within_same_process_uses_same_slot ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/standin_basic.rs (/opt/rustwide/target/debug/build/suffete/b1342ca44cd57a43/out/standin_basic-b1342ca44cd57a43) [INFO] [stdout] [INFO] [stdout] running 38 tests [INFO] [stdout] test contravariant_default_records_upper_bound ... ok [INFO] [stdout] test anti_bounds_in_scope_filters_by_defining_entity ... ok [INFO] [stdout] test anti_bound_recorded_and_queryable ... ok [INFO] [stdout] test covariant_default_records_lower_bound ... ok [INFO] [stdout] test argument_offset_is_recorded ... ok [INFO] [stdout] test covariant_object_walk_does_not_set_equality_classlike ... ok [INFO] [stdout] test bounds_in_scope_filters_by_defining_entity ... ok [INFO] [stdout] test anti_bound_unset_returns_empty_slice ... ok [INFO] [stdout] test frozen_result_supports_scope_filtered_queries ... ok [INFO] [stdout] test declared_but_unbound_distinguishable_from_undeclared ... ok [INFO] [stdout] test distinct_template_parameters_recorded_separately ... ok [INFO] [stdout] test invariant_object_walk_records_introducing_class_on_equality_bound ... ok [INFO] [stdout] test iter_returns_all_recorded_keys ... ok [INFO] [stdout] test declarations_iter_yields_every_declared_template ... ok [INFO] [stdout] test merge_scope_into_self_is_noop ... ok [INFO] [stdout] test freeze_consumes_state ... ok [INFO] [stdout] test merge_scope_re_keys_anti_bounds ... ok [INFO] [stdout] test declarations_in_scope_filters_by_defining_entity ... ok [INFO] [stdout] test equal_param_and_argument_short_circuits_no_changes ... ok [INFO] [stdout] test freeze_preserves_declarations_bounds_and_anti_bounds ... ok [INFO] [stdout] test merge_scope_appends_when_target_already_has_bounds_for_same_name ... ok [INFO] [stdout] test nested_object_template_records_at_correct_depth ... ok [INFO] [stdout] test span_threads_through_nested_walk ... ok [INFO] [stdout] test object_with_unrelated_arg_passes_parameter_through ... ok [INFO] [stdout] test template_inside_list_against_iterable_arg_walks_value ... ok [INFO] [stdout] test multiple_arguments_share_state_and_accumulate_bounds ... ok [INFO] [stdout] test template_inside_list_records_lower_bound_at_depth_one ... ok [INFO] [stdout] test template_inside_iterable_records_both_key_and_value ... ok [INFO] [stdout] test merge_scope_re_keys_declarations_and_bounds ... ok [INFO] [stdout] test parameter_without_templates_passes_through_unchanged ... ok [INFO] [stdout] test template_inside_object_uses_world_variance ... ok [INFO] [stdout] test span_from_options_propagates_to_recorded_bound ... ok [INFO] [stdout] test walk_preserves_existing_declaration_constraint ... ok [INFO] [stdout] test top_level_template_records_invariant_bound ... ok [INFO] [stdout] test walk_auto_declares_encountered_template ... ok [INFO] [stdout] test template_inside_object_with_invariant_records_equality_bound ... ok [INFO] [stdout] test top_level_invariant_walk_outside_class_has_no_classlike ... ok [INFO] [stdout] test top_level_template_with_int_constraint_emits_int_standin ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 38 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/standin_extended.rs (/opt/rustwide/target/debug/build/suffete/66db5a41afc7da13/out/standin_extended-66db5a41afc7da13) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test descendant_class_arg_threads_through_extension_binding ... ok [INFO] [stdout] test descendant_with_no_extension_binding_passes_through ... ok [INFO] [stdout] test callable_return_walked_covariantly ... ok [INFO] [stdout] test callable_unchanged_when_no_template ... ok [INFO] [stdout] test callable_records_both_param_and_return_bounds ... ok [INFO] [stdout] test iteration_depth_cutoff_replaces_template_with_constraint ... ok [INFO] [stdout] test keyed_array_against_iterable_walks_key_and_value_params ... ok [INFO] [stdout] test keyed_array_known_value_against_lit_walks_to_lit_bound ... ok [INFO] [stdout] test keyed_array_known_item_walked_when_arg_has_matching_key ... ok [INFO] [stdout] test keyed_array_value_param_records_lower_bound ... ok [INFO] [stdout] test callable_parameter_walked_contravariantly ... ok [INFO] [stdout] test descendant_class_arg_substitutes_own_template_args ... ok [INFO] [stdout] test keyed_array_unchanged_when_no_template ... ok [INFO] [stdout] test iteration_depth_zero_records_top_level_binding ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stderr] Running tests/subtract_basic.rs (/opt/rustwide/target/debug/build/suffete/69079b1b5c29f75a/out/subtract_basic-69079b1b5c29f75a) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 36 tests [INFO] [stdout] test array_minus_list_removes_empty_array ... ok [INFO] [stdout] test ancestor_minus_descendant_records_exclusion ... ok [INFO] [stdout] test bool_minus_false_is_true ... ok [INFO] [stdout] test class_string_minus_interface_string_narrows_to_intersected ... ok [INFO] [stdout] test int_range_minus_disjoint_range_is_identity ... ok [INFO] [stdout] test disjoint_kinds_subtract_is_identity ... ok [INFO] [stdout] test bool_minus_true_is_false ... ok [INFO] [stdout] test descendant_minus_ancestor_is_never ... ok [INFO] [stdout] test int_range_minus_literal_in_middle_splits ... ok [INFO] [stdout] test int_range_minus_endpoint_collapses_to_literal_piece ... ok [INFO] [stdout] test int_range_minus_overlapping_left_keeps_right ... ok [INFO] [stdout] test int_range_minus_overlapping_right_keeps_left ... ok [INFO] [stdout] test list_minus_array_removes_empty_when_array_allows_empty ... ok [INFO] [stdout] test multi_step_subtraction_chains ... ok [INFO] [stdout] test mixed_minus_null_is_value_equal_to_non_null_mixed ... ok [INFO] [stdout] test nullable_bool_minus_null_is_bool ... ok [INFO] [stdout] test same_template_minus_same_template_with_subset_constraint_is_impossible ... ok [INFO] [stdout] test int_range_minus_overlapping_range_keeps_outer_pieces ... ok [INFO] [stdout] test nullable_int_minus_null_is_int ... ok [INFO] [stdout] test open_int_minus_bounded_range_splits_unbounded_pieces ... ok [INFO] [stdout] test same_template_minus_same_template_with_disjoint_constraint_is_identity ... ok [INFO] [stdout] test subtract_from_never_yields_never ... ok [INFO] [stdout] test reflexive_subtract_yields_never ... ok [INFO] [stdout] test subtract_mixed_yields_never ... ok [INFO] [stdout] test subsumption_collapses_to_never ... ok [INFO] [stdout] test template_with_int_or_string_minus_string_narrows_constraint_to_int ... ok [INFO] [stdout] test subtract_never_is_identity ... ok [INFO] [stdout] test subtract_then_meet_is_disjoint_for_int_range ... ok [INFO] [stdout] test template_with_int_minus_string_is_redundant_keeps_template ... ok [INFO] [stdout] test template_with_int_or_string_minus_int_narrows_constraint_to_string ... ok [INFO] [stdout] test upper_bound_invariant_nullable_int_minus_null ... ok [INFO] [stdout] test upper_bound_invariant_int_split ... ok [INFO] [stdout] test uninhabited_array_lhs_subtract_is_never ... ok [INFO] [stdout] test union_minus_union_distributes ... ok [INFO] [stdout] test unrelated_named_objects_subtract_records_exclusion_open_world ... ok [INFO] [stdout] test template_with_int_minus_int_is_impossible ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/sugar.rs (/opt/rustwide/target/debug/build/suffete/77e1cabc0749d92c/out/sugar-77e1cabc0749d92c) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test int_literal_zero_dedupes_against_well_known ... ok [INFO] [stdout] test int_range_dedupes_against_well_known_positive_int ... ok [INFO] [stdout] test type_string_literal_builds_singleton_with_correct_atom ... ok [INFO] [stdout] test type_singleton_dedupes_against_well_known_type_int ... ok [INFO] [stdout] test string_literal_round_trips_with_correct_atom ... ok [INFO] [stdout] test float_literal_round_trips ... ok [INFO] [stdout] test type_int_literal_builds_singleton_with_correct_atom ... ok [INFO] [stderr] Running tests/transform_basic.rs (/opt/rustwide/target/debug/build/suffete/ceb265527b3bdf85/out/transform_basic-ceb265527b3bdf85) [INFO] [stdout] test int_literal_arbitrary_values_round_trip ... ok [INFO] [stdout] test type_union_of_int_and_float_dedupes_against_well_known ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test flat_map_one_to_many_explodes_top_level ... ok [INFO] [stdout] test map_descends_into_class_like_string_constraint ... ok [INFO] [stdout] test filter_emptying_a_level_collapses_to_never ... ok [INFO] [stdout] test filter_drops_predicate_false ... ok [INFO] [stdout] test filter_map_drops_when_returning_none ... ok [INFO] [stdout] test map_descends_into_iterable_key_and_value ... ok [INFO] [stdout] test filter_emptying_a_nested_level_yields_never_at_that_level ... ok [INFO] [stdout] test flat_map_one_to_zero_drops_element ... ok [INFO] [stdout] test flat_map_inside_list_explodes_nested_element_type ... ok [INFO] [stdout] test map_descends_into_generic_parameter_constraint ... ok [INFO] [stdout] test map_post_order_sees_rebuilt_children ... ok [INFO] [stdout] test map_no_op_returns_same_handle ... ok [INFO] [stdout] test map_descends_into_list_element_type ... ok [INFO] [stdout] test map_descends_into_object_type_args ... ok [INFO] [stdout] test map_descends_into_keyed_array_value_param ... ok [INFO] [stdout] test map_replaces_each_top_level_element ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/typed_display.rs (/opt/rustwide/target/debug/build/suffete/2fb4c9c93cb4aec6/out/typed_display-2fb4c9c93cb4aec6) [INFO] [stdout] [INFO] [stdout] running 30 tests [INFO] [stdout] test handle_dispatches_to_inner ... ok [INFO] [stdout] test callable_signature_renders ... ok [INFO] [stdout] test int_range_with_bounds ... ok [INFO] [stdout] test empty_array_renders ... ok [INFO] [stdout] test class_like_string_renders ... ok [INFO] [stdout] test intersected_object_renders_with_amp ... ok [INFO] [stdout] test list_renders ... ok [INFO] [stdout] test iterable_renders ... ok [INFO] [stdout] test generic_object_renders_with_args ... ok [INFO] [stdout] test int_literal_renders_as_value ... ok [INFO] [stdout] test int_range_named_forms ... ok [INFO] [stdout] test pretty_callable_with_many_params_breaks_into_lines ... ok [INFO] [stdout] test keyed_array_unsealed_renders ... ok [INFO] [stdout] test non_empty_list_renders ... ok [INFO] [stdout] test pretty_object_shape_breaks_into_lines ... ok [INFO] [stdout] test nullable_renders ... ok [INFO] [stdout] test pretty_breaks_unions_with_more_than_three_into_lines ... ok [INFO] [stdout] test named_object_renders ... ok [INFO] [stdout] test pretty_three_element_union_stays_inline_with_spaces ... ok [INFO] [stdout] test pretty_callable_with_two_params_stays_inline ... ok [INFO] [stdout] test primitives_render_as_keywords ... ok [INFO] [stdout] test resource_variants_render ... ok [INFO] [stdout] test pretty_unsealed_shape_includes_dots_line ... ok [INFO] [stdout] test refined_strings_render ... ok [INFO] [stdout] test string_literal_renders_quoted ... ok [INFO] [stdout] test view_dispatches_to_inner ... ok [INFO] [stdout] test typed_intersection_methods_on_element_id_dispatch ... ok [INFO] [stdout] test union_renders_with_pipe ... ok [INFO] [stdout] test pretty_falls_back_to_display_for_singletons ... ok [INFO] [stdout] test typed_intersection_methods_on_typeid_return_trivial ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running tests/view.rs (/opt/rustwide/target/debug/build/suffete/cea8dc0c7b14ec33/out/view-cea8dc0c7b14ec33) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test trivial_well_knowns_dispatch_to_unit_variants ... ok [INFO] [stdout] test resource_well_knowns_resolve_to_resource_variant ... ok [INFO] [stdout] test iterable_well_known_carries_mixed_key_value_typeids ... ok [INFO] [stdout] test array_well_knowns_resolve_to_array_variant ... ok [INFO] [stdout] test callable_well_known_resolves_to_any_variant ... ok [INFO] [stdout] test int_well_knowns_resolve_to_int_variant_with_payload ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/widen_basic.rs (/opt/rustwide/target/debug/build/suffete/fafaaa27660e7ff3/out/widen_basic-fafaaa27660e7ff3) [INFO] [stdout] [INFO] [stdout] running 41 tests [INFO] [stdout] test literals_preserves_int_range ... ok [INFO] [stdout] test literals_descends_into_keyed_array_value ... ok [INFO] [stdout] test literals_descends_into_list_element ... ok [INFO] [stdout] test literals_descends_into_object_type_args ... ok [INFO] [stdout] test literals_descends_into_generic_parameter_constraint ... ok [INFO] [stdout] test literals_descends_into_iterable_value ... ok [INFO] [stdout] test literals_preserves_non_empty_string ... ok [INFO] [stdout] test literals_no_op_returns_same_handle ... ok [INFO] [stdout] test literals_preserves_positive_int_dominator ... ok [INFO] [stdout] test literals_preserves_truthy_string ... ok [INFO] [stdout] test literals_widens_empty_string_to_string_dominator ... ok [INFO] [stdout] test literals_widens_mixed_case_string_without_casing ... ok [INFO] [stdout] test literals_widens_numeric_string ... ok [INFO] [stdout] test literals_widens_string_to_non_empty_truthy_lowercase ... ok [INFO] [stdout] test literals_widens_true_to_bool ... ok [INFO] [stdout] test literals_widens_unspecified_literal_float_to_float ... ok [INFO] [stdout] test literals_widens_negative_numeric_string ... ok [INFO] [stdout] test literals_widens_int_literal_to_int ... ok [INFO] [stdout] test literals_widens_zero_string_to_non_empty_non_truthy ... ok [INFO] [stdout] test literals_widens_class_like_string_literal_to_any ... ok [INFO] [stdout] test literals_widens_float_literal_to_float ... ok [INFO] [stdout] test literals_widens_union_of_literals_to_int ... ok [INFO] [stdout] test literals_widens_unspecified_literal_int_to_int ... ok [INFO] [stdout] test literals_widens_decimal_numeric_string ... ok [INFO] [stdout] test scalars_no_op_returns_same_handle ... ok [INFO] [stdout] test scalars_widens_float_literal_to_float ... ok [INFO] [stdout] test scalars_preserves_class_like_string_kind ... ok [INFO] [stdout] test scalars_widens_class_like_string_to_any_of_same_kind ... ok [INFO] [stdout] test scalars_widens_int_range_to_int ... ok [INFO] [stdout] test scalars_descends_into_generic_parameter_constraint ... ok [INFO] [stdout] test literals_widens_uppercase_string_correctly ... ok [INFO] [stdout] test scalars_widens_string_literal_to_string ... ok [INFO] [stdout] test scalars_widens_true_and_false_to_bool ... ok [INFO] [stdout] test scalars_widens_non_empty_string_to_string ... ok [INFO] [stdout] test scalars_widens_truthy_string_to_string ... ok [INFO] [stdout] test scalars_widens_positive_int_to_int ... ok [INFO] [stdout] test scalars_leaves_resource_alone ... ok [INFO] [stdout] test scalars_widens_int_literal_to_int ... ok [INFO] [stdout] test scalars_descends_into_list_element ... ok [INFO] [stdout] test scalars_descends_into_object_type_args ... ok [INFO] [stdout] test scalars_widens_union_of_refinements_to_int ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 41 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Doc-tests suffete [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test src/handle.rs - handle (line 15) ... ignored [INFO] [stdout] test src/hierarchy/mod.rs - hierarchy (line 16) ... ignored [INFO] [stdout] test src/serialize/mod.rs - serialize (line 14) ... ignored [INFO] [stdout] test src/template/standin.rs - template::standin (line 16) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] all doctests ran in 0.33s; merged doctests compilation took 0.32s [INFO] running `Command { std: "docker" "inspect" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466", kill_on_drop: false }` [INFO] [stdout] d2234fc9ad121f37b1229a5ec01610582209a831a85816284b1b897b18a60466