[INFO] fetching crate orderbook-rs 0.4.6... [INFO] testing orderbook-rs-0.4.6 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-8 [INFO] extracting crate orderbook-rs 0.4.6 into /workspace/builds/worker-5-tc2/source [INFO] removed /workspace/builds/worker-5-tc2/source/rust-toolchain.toml [INFO] started tweaking crates.io crate orderbook-rs 0.4.6 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate orderbook-rs 0.4.6 [INFO] tweaked toml for crates.io crate orderbook-rs 0.4.6 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate orderbook-rs 0.4.6 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate orderbook-rs 0.4.6 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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0d0d9e790f101f7b2afbecf783e7b0f5c078a966e6337453e35206b57656445d [INFO] running `Command { std: "docker" "start" "-a" "0d0d9e790f101f7b2afbecf783e7b0f5c078a966e6337453e35206b57656445d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0d0d9e790f101f7b2afbecf783e7b0f5c078a966e6337453e35206b57656445d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d0d9e790f101f7b2afbecf783e7b0f5c078a966e6337453e35206b57656445d", kill_on_drop: false }` [INFO] [stdout] 0d0d9e790f101f7b2afbecf783e7b0f5c078a966e6337453e35206b57656445d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a478ce4b06e3c4d09f1f124a4ca131c5870a36b4bc8baad009cfa6c6059951d [INFO] running `Command { std: "docker" "start" "-a" "6a478ce4b06e3c4d09f1f124a4ca131c5870a36b4bc8baad009cfa6c6059951d", kill_on_drop: false }` [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling sha1_smol v1.0.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling tracing-subscriber v0.3.20 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling crossbeam v0.8.4 [INFO] [stderr] Compiling crossbeam-skiplist v0.1.3 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling ulid v1.2.1 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling bitflags v2.9.4 [INFO] [stderr] Compiling pricelevel v0.4.2 [INFO] [stderr] Compiling orderbook-rs v0.4.6 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.71s [INFO] running `Command { std: "docker" "inspect" "6a478ce4b06e3c4d09f1f124a4ca131c5870a36b4bc8baad009cfa6c6059951d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a478ce4b06e3c4d09f1f124a4ca131c5870a36b4bc8baad009cfa6c6059951d", kill_on_drop: false }` [INFO] [stdout] 6a478ce4b06e3c4d09f1f124a4ca131c5870a36b4bc8baad009cfa6c6059951d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b9af5ae834b945de354be83c0c995245fd5a9db325257a127fa6e574529fd1f2 [INFO] running `Command { std: "docker" "start" "-a" "b9af5ae834b945de354be83c0c995245fd5a9db325257a127fa6e574529fd1f2", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling clap_lex v0.7.6 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling anstyle v1.0.13 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling crossbeam v0.8.4 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling clap_builder v4.5.49 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling criterion-plot v0.6.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling clap v4.5.49 [INFO] [stderr] Compiling zerocopy-derive v0.8.27 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling bitflags v2.9.4 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling criterion v0.7.0 [INFO] [stderr] Compiling ulid v1.2.1 [INFO] [stderr] Compiling pricelevel v0.4.2 [INFO] [stderr] Compiling orderbook-rs v0.4.6 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 55.84s [INFO] running `Command { std: "docker" "inspect" "b9af5ae834b945de354be83c0c995245fd5a9db325257a127fa6e574529fd1f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b9af5ae834b945de354be83c0c995245fd5a9db325257a127fa6e574529fd1f2", kill_on_drop: false }` [INFO] [stdout] b9af5ae834b945de354be83c0c995245fd5a9db325257a127fa6e574529fd1f2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 10c1737bca4a76bd1ae8cb49c5a6bab2cf30177ec18e218eb3f6ea80e48dd082 [INFO] running `Command { std: "docker" "start" "-a" "10c1737bca4a76bd1ae8cb49c5a6bab2cf30177ec18e218eb3f6ea80e48dd082", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.20s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/orderbook_rs-7dab2f239c397b8f) [INFO] [stdout] [INFO] [stdout] running 295 tests [INFO] [stdout] test orderbook::market_impact::tests::test_market_impact_fill_ratio ... ok [INFO] [stdout] test orderbook::market_impact::tests::test_order_simulation_is_fully_filled ... ok [INFO] [stdout] test orderbook::market_impact::tests::test_market_impact_empty ... ok [INFO] [stdout] test orderbook::private::tests::test_match_market_order_no_matches ... ok [INFO] [stdout] test orderbook::market_impact::tests::test_market_impact_can_fill ... ok [INFO] [stdout] test orderbook::market_impact::tests::test_order_simulation_levels_count ... ok [INFO] [stdout] test orderbook::market_impact::tests::test_order_simulation_total_cost ... ok [INFO] [stdout] test orderbook::private::tests::test_has_expired_day_order ... ok [INFO] [stdout] test orderbook::market_impact::tests::test_order_simulation_empty ... ok [INFO] [stdout] test orderbook::private::tests::test_will_cross_market_buy_no_ask ... ok [INFO] [stdout] test orderbook::private::tests::test_will_cross_market_buy_with_cross ... ok [INFO] [stdout] test orderbook::private::tests::test_will_cross_market_sell_with_cross ... ok [INFO] [stdout] test orderbook::statistics::tests::test_depth_stats_zero ... ok [INFO] [stdout] test orderbook::statistics::tests::test_distribution_bin_midpoint ... ok [INFO] [stdout] test orderbook::statistics::tests::test_depth_stats_not_empty ... ok [INFO] [stdout] test orderbook::private::tests::test_match_market_order_partial_availability ... ok [INFO] [stdout] test orderbook::private::tests::test_private_place_order_in_book ... ok [INFO] [stdout] test orderbook::private::tests::test_will_cross_market_sell_no_bid ... ok [INFO] [stdout] test orderbook::tests::book::test_book_remaining::test_best_bid_ask_with_multiple_levels ... ok [INFO] [stdout] test orderbook::tests::book::test_book_remaining::test_create_snapshot_empty_book ... ok [INFO] [stdout] test orderbook::tests::book::test_book_remaining::test_last_trade_price ... ok [INFO] [stdout] test orderbook::tests::book::test_book_remaining::test_market_close_accessors ... ok [INFO] [stdout] test orderbook::tests::book::test_book_remaining::test_symbol_accessor ... ok [INFO] [stdout] test orderbook::tests::book::test_book_specific::test_get_all_orders ... ok [INFO] [stdout] test orderbook::tests::book::test_book_specific::test_get_orders_at_price ... ok [INFO] [stdout] test orderbook::tests::book::test_book_specific::test_match_market_order_empty_book ... ok [INFO] [stdout] test orderbook::tests::book::test_orderbook_book::test_get_volume_by_price ... ok [INFO] [stdout] test orderbook::tests::book::test_orderbook_book::test_market_close_timestamp ... ok [INFO] [stdout] test orderbook::tests::book::test_orderbook_book::test_mid_price_calculation ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_add_standard_order ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_book_snapshot ... ok [INFO] [stdout] test orderbook::tests::book::test_orderbook_book::test_snapshot_creation ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_cancel_order ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_cancel_nonexistent_order ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_fill_or_kill_order_full_fill ... ok [INFO] [stdout] test orderbook::tests::book::test_orderbook_book::test_spread_calculation ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_market_close_timestamp ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_fill_or_kill_order_partial_fill ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_market_order_insufficient_liquidity ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_iceberg_order ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_market_order_match ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_immediate_or_cancel_order_full_fill ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_new_order_book ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_post_only_order_no_crossing ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_mid_price_calculation ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_post_only_order_with_crossing ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_update_nonexistent_order ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_spread_calculation ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_update_order_price ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_update_order_quantity ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_cumulative_depth_to_target_sell_side ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_volume_by_price ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_depth_methods_priority_order_buy_side ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_cumulative_depth_to_target_buy_side ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_cumulative_depth_to_target_empty_book ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_depth_methods_priority_order_sell_side ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_add_multiple_bids ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_depth_methods_with_multiple_orders_per_level ... ok [INFO] [stdout] test orderbook::tests::book::tests::test_add_multiple_asks ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_price_at_depth_buy_side ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_total_depth_at_levels_zero_levels ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_total_depth_at_levels_sell_side ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_price_at_depth_empty_book ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_price_at_depth_sell_side ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_buy_heavy ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_custom_metrics ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_all_metrics ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_empty_book ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_balanced_book ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_total_depth_at_levels_buy_side ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_limited_depth ... ok [INFO] [stdout] test orderbook::tests::depth_analysis::tests::test_total_depth_at_levels_empty_book ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_sell_heavy ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_only_vwap ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_only_imbalance ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_vwap_limited_levels ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_only_depth ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_serialization ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_spread_bps_calculation ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_metric_flags_all ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_display_insufficient_liquidity ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_metric_flags_combination ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_display_invalid_operation ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_display_invalid_price_level ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_display_price_crossing ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_display_price_level_error ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_error_trait_implementation ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_from_price_level_error ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_invalid_field_value_conversion ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_missing_field_conversion ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_find_level_empty_book ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_count_levels ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_find_level_by_cumulative_depth ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_find_level_not_found ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_find_depth_threshold ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_find_level_by_quantity ... ok [INFO] [stdout] test orderbook::tests::error::tests::test_display_order_not_found ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_iterator_short_circuit ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_in_range_basic ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_in_range_map_sum ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_mid_price_calculation ... ok [INFO] [stdout] test orderbook::tests::enriched_snapshot_tests::tests::test_enriched_snapshot_one_sided ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_functional_style_analysis ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_iterator_composition ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_in_range_no_match ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_until_depth_exceeds_available ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_in_range_partial ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_until_depth_with_filter ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_with_cumulative_depth_empty_book ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_with_cumulative_depth_take ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_with_cumulative_depth_buy ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_with_cumulative_depth_sell ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_sell_side_iterators ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_until_depth_exact ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_all_functions_together ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_in_range_single ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_until_depth_partial ... ok [INFO] [stdout] test orderbook::tests::iterator_tests::tests::test_levels_until_depth_zero ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_liquidity_in_range_asks ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_liquidity_in_range_basic ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_liquidity_in_range_empty_book ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_liquidity_in_range_full_range ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_liquidity_in_range_invalid_range ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_market_impact_basic ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_market_impact_empty_book ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_market_impact_insufficient_liquidity ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_liquidity_in_range_no_overlap ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_market_impact_sell_side ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_market_impact_zero_quantity ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_market_impact_slippage_bps ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_simulate_market_order_basic ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_simulate_market_order_empty_book ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_micro_price_zero_volumes ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_all_metrics_together ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_simulate_market_order_total_cost ... ok [INFO] [stdout] test orderbook::tests::market_impact_tests::tests::test_simulate_market_order_partial_fill ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_micro_price_imbalanced ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_order_book_imbalance_balanced ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_order_book_imbalance_buy_pressure ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_micro_price ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_order_book_imbalance_sell_pressure ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_order_book_imbalance_empty_book ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_order_book_imbalance_multiple_levels ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_order_book_imbalance_zero_levels ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_spread_bps ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_spread_absolute ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_spread_bps_custom_multiplier ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_vwap_buy_side ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_vwap_empty_book ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_vwap_sell_side ... ok [INFO] [stdout] test orderbook::tests::market_metrics::tests::test_vwap_zero_quantity ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_limit_buy_favorable_price_match ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_limit_sell_unfavorable_price_no_match ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_market_buy_full_match ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_market_order_no_liquidity_error ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_market_sell_partial_match ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_match_across_multiple_price_levels ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_peek_match_buy_side_full_match ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_peek_match_buy_side_partial_match ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_peek_match_no_liquidity ... ok [INFO] [stdout] test orderbook::tests::matching::tests::test_peek_match_sell_side_with_price_limit ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_remaining::test_cancel_order_removes_price_level ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_remaining::test_replace_with_special_order_types ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_remaining::test_update_order_with_all_types ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_remaining::test_update_price_and_quantity_nonexistent ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_remaining::test_update_price_error_cases ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_specific::test_cancel_non_existent_order ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_specific::test_update_price_edge_cases ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_specific::test_update_order_when_order_is_not_found ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_cancel_nonexistent_order ... ok [INFO] [stdout] test orderbook::tests::modifications::test_modifications_specific::test_replace_unsupported_order_type ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_iceberg_order_update_quantity ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_update_order_cancel ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_replace_with_different_side ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_update_order_replace ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_update_price_and_quantity ... ok [INFO] [stdout] test orderbook::tests::modifications::test_order_modifications::test_update_price_same_value ... ok [INFO] [stdout] test orderbook::tests::modifications::tests::test_add_expired_order ... ok [INFO] [stdout] test orderbook::tests::modifications::tests::test_successful_cancel_order_removes_level ... ok [INFO] [stdout] test orderbook::tests::modifications::tests::test_update_order_not_found ... ok [INFO] [stdout] test orderbook::tests::modifications::tests::test_update_price_and_quantity ... ok [INFO] [stdout] test orderbook::tests::operations::test_extra_fields::test_add_iceberg_order_with_extra_fields ... ok [INFO] [stdout] test orderbook::tests::operations::test_extra_fields::test_add_limit_order_with_extra_fields ... ok [INFO] [stdout] test orderbook::tests::operations::test_extra_fields::test_add_post_only_order_with_extra_fields ... ok [INFO] [stdout] test orderbook::tests::operations::test_extra_fields::test_market_order_matching_with_extra_fields ... ok [INFO] [stdout] test orderbook::tests::modifications::tests::test_add_post_only_order_crossing_market ... ok [INFO] [stdout] test orderbook::tests::modifications::tests::test_set_quantity_for_reserve_order ... ok [INFO] [stdout] test orderbook::tests::operations::test_extra_fields::test_mixed_orders_with_and_without_extra_fields ... ok [INFO] [stdout] test orderbook::tests::operations::test_operations_remaining::test_add_limit_order_with_trace ... ok [INFO] [stdout] test orderbook::tests::operations::test_operations_remaining::test_add_post_only_order_with_trace ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_add_iceberg_order ... ok [INFO] [stdout] test orderbook::tests::operations::test_operations_remaining::test_add_iceberg_order_with_trace ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_add_post_only_order ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_limit_order_fill_or_kill_success ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_market_order_no_liquidity ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_limit_order_immediate_or_cancel ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_post_only_order_price_crossing ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_submit_market_order ... ok [INFO] [stdout] test orderbook::tests::operations::test_operations_specific::test_submit_market_order_with_tracing ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_limit_order_fill_or_kill_failure ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_fill_or_kill_property ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_add_limit_order ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_submit_market_order_full_fill ... ok [INFO] [stdout] test orderbook::tests::operations::tests::test_submit_market_order_insufficient_liquidity ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_iceberg_order_properties ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_immediate_or_cancel_property ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_match_against_standard_partial_match ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_match_against_iceberg_full_visible_with_refresh ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_refresh_iceberg ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_match_against_standard_full_match ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_standard_order_properties ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_post_only_order_properties ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_at_depth_adjusted_empty_book ... ok [INFO] [stdout] test orderbook::tests::order::tests::test_with_reduced_quantity ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_at_depth_adjusted_insufficient_depth ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_at_depth_adjusted_sell_side ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_at_depth_adjusted_basic ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_all_placement_functions_together ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_at_depth_adjusted_zero_values ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_for_queue_position_basic ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_for_queue_position_empty_book ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_n_ticks_inside_empty_book ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_for_queue_position_zero ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_for_queue_position_sell_side ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_n_ticks_inside_underflow ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_n_ticks_inside_sell ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_queue_ahead_at_price_basic ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_n_ticks_inside_zero_values ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_queue_ahead_at_price_different_levels ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_queue_ahead_at_price_no_orders ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_price_n_ticks_inside_buy ... ok [INFO] [stdout] test orderbook::tests::serialize_tests::tests::test_orderbook_serialize_empty ... ok [INFO] [stdout] test orderbook::tests::serialize_tests::tests::test_orderbook_serialize_with_market_close ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_queue_position_with_multiple_levels ... ok [INFO] [stdout] test orderbook::tests::snapshot::test_snapshot_remaining::test_snapshot_tracing ... ok [INFO] [stdout] test orderbook::tests::snapshot::test_snapshot_remaining::test_empty_snapshot_volume_methods ... ok [INFO] [stdout] test orderbook::tests::snapshot::test_orderbook_snapshot::test_snapshot_methods ... ok [INFO] [stdout] test orderbook::tests::order_placement_tests::tests::test_tick_calculations_with_large_values ... ok [INFO] [stdout] test orderbook::tests::snapshot::test_snapshot_specific::test_snapshot_trace_output ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_best_bid_ask ... ok [INFO] [stdout] test orderbook::tests::serialize_tests::tests::test_orderbook_serialize_with_orders ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_empty_snapshot_best_bid_ask ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_mid_price ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_snapshot_integrity ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_serialization_deserialization ... ok [INFO] [stdout] test orderbook::tests::serialize_tests::tests::test_orderbook_serialize_pretty ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_total_ask_value ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_total_ask_volume ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_total_bid_value ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_total_bid_volume ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_bid_ask_with_prices_out_of_order ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests::test_spread ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests_bis::test_spread_with_improved_methods ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests_bis::test_integration_with_sort ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests_bis::test_improved_best_bid_ask ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests_bis::test_mid_price_with_improved_methods ... ok [INFO] [stdout] test orderbook::tests::snapshot::tests_bis::test_proposal_for_impl_best_bid_ask ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_buy_sell_pressure_empty_book ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_buy_sell_pressure_one_sided ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_basic ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_combined_statistics_workflow ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_bins ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_buy_sell_pressure ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_single_price ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_all_levels ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_bins_match_range ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_empty_book ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_buy_basic ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_level_count ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_distribution_zero_bins ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_empty_book ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_std_dev ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_is_thin_book_one_side_thin ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_is_thin_book_false ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_limited_levels ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_weighted_avg_price ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_is_thin_book_empty ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_depth_statistics_sell_basic ... ok [INFO] [stdout] test orderbook::tests::time_in_force::tests::test_time_in_force_from_str ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_is_thin_book_true ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_order_book_imbalance_buy_heavy ... ok [INFO] [stdout] test orderbook::tests::time_in_force::tests::test_time_in_force_has_expiry_property ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_order_book_imbalance_sell_heavy ... ok [INFO] [stdout] test orderbook::tests::time_in_force::tests::test_time_in_force_display ... ok [INFO] [stdout] test orderbook::tests::uuid::tests::test_different_namespaces_generate_different_uuids ... ok [INFO] [stdout] test orderbook::tests::statistics_tests::tests::test_order_book_imbalance_balanced ... ok [INFO] [stdout] test orderbook::tests::uuid::tests::test_uuid_generator_is_deterministic ... ok [INFO] [stdout] test orderbook::tests::uuid::tests::test_uuid_version_and_variant ... ok [INFO] [stdout] test utils::tests::time::tests::test_current_time_millis_is_reasonably_current ... ok [INFO] [stdout] test orderbook::tests::time_in_force::tests::test_time_in_force_immediate_property ... ok [INFO] [stdout] test orderbook::tests::time_in_force::tests::test_time_in_force_is_expired ... ok [INFO] [stdout] test orderbook::tests::uuid::tests::test_uuid_generator_creates_unique_ids ... ok [INFO] [stdout] test orderbook::tests::uuid::tests::test_uuid_generator_thread_safety ... ok [INFO] [stdout] test utils::tests::time::tests::test_current_time_millis_increases ... ok [INFO] [stdout] test utils::tests::time::tests::test_current_time_millis_precision ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 295 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running tests/unit/mod.rs (/opt/rustwide/target/debug/deps/tests-8787594c0c18989e) [INFO] [stdout] [INFO] [stdout] running 101 tests [INFO] [stdout] test book_coverage_tests::tests::test_convert_market_to_limit_order ... ok [INFO] [stdout] test book_coverage_tests::tests::test_clear_market_close_timestamp ... ok [INFO] [stdout] test book_coverage_tests::tests::test_best_ask_with_cache_miss ... ok [INFO] [stdout] test book_coverage_tests::tests::test_convert_from_unit_type_all_variants ... ok [INFO] [stdout] test book_coverage_tests::tests::test_best_bid_with_cache_miss ... ok [INFO] [stdout] test book_coverage_tests::tests::test_convert_pegged_order ... ok [INFO] [stdout] test book_coverage_tests::tests::test_get_all_orders_empty_book ... ok [INFO] [stdout] test book_coverage_tests::tests::test_last_trade_price_no_trades ... ok [INFO] [stdout] test book_coverage_tests::tests::test_convert_trailing_stop_order ... ok [INFO] [stdout] test book_coverage_tests::tests::test_get_order_not_found ... ok [INFO] [stdout] test book_coverage_tests::tests::test_convert_reserve_order ... ok [INFO] [stdout] test book_coverage_tests::tests::test_create_snapshot_empty_book ... ok [INFO] [stdout] test book_coverage_tests::tests::test_match_limit_order_delegation ... ok [INFO] [stdout] test book_coverage_tests::tests::test_match_market_order_delegation ... ok [INFO] [stdout] test book_coverage_tests::tests::test_set_and_remove_trade_listener ... ok [INFO] [stdout] test book_coverage_tests::tests::test_mid_price_edge_cases ... ok [INFO] [stdout] test book_coverage_tests::tests::test_with_trade_listener_constructor ... ok [INFO] [stdout] test book_coverage_tests::tests::test_trade_listener_with_symbol_information ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_early_exit_full_match ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_batch_removal_operations ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_empty_opposite_side_limit_order ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_empty_opposite_side_market_order ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_empty_price_level_removal ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_filled_orders_tracking ... ok [INFO] [stdout] test book_coverage_tests::tests::test_spread_edge_cases ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_market_order_insufficient_liquidity ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_price_limit_buy_exceeds ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_price_level_removed_by_thread ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_price_limit_sell_below ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_peek_match_early_termination ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_match_order_with_transactions ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_peek_match_price_limit_buy_continue ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_peek_match_empty_price_levels ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_peek_match_price_limit_sell_continue ... ok [INFO] [stdout] test matching_coverage_tests::tests::test_peek_match_quantity_calculation ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_match_order_price_limit_continue_conditions ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_match_order_no_liquidity_with_limit_price ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_match_order_insufficient_liquidity_market_order ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_match_order_with_price_limit_buy_side ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_match_orders_batch ... ok [INFO] [stdout] test book_coverage_tests::tests::test_get_orders_at_price_empty_level ... ok [INFO] [stdout] test book_coverage_tests::tests::test_get_volume_by_price_empty_book ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_match_order_with_price_limit_sell_side ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_peek_match_empty_order_book ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_peek_match_with_price_limit ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_peek_match_exceeds_available_quantity ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_update_nonexistent_order ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_order_type_set_quantity_methods ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_order_type_quantity_methods ... ok [INFO] [stdout] test matching_coverage_tests_extended::tests::test_peek_match_price_limit_continue_conditions ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_add_iceberg_order_with_extra_fields ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_update_order_price_same_value ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_update_order_price_success ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_update_order_quantity_success ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_add_post_only_order_with_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_extra_fields_with_empty_string ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_extra_fields_with_unicode_characters ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_multiple_orders_with_different_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_iceberg_order_with_extra_fields ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_update_order_price_and_quantity_success ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_add_iceberg_order_without_extra_fields ... ok [INFO] [stdout] test modifications_coverage_tests::tests::test_order_type_total_quantity_methods ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_add_limit_order_with_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_add_limit_order_without_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_add_post_only_order_without_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests::tests::test_extra_fields_functionality_with_complex_data ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_iceberg_order_without_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_limit_order_ioc_partial_fill ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_limit_order_fok_incomplete_fill ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_limit_order_fok_complete_fill ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_post_only_order_no_cross ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_limit_order_ioc_no_fill ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_post_only_order_would_cross ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_iceberg_order_zero_visible_quantity ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_add_iceberg_order_zero_hidden_quantity ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_order_type_methods_coverage ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_submit_market_order_with_liquidity ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_submit_market_order_without_extra_fields ... ok [INFO] [stdout] test operations_coverage_tests_extended::tests::test_submit_market_order_insufficient_liquidity ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_iceberg_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_standard_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_trailing_stop_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_pegged_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_post_only_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_reserve_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_has_expired_gtd_order_expired ... ok [INFO] [stdout] test private_coverage_tests::tests::test_has_expired_with_market_close_set ... ok [INFO] [stdout] test private_coverage_tests::tests::test_has_expired_gtd_order_not_expired ... ok [INFO] [stdout] test private_coverage_tests::tests::test_convert_to_unit_type_market_to_limit_order ... ok [INFO] [stdout] test private_coverage_tests::tests::test_will_cross_market_sell_side ... ok [INFO] [stdout] test private_coverage_tests::tests::test_has_expired_without_market_close ... ok [INFO] [stdout] test private_coverage_tests::tests::test_place_order_in_book_sell_side ... ok [INFO] [stdout] test private_coverage_tests::tests::test_place_order_in_book_existing_price_level ... ok [INFO] [stdout] test private_coverage_tests::tests::test_will_cross_market_buy_side ... ok [INFO] [stdout] test private_coverage_tests::tests::test_will_cross_market_no_opposite_side ... ok [INFO] [stdout] test private_coverage_tests::tests::test_place_order_in_book_buy_side ... ok [INFO] [stdout] test snapshot_restore_tests::tests_snapshot_restore::restore_rejects_checksum_mismatch ... ok [INFO] [stdout] test snapshot_restore_tests::tests_snapshot_restore::restore_rejects_symbol_mismatch ... ok [INFO] [stdout] test snapshot_restore_tests::tests_snapshot_restore::snapshot_package_round_trip_restores_orders ... ok [INFO] [stdout] test snapshot_restore_tests::tests_snapshot_restore::restore_rejects_version_mismatch ... ok [INFO] [stderr] Doc-tests orderbook_rs [INFO] [stdout] test snapshot_restore_tests::tests_snapshot_restore::snapshot_json_round_trip_restores_book_state ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 101 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 28 tests [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::buy_sell_pressure (line 2163) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::cumulative_depth_to_target (line 495) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::enriched_snapshot_with_metrics (line 1908) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::levels_until_depth (line 1449) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::enriched_snapshot (line 1868) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::find_level (line 1532) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::is_thin_book (line 2212) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::depth_statistics (line 2064) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::depth_distribution (line 2250) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::levels_in_range (line 1489) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::micro_price (line 763) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::levels_with_cumulative_depth (line 1403) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::market_impact (line 874) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::price_n_ticks_inside (line 1198) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::simulate_market_order (line 994) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::spread_absolute (line 604) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::spread_bps (line 636) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::total_depth_at_levels (line 551) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::vwap (line 684) ... ok [INFO] [stdout] test src/orderbook/snapshot.rs - orderbook::snapshot::EnrichedSnapshot (line 257) ... ok [INFO] [stdout] test src/orderbook/snapshot.rs - orderbook::snapshot::MetricFlags (line 212) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::order_book_imbalance (line 817) ... ok [INFO] [stdout] test src/prelude.rs - prelude (line 13) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::liquidity_in_range (line 1089) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::price_at_depth_adjusted (line 1320) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::queue_ahead_at_price (line 1154) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::price_for_queue_position (line 1253) ... ok [INFO] [stdout] test src/orderbook/book.rs - orderbook::book::OrderBook::price_at_depth (line 439) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] all doctests ran in 1.12s; merged doctests compilation took 1.07s [INFO] running `Command { std: "docker" "inspect" "10c1737bca4a76bd1ae8cb49c5a6bab2cf30177ec18e218eb3f6ea80e48dd082", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "10c1737bca4a76bd1ae8cb49c5a6bab2cf30177ec18e218eb3f6ea80e48dd082", kill_on_drop: false }` [INFO] [stdout] 10c1737bca4a76bd1ae8cb49c5a6bab2cf30177ec18e218eb3f6ea80e48dd082