[INFO] fetching crate arimaa_engine_step 1.0.1...
[INFO] testing arimaa_engine_step-1.0.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate arimaa_engine_step 1.0.1 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate arimaa_engine_step 1.0.1
[INFO] finished tweaking crates.io crate arimaa_engine_step 1.0.1
[INFO] tweaked toml for crates.io crate arimaa_engine_step 1.0.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate arimaa_engine_step 1.0.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 64 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.3.6 (available: v0.7.0)
[INFO] [stderr]       Adding itertools v0.10.5 (available: v0.14.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 980ad4bb611ea062514a5b5dd81eb59595f92962fa9f6425880ee443c2e52d2e
[INFO] running `Command { std: "docker" "start" "-a" "980ad4bb611ea062514a5b5dd81eb59595f92962fa9f6425880ee443c2e52d2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "980ad4bb611ea062514a5b5dd81eb59595f92962fa9f6425880ee443c2e52d2e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "980ad4bb611ea062514a5b5dd81eb59595f92962fa9f6425880ee443c2e52d2e", kill_on_drop: false }`
[INFO] [stdout] 980ad4bb611ea062514a5b5dd81eb59595f92962fa9f6425880ee443c2e52d2e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8e0fdfbf19c1ecdd397452a61fdeb1712e1e06d0a759e311db8f63131513dc09
[INFO] running `Command { std: "docker" "start" "-a" "8e0fdfbf19c1ecdd397452a61fdeb1712e1e06d0a759e311db8f63131513dc09", kill_on_drop: false }`
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling arimaa_engine_step v1.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `macros::*`
[INFO] [stdout]    --> src/lib.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub use macros::*;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `finish` that must be used
[INFO] [stdout]    --> src/engine.rs:227:9
[INFO] [stdout]     |
[INFO] [stdout] 227 |         state.finish();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 227 |         let _ = state.finish();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/linked_list.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.80s
[INFO] running `Command { std: "docker" "inspect" "8e0fdfbf19c1ecdd397452a61fdeb1712e1e06d0a759e311db8f63131513dc09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8e0fdfbf19c1ecdd397452a61fdeb1712e1e06d0a759e311db8f63131513dc09", kill_on_drop: false }`
[INFO] [stdout] 8e0fdfbf19c1ecdd397452a61fdeb1712e1e06d0a759e311db8f63131513dc09
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9f42d116e0c8f10d84de834cc4a997ee5245fecb539704fca78df957a535d023
[INFO] running `Command { std: "docker" "start" "-a" "9f42d116e0c8f10d84de834cc4a997ee5245fecb539704fca78df957a535d023", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stdout] warning: unused import: `macros::*`
[INFO] [stdout]    --> src/lib.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub use macros::*;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `finish` that must be used
[INFO] [stdout]    --> src/engine.rs:227:9
[INFO] [stdout]     |
[INFO] [stdout] 227 |         state.finish();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 227 |         let _ = state.finish();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/linked_list.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling criterion v0.3.6
[INFO] [stderr]    Compiling arimaa_engine_step v1.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `macros::*`
[INFO] [stdout]    --> src/lib.rs:236:9
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub use macros::*;
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `finish` that must be used
[INFO] [stdout]    --> src/engine.rs:227:9
[INFO] [stdout]     |
[INFO] [stdout] 227 |         state.finish();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 227 |         let _ = state.finish();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/linked_list.rs:66:17
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stdout]    |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 12.73s
[INFO] running `Command { std: "docker" "inspect" "9f42d116e0c8f10d84de834cc4a997ee5245fecb539704fca78df957a535d023", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9f42d116e0c8f10d84de834cc4a997ee5245fecb539704fca78df957a535d023", kill_on_drop: false }`
[INFO] [stdout] 9f42d116e0c8f10d84de834cc4a997ee5245fecb539704fca78df957a535d023
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1000957c362e1eef248e3ee0dbbf80c6ecff844c8bcc8483d7883b8dec663dc7
[INFO] running `Command { std: "docker" "start" "-a" "1000957c362e1eef248e3ee0dbbf80c6ecff844c8bcc8483d7883b8dec663dc7", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `macros::*`
[INFO] [stderr]    --> src/lib.rs:236:9
[INFO] [stderr]     |
[INFO] [stderr] 236 | pub use macros::*;
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `finish` that must be used
[INFO] [stderr]    --> src/engine.rs:227:9
[INFO] [stderr]     |
[INFO] [stderr] 227 |         state.finish();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 227 |         let _ = state.finish();
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/linked_list.rs:66:17
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub fn iter(&self) -> Iter<T> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub fn iter(&self) -> Iter<'_, T> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: `arimaa_engine_step` (lib) generated 3 warnings (run `cargo fix --lib -p arimaa_engine_step` to apply 2 suggestions)
[INFO] [stderr] warning: `arimaa_engine_step` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/arimaa_engine_step-eafe112eec07af0a)
[INFO] [stdout] 
[INFO] [stdout] running 120 tests
[INFO] [stdout] test action::tests::test_from_bit_board_h8 ... ok
[INFO] [stdout] test action::tests::test_as_bit_board_e5 ... ok
[INFO] [stdout] test action::tests::test_from_bit_board_e5 ... ok
[INFO] [stdout] test action::tests::test_from_bit_board_h1 ... ok
[INFO] [stdout] test action::tests::test_piece_precedence_camel ... ok
[INFO] [stdout] test action::tests::test_piece_precedence_cat ... ok
[INFO] [stdout] test action::tests::test_piece_precedence_dog ... ok
[INFO] [stdout] test action::tests::test_piece_precedence_elephant ... ok
[INFO] [stdout] test bit_manip::tests::test_first_set_bit_multiple ... ok
[INFO] [stdout] test bit_manip::tests::test_single_bit_index_first_bit ... ok
[INFO] [stdout] test bit_manip::tests::test_single_bit_index_last_bit ... ok
[INFO] [stdout] test bit_manip::tests::test_single_bit_index_second_bit ... ok
[INFO] [stdout] test bit_manip::tests::test_single_bit_index_third_bit ... ok
[INFO] [stdout] test bit_manip::tests::test_single_bit_index_u64_last_bit ... ok
[INFO] [stdout] test action::tests::test_piece_precedence_horse ... ok
[INFO] [stdout] test action::tests::test_piece_precedence_rabbit ... ok
[INFO] [stdout] test action::tests::test_from_bit_board_a1 ... ok
[INFO] [stdout] test action::tests::test_to_square_to_bit_board_from_bit_board_back_to_square ... ok
[INFO] [stdout] test display::tests::test_gamestate_to_str ... ok
[INFO] [stdout] test action::tests::test_as_bit_board_h1 ... ok
[INFO] [stdout] test display::tests::test_gamestate_fromstr_player ... ok
[INFO] [stdout] test engine_tests::tests::test_action_cant_push_while_frozen_2 ... ok
[INFO] [stdout] test action::tests::test_as_bit_board_h8 ... ok
[INFO] [stdout] test display::tests::test_gamestate_fromstr_move_number_default ... ok
[INFO] [stdout] test display::tests::test_gamestate_fromstr_player_w ... ok
[INFO] [stdout] test engine_tests::tests::test_action_cant_push_while_frozen ... ok
[INFO] [stdout] test engine_tests::tests::test_action_correct_state_after_pull_with_trap_accepted ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_down ... ok
[INFO] [stdout] test display::tests::test_gamestate_fromstr ... ok
[INFO] [stdout] test display::tests::test_gamestate_fromstr_move_number ... ok
[INFO] [stdout] test display::tests::test_gamestate_from_str_and_to_str ... ok
[INFO] [stdout] test engine_tests::tests::test_action_cant_push_on_last_step ... ok
[INFO] [stdout] test engine_tests::tests::test_action_cant_push_and_pull_simultaneously ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_left ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_push_must_push_elephant ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_trap_adjacent_opp_unsupported ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_trap_supported_left ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_trap_supported_right ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_possible_pull_with_invalid_pull ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_trap_unsupported ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_push_must_push_rabbit ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_up ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_trap_supported_bottom ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_possible_pull_with_invalid_pull_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_action_pass ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_possible_pull_with_valid_pull ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_dog ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_horse ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_pull_into_trap ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_p2_camel ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_elephant ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_initial ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_majors ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_rabbits ... ok
[INFO] [stdout] test engine_tests::tests::test_action_placing_pieces ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_p2_initial ... ok
[INFO] [stdout] test engine_tests::tests::test_can_pass_during_must_push ... ok
[INFO] [stdout] test engine_tests::tests::test_can_pass_during_place_phase ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_initial_play_state ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_right ... ok
[INFO] [stdout] test engine_tests::tests::test_action_move_trap_supported_top ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_account_for_step_equal ... ok
[INFO] [stdout] test engine_tests::tests::test_can_pass_during_possible_pull ... ok
[INFO] [stdout] test engine_tests::tests::test_can_pass_false_if_same_as_start_of_move_state ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_account_for_four_actions ... ok
[INFO] [stdout] test engine_tests::tests::test_can_pass_first_move ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_allow_for_pass_to_equal ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_mid_turn ... ok
[INFO] [stdout] test engine_tests::tests::test_action_place_camel ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_account_for_step_not_equal ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_and_p2_lost_rabbits_as_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_and_p2_met_as_p1 ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_account_for_trapped_pieces ... ok
[INFO] [stdout] test engine_tests::tests::test_action_correct_state_after_4_steps ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_no_winner ... ok
[INFO] [stdout] test action::tests::test_from_bit_board_a8 ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_switch_player_on_pass_for_step ... ok
[INFO] [stdout] test engine_tests::tests::test_hash_should_account_for_player_not_equal ... ok
[INFO] [stdout] test action::tests::test_as_bit_board_a1 ... ok
[INFO] [stdout] test action::tests::test_as_bit_board_a8 ... ok
[INFO] [stdout] test bit_manip::tests::test_first_set_bit_1 ... ok
[INFO] [stdout] test bit_manip::tests::test_first_set_bit_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_and_p2_lost_rabbits_as_p1 ... ok
[INFO] [stdout] test bit_manip::tests::test_first_set_bit_last ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p2_winner_as_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_winner_as_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p2_lost_rabbits_as_p1 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p2_winner_as_p1 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p2_lost_rabbits_as_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_lost_rabbits_as_p1 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_4 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_5 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_winner_as_p1 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_lost_rabbits_as_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_is_terminal_p1_and_p2_met_as_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_action_correct_state_after_pull_with_trap ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_6 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_3 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_matches_first_step ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p2_3 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_matches_is_terminal_if_only_passing ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p1_mid_move ... ok
[INFO] [stdout] test linked_list::test::basics ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_supported_piece_p2_1 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p1_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p2_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_push_p2_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p2_4 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_does_not_duplicate_piece_that_can_be_both_pushed_and_pull ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_push_p2_1 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_7 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_matches_first_step_2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_push_p2_4 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_repeated_positions ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_p2 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_piece_p1 ... ok
[INFO] [stdout] test engine_tests::tests::test_valid_actions_frozen_push_p2_3 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 120 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests arimaa_engine_step
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/lib.rs - (line 163) ... ok
[INFO] [stdout] test src/lib.rs - (line 20) ... ok
[INFO] [stdout] test src/lib.rs - (line 45) ... ok
[INFO] [stdout] test src/lib.rs - (line 71) ... ok
[INFO] [stdout] test src/lib.rs - (line 9) ... ok
[INFO] [stdout] test src/lib.rs - (line 99) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.98s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1000957c362e1eef248e3ee0dbbf80c6ecff844c8bcc8483d7883b8dec663dc7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1000957c362e1eef248e3ee0dbbf80c6ecff844c8bcc8483d7883b8dec663dc7", kill_on_drop: false }`
[INFO] [stdout] 1000957c362e1eef248e3ee0dbbf80c6ecff844c8bcc8483d7883b8dec663dc7
