[INFO] updating cached repository https://github.com/ikornaselur/rusty-invaders [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] a8cb5acd3afd602d7873630dc1640c37e95d16da [INFO] testing ikornaselur/rusty-invaders against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fikornaselur%2Frusty-invaders" "/workspace/builds/worker-2/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ikornaselur/rusty-invaders on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/ikornaselur/rusty-invaders [INFO] finished tweaking git repo https://github.com/ikornaselur/rusty-invaders [INFO] tweaked toml for git repo https://github.com/ikornaselur/rusty-invaders written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/ikornaselur/rusty-invaders already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stdout] b54eaf2a39dd70c9de2ba1421b9cf48f7bc567e037448ce3cfcc46e7d788fe6e [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "b54eaf2a39dd70c9de2ba1421b9cf48f7bc567e037448ce3cfcc46e7d788fe6e"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling sfml-build v0.2.0 [INFO] [stderr] Compiling csfml-system-sys v0.4.0 [INFO] [stderr] Compiling csfml-window-sys v0.4.0 [INFO] [stderr] Compiling csfml-audio-sys v0.4.0 [INFO] [stderr] Compiling csfml-graphics-sys v0.4.0 [INFO] [stderr] Compiling sfml v0.14.0 [INFO] [stderr] Compiling rusty-invaders v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:12:46 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn run(config: Config) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/cpu/mod.rs:516:13 [INFO] [stderr] | [INFO] [stderr] 516 | byte => { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 7.89s [INFO] running `"docker" "inspect" "b54eaf2a39dd70c9de2ba1421b9cf48f7bc567e037448ce3cfcc46e7d788fe6e"` [INFO] running `"docker" "rm" "-f" "b54eaf2a39dd70c9de2ba1421b9cf48f7bc567e037448ce3cfcc46e7d788fe6e"` [INFO] [stdout] b54eaf2a39dd70c9de2ba1421b9cf48f7bc567e037448ce3cfcc46e7d788fe6e [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stdout] 8f655441a7eb367bc74207831e73920fdd772cdea2c3317b4e232e40813ae832 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "8f655441a7eb367bc74207831e73920fdd772cdea2c3317b4e232e40813ae832"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling rusty-invaders v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:12:46 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn run(config: Config) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/cpu/mod.rs:516:13 [INFO] [stderr] | [INFO] [stderr] 516 | byte => { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:12:46 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn run(config: Config) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/cpu/mod.rs:516:13 [INFO] [stderr] | [INFO] [stderr] 516 | byte => { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 5.26s [INFO] running `"docker" "inspect" "8f655441a7eb367bc74207831e73920fdd772cdea2c3317b4e232e40813ae832"` [INFO] running `"docker" "rm" "-f" "8f655441a7eb367bc74207831e73920fdd772cdea2c3317b4e232e40813ae832"` [INFO] [stdout] 8f655441a7eb367bc74207831e73920fdd772cdea2c3317b4e232e40813ae832 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] d929cb5751a99711bc090ee66d0fa96aebd39d0be9f0fed1dae861d75e27632a [INFO] running `"docker" "start" "-a" "d929cb5751a99711bc090ee66d0fa96aebd39d0be9f0fed1dae861d75e27632a"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:12:46 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn run(config: Config) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/cpu/mod.rs:516:13 [INFO] [stderr] | [INFO] [stderr] 516 | byte => { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:12:46 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn run(config: Config) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/cpu/mod.rs:516:13 [INFO] [stderr] | [INFO] [stderr] 516 | byte => { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/rusty_invaders-8953e18b0a0e0981 [INFO] [stdout] [INFO] [stdout] running 191 tests [INFO] [stdout] test cpu::flags::test::as_bits_returns_correct_bits ... ok [INFO] [stdout] test cpu::flags::test::set_sets_sign_flag ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_e_adds_e_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_b_adds_b_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_b_adds_b_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_c_adds_c_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_where_carry_causes_carry ... ok [INFO] [stdout] test cpu::flags::test::set_sets_carry_flag ... ok [INFO] [stdout] test cpu::flags::test::set_from_bits_sets_flags ... ok [INFO] [stdout] test cpu::flags::test::set_sets_parity_flag ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_h_adds_h_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::aci_adds_immediate_byte_to_accumulator_with_carry ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_a_adds_a_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_m_adds_byte_at_hl_address_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_l_adds_l_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_c_adds_c_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_with_max_values ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_m_adds_m_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adi_adds_immediate_byte_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_l_adds_l_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_l_ands_l_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::dad_sp_double_adds_sp_to_h_l ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_h_adds_h_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_b_ands_b_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_a_adds_a_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_e_ands_e_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_e_adds_e_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_a_ands_a_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_h_ands_h_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::dad_h_double_adds_h_l_to_h_l ... ok [INFO] [stdout] test cpu::instructions::addition::test::dad_d_double_adds_d_e_to_h_l ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_c_ands_c_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::call::test::cp_pushes_the_address_after_to_the_stack_and_jumps_if_sign_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::call::test::cnz_pushes_the_address_after_to_the_stack_and_jumps_if_zero_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::call::test::cnc_pushes_the_address_after_to_the_stack_and_jumps_if_carry_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::call::test::cc_pushes_the_address_after_to_the_stack_and_jumps_if_carry_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::and::test::ani_ands_immediate_byte_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::carry::test::cmc_reverses_carry_bit ... ok [INFO] [stdout] test cpu::instructions::carry::test::stc_sets_carry_bit ... ok [INFO] [stdout] test cpu::instructions::compare::test::cmp_b_with_equal_b_compares_b_to_accumulator_and_sets_flags ... ok [INFO] [stdout] test cpu::instructions::compare::test::cmp_b_with_larger_b_compares_b_to_accumulator_and_sets_flags ... ok [INFO] [stdout] test cpu::instructions::compare::test::cmp_b_with_smaller_b_compares_b_to_accumulator_and_sets_flags ... ok [INFO] [stdout] test cpu::instructions::compare::test::cpi_with_equal_immediate_byte_compares_it_to_accumulator_and_sets_flags ... ok [INFO] [stdout] test cpu::instructions::compare::test::cpi_with_larget_immediate_byte_compares_it_to_accumulator_and_sets_flags ... ok [INFO] [stdout] test cpu::instructions::compare::test::cpi_with_smaller_immediate_byte_compares_it_to_accumulator_and_sets_flags ... ok [INFO] [stdout] test cpu::instructions::complement::test::cma_complements_accumulator ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_a_decreases_a_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_b_decreases_b_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_c_decreases_c_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_d_decreases_d_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_e_decreases_e_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_h_decreases_h_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_l_decreases_l_by_one ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_m_decreases_byte_at_hl_address ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcr_wraps_and_sets_carry_flag ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcx_b_increments_b_c_pair ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcx_d_increments_d_e_pair ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcx_h_increments_h_l_pair ... ok [INFO] [stdout] test cpu::instructions::decrement::test::dcx_sp_increments_sp ... ok [INFO] [stdout] test cpu::instructions::exchange::test::xchg_exchanges_h_l_pair_with_d_e_pair ... ok [INFO] [stdout] test cpu::instructions::exchange::test::xthl_exchanges_h_l_pair_with_bytes_on_stack ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_a_increases_a_by_one ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_b_increases_b_by_one ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_c_increases_c_by_one ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_d_increases_d_by_one ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_e_increases_e_by_one ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_h_increases_h_by_one ... ok [INFO] [stdout] test cpu::instructions::call::test::cpe_pushes_the_address_after_to_the_stack_and_jumps_if_parity_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_l_increases_l_by_one ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_m_increases_byte_at_hl_address ... ok [INFO] [stdout] test cpu::instructions::increment::test::inr_wraps_and_sets_carry_flag ... ok [INFO] [stdout] test cpu::instructions::increment::test::inx_h_increments_h_l_pair ... ok [INFO] [stdout] test cpu::instructions::increment::test::inx_b_increments_b_c_pair ... ok [INFO] [stdout] test cpu::instructions::increment::test::inx_d_increments_d_e_pair ... ok [INFO] [stdout] test cpu::instructions::increment::test::inx_sp_increments_sp ... ok [INFO] [stdout] test cpu::instructions::interrupt::test::di_enables_interrupts ... ok [INFO] [stdout] test cpu::instructions::interrupt::test::ei_enables_interrupts ... ok [INFO] [stdout] test cpu::instructions::io::test::input_reads_from_input_port_into_accumulator ... ok [INFO] [stdout] test cpu::instructions::io::test::output_writes_into_output_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::jump::test::jc_sets_pc_to_new_address_if_carry_flag_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jm_sets_pc_to_new_address_if_sign_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jmp_sets_pc_to_new_address ... ok [INFO] [stdout] test cpu::instructions::jump::test::jnc_sets_pc_to_new_address_if_carry_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jnz_sets_pc_to_new_address_if_zero_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jp_sets_pc_to_new_address_if_sign_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jpe_sets_pc_to_new_address_if_parity_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jpo_sets_pc_to_new_address_if_parity_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::jump::test::jz_sets_pc_to_new_address_if_zero_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::load::test::lda_loads_accumulator_from_address ... ok [INFO] [stdout] test cpu::instructions::load::test::ldax_b_accumulator_from_b_c_address ... ok [INFO] [stdout] test cpu::instructions::load::test::ldax_d_accumulator_from_d_e_address ... ok [INFO] [stdout] test cpu::instructions::load::test::lhld_loads_h_and_l_from_address ... ok [INFO] [stdout] test cpu::instructions::load::test::lxi_b_reads_bytes_into_registers ... ok [INFO] [stdout] test cpu::instructions::load::test::lxi_d_reads_bytes_into_registers ... ok [INFO] [stdout] test cpu::instructions::load::test::lxi_h_reads_bytes_into_registers ... ok [INFO] [stdout] test cpu::instructions::load::test::lxi_sp_reads_bytes_into_registers ... ok [INFO] [stdout] test cpu::instructions::load::test::pchl_loads_pc_from_h_l_pair ... ok [INFO] [stdout] test cpu::instructions::load::test::sphl_loads_sp_from_h_and_l ... ok [INFO] [stdout] test cpu::instructions::call::test::cm_pushes_the_address_after_to_the_stack_and_jumps_if_sign_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_m_ands_byte_at_hl_address_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::mov::test::mov_moves_between_registers ... ok [INFO] [stdout] test cpu::instructions::call::test::cpo_pushes_the_address_after_to_the_stack_and_jumps_if_parity_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::addition::test::add_d_adds_d_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::addition::test::adc_d_adds_d_with_carry_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_d_ands_d_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::call::test::cz_pushes_the_address_after_to_the_stack_and_jumps_if_zero_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::call::test::call_pushes_the_address_after_to_the_stack_and_jumps ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_b_ors_b_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_m_ors_byte_at_hl_address_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::or::test::ori_ors_immediate_byte_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_e_ors_e_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_l_ors_l_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_resets_carry_bit ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_h_ors_h_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::pop::test::pop_into_psq_pops_two_bytes_off_the_stack_into_accumulator_and_flags ... ok [INFO] [stdout] test cpu::instructions::push::test::push_from_psw_pushed_bytes_onto_the_stack_from_accumulator_and_flags ... ok [INFO] [stdout] test cpu::instructions::push::test::push_from_register_b_pushed_bytes_onto_the_stack_from_b_and_c ... ok [INFO] [stdout] test cpu::instructions::push::test::push_from_register_d_pushed_bytes_onto_the_stack_from_d_and_e ... ok [INFO] [stdout] test cpu::instructions::restart::test::rst_0_writes_pc_to_stack_and_sets_pc_to_0 ... ok [INFO] [stdout] test cpu::instructions::returns::test::rc_pops_the_address_off_the_stack_and_jumps_back_if_carry_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::returns::test::ret_pops_the_address_off_the_stack_and_jumps_back ... ok [INFO] [stdout] test cpu::instructions::returns::test::rm_pops_the_address_off_the_stack_and_jumps_back_if_sign_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::returns::test::rnc_pops_the_address_off_the_stack_and_jumps_back_if_carry_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::returns::test::rnz_pops_the_address_off_the_stack_and_jumps_back_if_zero_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::returns::test::rp_pops_the_address_off_the_stack_and_jumps_back_if_sign_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::mov::test::mov_moves_from_memory_address_if_from_m ... ok [INFO] [stdout] test cpu::instructions::returns::test::rpe_pops_the_address_off_the_stack_and_jumps_back_if_parity_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::returns::test::rpo_pops_the_address_off_the_stack_and_jumps_back_if_parity_flag_is_not_set ... ok [INFO] [stdout] test cpu::instructions::rotate::test::ral_rotates_accumulator_left_through_carry ... ok [INFO] [stdout] test cpu::instructions::rotate::test::rlc_rotates_accumulator_left ... ok [INFO] [stdout] test cpu::instructions::rotate::test::rar_rotates_accumulator_right_through_carry ... ok [INFO] [stdout] test cpu::instructions::rotate::test::rrc_rotates_accumulator_right ... ok [INFO] [stdout] test cpu::instructions::store::test::shld_stores_h_and_l_at_address ... ok [INFO] [stdout] test cpu::instructions::store::test::sta_stores_accumulator_at_address ... ok [INFO] [stdout] test cpu::instructions::store::test::stax_b_stores_accumulator_at_address_from_b_c ... ok [INFO] [stdout] test cpu::instructions::store::test::stax_d_stores_accumulator_at_address_from_d_e ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_b_subs_b_from_accumulator_with_carry_flag_and_borrowing ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_b_subs_b_from_accumulator_with_carry_flag_and_not_borrowing ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_b_subs_b_from_accumulator_without_carry_flag_and_borrowing ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_b_subs_b_from_accumulator_without_carry_flag_and_not_borrowing ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_c_subs_c_from_accumulator_with_carry_flag_set ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_d_subs_d_from_accumulator_with_carry_flag_set ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_e_subs_e_from_accumulator_with_carry_flag_set ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_h_subs_h_from_accumulator_with_carry_flag_set ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_m_subs_byte_at_hl_address_to_accumulator_with_carry_flag_set ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_sub_with_carry_bit ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbb_sub_with_max_values ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sbi_removes_immediate_byte_from_accumulator_with_borrow ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_a_resets_the_carry_and_zeros_the_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_a_subs_a_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_b_subs_b_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_c_subs_c_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_d_subs_d_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_e_subs_e_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_h_subs_h_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_l_subs_l_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_m_subs_byte_at_hl_address_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_resets_the_carry_bit_if_no_borrow ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sub_sets_the_carry_bit_if_borrow ... ok [INFO] [stdout] test cpu::instructions::subtraction::test::sui_removes_immediate_byte_from_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_a_xors_a_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_b_xors_b_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_c_xors_c_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_d_xors_d_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_e_xors_e_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_h_xors_h_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_l_xors_l_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_m_xors_byte_at_hl_address_to_accumulator ... ok [INFO] [stdout] test cpu::instructions::xor::test::xra_resets_carry_bit ... ok [INFO] [stdout] test cpu::instructions::xor::test::xri_xors_immediate_byte_with_accumulator ... ok [INFO] [stdout] test cpu::test::get_frame_returns_whole_frame_buffer ... ok [INFO] [stdout] test cpu::test::read_address_returns_double_and_increases_pc ... ok [INFO] [stdout] test cpu::test::read_byte_from_stack_returns_byte_and_increases_sp ... ok [INFO] [stdout] test cpu::test::read_byte_returns_byte_and_increases_pc ... ok [INFO] [stdout] test cpu::test::write_byte_to_stack_writes_byte_and_decrements_pc ... ok [INFO] [stdout] test machine::io::test::read_port_3 ... ok [INFO] [stdout] test machine::io::test::writing_port_2 ... ok [INFO] [stdout] test machine::io::test::writing_port_4 ... ok [INFO] [stdout] test cpu::instructions::pop::test::pop_into_register_h_pops_two_bytes_off_the_stack_into_h_and_l ... ok [INFO] [stdout] test cpu::instructions::and::test::ana_resets_carry_bit ... ok [INFO] [stdout] test cpu::instructions::push::test::push_from_register_h_pushed_bytes_onto_the_stack_from_h_and_l ... ok [INFO] [stdout] test cpu::instructions::returns::test::rz_pops_the_address_off_the_stack_and_jumps_back_if_zero_flag_is_set ... ok [INFO] [stdout] test cpu::instructions::mov::test::mov_moves_to_memory_address_if_to_m ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_c_ors_c_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::mov::test::mvi_sets_byte_in_memory_to_byte_for_register_m ... ok [INFO] [stdout] test cpu::instructions::mov::test::mvi_sets_register_to_byte ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_d_ors_d_with_accumulator ... ok [INFO] [stdout] test cpu::instructions::or::test::ora_a_ors_a_with_accumulator ... ok [INFO] [stderr] Running /opt/rustwide/target/debug/deps/rusty_invaders-31b09a7d8351d2b4 [INFO] [stdout] test cpu::instructions::addition::test::dad_b_double_adds_b_c_to_h_l ... ok [INFO] [stdout] test cpu::instructions::pop::test::pop_into_register_b_pops_two_bytes_off_the_stack_into_b_and_c ... ok [INFO] [stdout] test cpu::instructions::pop::test::pop_into_register_d_pops_two_bytes_off_the_stack_into_d_and_e ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 191 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/integration_test-8a31906820f2c3cc [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test full_cpu_test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests rusty-invaders [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 [INFO] [stdout] [INFO] running `"docker" "inspect" "d929cb5751a99711bc090ee66d0fa96aebd39d0be9f0fed1dae861d75e27632a"` [INFO] running `"docker" "rm" "-f" "d929cb5751a99711bc090ee66d0fa96aebd39d0be9f0fed1dae861d75e27632a"` [INFO] [stdout] d929cb5751a99711bc090ee66d0fa96aebd39d0be9f0fed1dae861d75e27632a