[INFO] fetching crate xiangting 3.2.1... [INFO] testing xiangting-3.2.1 against try#b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b for pr-145330-1 [INFO] extracting crate xiangting 3.2.1 into /workspace/builds/worker-6-tc2/source [INFO] started tweaking crates.io crate xiangting 3.2.1 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate xiangting 3.2.1 [INFO] tweaked toml for crates.io crate xiangting 3.2.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate xiangting 3.2.1 on toolchain b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate xiangting 3.2.1 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" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ef1adbbef923c446a492f83653a59d32d2b05b3fd5132c0f67fcf87b111943b5 [INFO] running `Command { std: "docker" "start" "-a" "ef1adbbef923c446a492f83653a59d32d2b05b3fd5132c0f67fcf87b111943b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ef1adbbef923c446a492f83653a59d32d2b05b3fd5132c0f67fcf87b111943b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef1adbbef923c446a492f83653a59d32d2b05b3fd5132c0f67fcf87b111943b5", kill_on_drop: false }` [INFO] [stdout] ef1adbbef923c446a492f83653a59d32d2b05b3fd5132c0f67fcf87b111943b5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 22dd8023116d7b5a399871ab89c8fc20c41bdc18c0ac734cf6db4e2ab2764b18 [INFO] running `Command { std: "docker" "start" "-a" "22dd8023116d7b5a399871ab89c8fc20c41bdc18c0ac734cf6db4e2ab2764b18", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling xiangting v3.2.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.53s [INFO] running `Command { std: "docker" "inspect" "22dd8023116d7b5a399871ab89c8fc20c41bdc18c0ac734cf6db4e2ab2764b18", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22dd8023116d7b5a399871ab89c8fc20c41bdc18c0ac734cf6db4e2ab2764b18", kill_on_drop: false }` [INFO] [stdout] 22dd8023116d7b5a399871ab89c8fc20c41bdc18c0ac734cf6db4e2ab2764b18 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5b1281c85448c034f3a7d9819a19162d479a1d320c42ca9bf5a5954b7caf1294 [INFO] running `Command { std: "docker" "start" "-a" "5b1281c85448c034f3a7d9819a19162d479a1d320c42ca9bf5a5954b7caf1294", kill_on_drop: false }` [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling clap_lex v0.7.4 [INFO] [stderr] Compiling cc v1.2.26 [INFO] [stderr] Compiling half v2.6.0 [INFO] [stderr] Compiling cxxbridge-flags v1.0.158 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling anstyle v1.0.11 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling clap_builder v4.5.39 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling link-cplusplus v1.0.10 [INFO] [stderr] Compiling cxx v1.0.158 [INFO] [stderr] Compiling mt19937 v3.1.0 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand v0.9.1 [INFO] [stderr] Compiling clap v4.5.39 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling cxxbridge-macro v1.0.158 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling xiangting v3.2.1 (/opt/rustwide/workdir) [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling criterion v0.6.0 [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 47.37s [INFO] running `Command { std: "docker" "inspect" "5b1281c85448c034f3a7d9819a19162d479a1d320c42ca9bf5a5954b7caf1294", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b1281c85448c034f3a7d9819a19162d479a1d320c42ca9bf5a5954b7caf1294", kill_on_drop: false }` [INFO] [stdout] 5b1281c85448c034f3a7d9819a19162d479a1d320c42ca9bf5a5954b7caf1294 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+b6ae10aa7319b7ebb6c7b3331dd71a9d6c9c5b4b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 89b6c802ffd97decd2771b0e3a2236c4dc3bc6277599ad3744d2b0f37419de68 [INFO] running `Command { std: "docker" "start" "-a" "89b6c802ffd97decd2771b0e3a2236c4dc3bc6277599ad3744d2b0f37419de68", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/xiangting-5e7e289823a39eb0) [INFO] [stdout] [INFO] [stdout] running 118 tests [INFO] [stdout] test bingpai::tests::invalid_bingpai_3_player_2m_8m ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_3_player_incomplete_hand ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_3_player_too_many_tiles ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_3_player_empty ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_5th_tile ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_empty ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_incomplete_hand ... ok [INFO] [stdout] test bingpai::tests::valid_bingpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_3_player_2m_8m ... ok [INFO] [stdout] test bingpai::tests::valid_bingpai_3_player ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_3_player_empty_bingpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_3_player_shisanyao_tenpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_3_player_standard_tenpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_3_player_qiduizi_tenpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_5th_tile ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_3_player_5th_tile ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_empty_bingpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_incomplete_hand ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_qiduizi_tenpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_shisanyao_tenpai ... ok [INFO] [stdout] test bingpai::tests::invalid_bingpai_too_many_tiles ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_standard_tenpai ... ok [INFO] [stdout] test calculate::tests::calculate_replacement_number_too_many_tiles ... ok [INFO] [stdout] test fulu_mianzi::tests::invalid_gangzi ... ok [INFO] [stdout] test fulu_mianzi::tests::gangzi_display ... ok [INFO] [stdout] test fulu_mianzi::tests::invalid_kezi ... ok [INFO] [stdout] test fulu_mianzi::tests::invalid_shunzi_combination ... ok [INFO] [stdout] test fulu_mianzi::tests::invalid_shunzi_out_of_range ... ok [INFO] [stdout] test fulu_mianzi::tests::invalid_shunzi_zipai ... ok [INFO] [stdout] test fulu_mianzi::tests::kezi_display ... ok [INFO] [stdout] test fulu_mianzi::tests::shunzi_display ... ok [INFO] [stdout] test fulu_mianzi::tests::valid_gangzi ... ok [INFO] [stdout] test fulu_mianzi::tests::valid_kezi ... ok [INFO] [stdout] test fulu_mianzi::tests::valid_shunzi ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_incomplete_hand ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_tenpai ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_win ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_with_2_triplets ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_with_quadruple ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_without_pair ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_incomplete_hand ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_no_terminals_and_honors ... ok [INFO] [stdout] test qiduizi::tests::calculate_replacement_number_with_triplet ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_tenpai ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_tenpai_13_wait ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_win ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_with_pair ... ok [INFO] [stdout] test shisanyao::tests::calculate_replacement_number_without_pair ... ok [INFO] [stdout] test shoupai::tests::invalid_shoupai_3_player_fulu_invalid_gangzi ... ok [INFO] [stdout] test shoupai::tests::invalid_shoupai_3_player_fulu_invalid_kezi ... ok [INFO] [stdout] test shoupai::tests::invalid_shoupai_3_player_fulu_shunzi ... ok [INFO] [stdout] test shoupai::tests::invalid_shoupai_fulu_5th_tile ... ok [INFO] [stdout] test shoupai::tests::invalid_shoupai_fulu_invalid_mianzi ... ok [INFO] [stdout] test shoupai::tests::to_fulupai_3_fulu ... ok [INFO] [stdout] test shoupai::tests::to_fulupai_menqian ... ok [INFO] [stdout] test shoupai::tests::to_fulupai_4_fulu ... ok [INFO] [stdout] test shoupai::tests::valid_shoupai_3_player_fulu ... ok [INFO] [stdout] test shoupai::tests::valid_shoupai_menqian ... ok [INFO] [stdout] test shoupai::tests::valid_shoupai_fulu ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_2_isolated_4_tiles_1 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_2_isolated_4_tiles_2 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_2_isolated_4_tiles_5 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_2_isolated_4_tiles_3 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_3_player_4_19m_3 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_3_player_4_19m_2 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_3_player_different_3_player_and_4_player ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_4_honors_2 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_2_isolated_4_tiles_4 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_4_honors_3 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_3_isolated_4_tiles ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_4_honors_1 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_3_player_4_19m_1 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_4_honors_4 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_different_3_player_and_4_player ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_empty ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_incomplete_hand_4_melds_without_a_pair ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_incomplete_melds ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_not_enough_meld_candidates ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_pair_sequence_sequence_pair ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_sequence_isolated_sequence ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_tenpai ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_shisanyao ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_too_many_meld_candidates ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_triplet_sequence ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_10 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_11 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_pair_triplet_sequence ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_12 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_15 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_17 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_prioritize_meld_candidates ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_1 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_18 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_13 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_14 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_2 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_3 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_4 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_16 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_6 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_5 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_8 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_win ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_9 ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_without_pair ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_with_meld ... ok [INFO] [stdout] test standard::hash::tests::test_hash_19m ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_waiting_for_the_5th_tile_7 ... ok [INFO] [stdout] test test_utils::tests::test_from_code_normal ... ok [INFO] [stdout] test test_utils::tests::test_from_code_empty ... ok [INFO] [stdout] test test_utils::tests::test_from_code_multiple_types ... ok [INFO] [stdout] test standard::calculate::tests::calculate_replacement_number_overdraw - should panic ... ok [INFO] [stdout] test test_utils::tests::test_from_code_offset_out_of_range_z - should panic ... ok [INFO] [stdout] test test_utils::tests::test_from_code_offset_out_of_range_number - should panic ... ok [INFO] [stdout] test test_utils::tests::test_from_code_no_type - should panic ... ok [INFO] [stdout] test shoupai::tests::invalid_shoupai_fulu_too_many_tiles ... ok [INFO] [stdout] test standard::hash::tests::test_hash_zipai ... ok [INFO] [stderr] Running tests/correctness.rs (/opt/rustwide/target/debug/deps/correctness-a7e196662e1274ca) [INFO] [stdout] test standard::hash::tests::test_hash_shupai ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 118 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.67s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/hand_generator.rs (/opt/rustwide/target/debug/deps/hand_generator-eeebf6c448dba6ee) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test tests::generate_hands_01 ... ok [INFO] [stdout] test tests::generate_hands_02 ... ok [INFO] [stdout] test tests::generate_hands_04 ... ok [INFO] [stdout] test tests::generate_hands_05 ... ok [INFO] [stdout] test tests::generate_hands_07 ... ok [INFO] [stdout] test tests::generate_hands_08 ... ok [INFO] [stdout] test tests::generate_hands_10 ... ok [INFO] [stdout] test tests::generate_hands_11 ... ok [INFO] [stdout] test tests::generate_hands_06 ... ok [INFO] [stdout] test tests::generate_hands_13 ... ok [INFO] [stdout] test tests::generate_hands_14 ... ok [INFO] [stdout] test tests::generate_hands_12 ... ok [INFO] [stdout] test tests::generate_hands_03 ... ok [INFO] [stdout] test tests::generate_hands_09 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/nyanten.rs (/opt/rustwide/target/debug/deps/nyanten-988f05c7ed24dcca) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests xiangting [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test src/shoupai.rs - shoupai::FuluMianziList (line 17) ... ok [INFO] [stdout] test src/bingpai.rs - bingpai::Bingpai (line 17) ... ok [INFO] [stdout] test src/fulu_mianzi.rs - fulu_mianzi::FuluMianzi::Shunzi (line 46) ... ok [INFO] [stdout] test src/fulu_mianzi.rs - fulu_mianzi::FuluMianzi::Gangzi (line 72) ... ok [INFO] [stdout] test src/lib.rs - (line 17) ... ok [INFO] [stdout] test src/fulu_mianzi.rs - fulu_mianzi::FuluMianzi (line 29) ... ok [INFO] [stdout] test src/fulu_mianzi.rs - fulu_mianzi::FuluMianzi::Kezi (line 62) ... ok [INFO] [stdout] test src/calculate.rs - calculate::calculate_replacement_number (line 31) ... ok [INFO] [stdout] test src/calculate.rs - calculate::calculate_replacement_number_3_player (line 128) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.59s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "89b6c802ffd97decd2771b0e3a2236c4dc3bc6277599ad3744d2b0f37419de68", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "89b6c802ffd97decd2771b0e3a2236c4dc3bc6277599ad3744d2b0f37419de68", kill_on_drop: false }` [INFO] [stdout] 89b6c802ffd97decd2771b0e3a2236c4dc3bc6277599ad3744d2b0f37419de68