[INFO] cloning repository https://github.com/yousefmoazzam/bittorrent-client [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yousefmoazzam/bittorrent-client" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyousefmoazzam%2Fbittorrent-client", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyousefmoazzam%2Fbittorrent-client'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 62aaa044d9a7e11e2411054d3e03cf0e5f8a5063 [INFO] testing yousefmoazzam/bittorrent-client against try#a7ce54db9b096bd1098d07c645b489195a667c9f for pr-137940 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyousefmoazzam%2Fbittorrent-client" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/yousefmoazzam/bittorrent-client on toolchain a7ce54db9b096bd1098d07c645b489195a667c9f [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a7ce54db9b096bd1098d07c645b489195a667c9f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/yousefmoazzam/bittorrent-client [INFO] finished tweaking git repo https://github.com/yousefmoazzam/bittorrent-client [INFO] tweaked toml for git repo https://github.com/yousefmoazzam/bittorrent-client written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/yousefmoazzam/bittorrent-client 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" "+a7ce54db9b096bd1098d07c645b489195a667c9f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+a7ce54db9b096bd1098d07c645b489195a667c9f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f950baad0deb021b6f6c2aa51e72dbc45e16b7023b8845b83445c2c4c7a8d195 [INFO] running `Command { std: "docker" "start" "-a" "f950baad0deb021b6f6c2aa51e72dbc45e16b7023b8845b83445c2c4c7a8d195", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f950baad0deb021b6f6c2aa51e72dbc45e16b7023b8845b83445c2c4c7a8d195", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f950baad0deb021b6f6c2aa51e72dbc45e16b7023b8845b83445c2c4c7a8d195", kill_on_drop: false }` [INFO] [stdout] f950baad0deb021b6f6c2aa51e72dbc45e16b7023b8845b83445c2c4c7a8d195 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+a7ce54db9b096bd1098d07c645b489195a667c9f" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 547f08c000d36424a5fb1255fe33c0ca0d062d2e7ba05529df478803e8cb7e5d [INFO] running `Command { std: "docker" "start" "-a" "547f08c000d36424a5fb1255fe33c0ca0d062d2e7ba05529df478803e8cb7e5d", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling libc v0.2.168 [INFO] [stderr] Compiling once_cell v1.20.2 [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling pin-project-lite v0.2.15 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling bytes v1.10.0 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Compiling cc v1.2.4 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Compiling litemap v0.7.4 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling writeable v0.5.5 [INFO] [stderr] Compiling itoa v1.0.14 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling http v1.2.0 [INFO] [stderr] Compiling icu_locid_transform_data v1.5.0 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling httparse v1.9.5 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling syn v2.0.90 [INFO] [stderr] Compiling icu_properties_data v1.5.0 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling openssl v0.10.68 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling socket2 v0.5.8 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling try-lock v0.2.5 [INFO] [stderr] Compiling indexmap v2.7.0 [INFO] [stderr] Compiling utf8_iter v1.0.4 [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling utf16_iter v1.0.5 [INFO] [stderr] Compiling icu_normalizer_data v1.5.0 [INFO] [stderr] Compiling native-tls v0.2.12 [INFO] [stderr] Compiling write16 v1.0.0 [INFO] [stderr] Compiling want v0.3.1 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling serde v1.0.216 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling percent-encoding v2.3.1 [INFO] [stderr] Compiling openssl-sys v0.9.104 [INFO] [stderr] Compiling openssl-probe v0.1.5 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling form_urlencoded v1.2.1 [INFO] [stderr] Compiling anstyle-parse v0.2.6 [INFO] [stderr] Compiling anstyle-query v1.1.2 [INFO] [stderr] Compiling anstyle v1.0.10 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling tower-service v0.3.3 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling colorchoice v1.0.3 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling anstream v0.6.18 [INFO] [stderr] Compiling http-body-util v0.1.2 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling clap_lex v0.7.4 [INFO] [stderr] Compiling rustls-pki-types v1.10.1 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling synstructure v0.13.1 [INFO] [stderr] Compiling clap_builder v4.5.29 [INFO] [stderr] Compiling rustls-pemfile v2.2.0 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling zerofrom-derive v0.1.5 [INFO] [stderr] Compiling yoke-derive v0.7.5 [INFO] [stderr] Compiling zerovec-derive v0.10.3 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling icu_provider_macros v1.5.0 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling zerofrom v0.1.5 [INFO] [stderr] Compiling tokio v1.42.0 [INFO] [stderr] Compiling clap_derive v4.5.28 [INFO] [stderr] Compiling yoke v0.7.5 [INFO] [stderr] Compiling sync_wrapper v1.0.2 [INFO] [stderr] Compiling mime v0.3.17 [INFO] [stderr] Compiling zerovec v0.10.4 [INFO] [stderr] Compiling ipnet v2.10.1 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling base64 v0.22.1 [INFO] [stderr] Compiling tinystr v0.7.6 [INFO] [stderr] Compiling icu_collections v1.5.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling icu_locid v1.5.0 [INFO] [stderr] Compiling nom v8.0.0 [INFO] [stderr] Compiling icu_provider v1.5.0 [INFO] [stderr] Compiling clap v4.5.29 [INFO] [stderr] Compiling sha1_smol v1.0.1 [INFO] [stderr] Compiling icu_locid_transform v1.5.0 [INFO] [stderr] Compiling icu_properties v1.5.1 [INFO] [stderr] Compiling tokio-util v0.7.13 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling h2 v0.4.7 [INFO] [stderr] Compiling icu_normalizer v1.5.0 [INFO] [stderr] Compiling idna_adapter v1.2.0 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling hyper v1.5.2 [INFO] [stderr] Compiling hyper-util v0.1.10 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling reqwest v0.12.9 [INFO] [stderr] Compiling bittorrent_client v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 56.21s [INFO] running `Command { std: "docker" "inspect" "547f08c000d36424a5fb1255fe33c0ca0d062d2e7ba05529df478803e8cb7e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "547f08c000d36424a5fb1255fe33c0ca0d062d2e7ba05529df478803e8cb7e5d", kill_on_drop: false }` [INFO] [stdout] 547f08c000d36424a5fb1255fe33c0ca0d062d2e7ba05529df478803e8cb7e5d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+a7ce54db9b096bd1098d07c645b489195a667c9f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f4fa8ce908a261a1544eec1b59caf6b2024a51cb67c63e0a0a17106bb82601cb [INFO] running `Command { std: "docker" "start" "-a" "f4fa8ce908a261a1544eec1b59caf6b2024a51cb67c63e0a0a17106bb82601cb", kill_on_drop: false }` [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling httpdate v1.0.3 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling serde_json v1.0.133 [INFO] [stderr] Compiling async-stream-impl v0.3.6 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling colored v2.2.0 [INFO] [stderr] Compiling similar v2.6.0 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling async-stream v0.3.6 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling tokio v1.42.0 [INFO] [stderr] Compiling assert-json-diff v2.0.2 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling tokio-util v0.7.13 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling h2 v0.4.7 [INFO] [stderr] Compiling tokio-test v0.4.4 [INFO] [stderr] Compiling hyper v1.5.2 [INFO] [stderr] Compiling hyper-util v0.1.10 [INFO] [stderr] Compiling hyper-tls v0.6.0 [INFO] [stderr] Compiling mockito v1.6.1 [INFO] [stderr] Compiling reqwest v0.12.9 [INFO] [stderr] Compiling bittorrent_client v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 39.23s [INFO] running `Command { std: "docker" "inspect" "f4fa8ce908a261a1544eec1b59caf6b2024a51cb67c63e0a0a17106bb82601cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f4fa8ce908a261a1544eec1b59caf6b2024a51cb67c63e0a0a17106bb82601cb", kill_on_drop: false }` [INFO] [stdout] f4fa8ce908a261a1544eec1b59caf6b2024a51cb67c63e0a0a17106bb82601cb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+a7ce54db9b096bd1098d07c645b489195a667c9f" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 25c8549842637c0c4a7630a312df3fb4b28cbffdf3ffbb6cfd50af16626a2ad2 [INFO] running `Command { std: "docker" "start" "-a" "25c8549842637c0c4a7630a312df3fb4b28cbffdf3ffbb6cfd50af16626a2ad2", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bittorrent_client-80f00de854c617d4) [INFO] [stdout] [INFO] [stdout] running 93 tests [INFO] [stdout] test client::tests::client_sets_choked_false_if_peer_sends_unchoke_message ... ok [INFO] [stdout] test client::tests::client_receives_correct_message_from_peer ... ok [INFO] [stdout] test client::tests::return_client_if_successful_handshake_and_receive_bitifield_message ... ok [INFO] [stdout] test client::tests::return_error_if_first_message_is_not_a_bitfield ... ok [INFO] [stdout] test client::tests::return_error_if_incorrect_info_hash_in_handshake_response ... ok [INFO] [stdout] test client::tests::return_client_if_successful_handshake_and_receive_bitifield_message_real_socket ... ok [INFO] [stdout] test client::tests::client_sets_choked_true_if_peer_sends_choke_message ... ok [INFO] [stdout] test client::tests::client_sends_correct_message_data_to_peer ... ok [INFO] [stdout] test decode::tests::decode_positive_integer ... ok [INFO] [stdout] test encode::tests::encode_byte_string ... ok [INFO] [stdout] test encode::tests::encode_integer ... ok [INFO] [stdout] test encode::tests::encode_list ... ok [INFO] [stdout] test handshake::tests::deserialised_handshake_is_correct ... ok [INFO] [stdout] test handshake::tests::serialised_handshake_is_correct ... ok [INFO] [stdout] test decode::tests::decode_byte_string ... ok [INFO] [stdout] test message::tests::bitfield_has_piece_returns_true_if_has_piece ... ok [INFO] [stdout] test decode::tests::decode_negative_integer ... ok [INFO] [stdout] test message::tests::parse_bitfield_message ... ok [INFO] [stdout] test decode::tests::decode_list_containing_strings_and_ints ... ok [INFO] [stdout] test message::tests::bitfield_set_piece_sets_correct_bit_in_bitfield ... ok [INFO] [stdout] test encode::tests::encode_dict ... ok [INFO] [stdout] test decode::tests::decode_dict_containing_strings_and_ints ... ok [INFO] [stdout] test message::tests::parse_cancel_message ... ok [INFO] [stdout] test message::tests::parse_choke_message ... ok [INFO] [stdout] test message::tests::parse_interested_message ... ok [INFO] [stdout] test message::tests::parse_keep_alive_message ... ok [INFO] [stdout] test message::tests::parse_not_interested_message ... ok [INFO] [stdout] test message::tests::parse_have_message ... ok [INFO] [stdout] test message::tests::parse_request_message ... ok [INFO] [stdout] test message::tests::parse_piece_message ... ok [INFO] [stdout] test message::tests::parse_unchoke_message ... ok [INFO] [stdout] test message::tests::return_error_if_non_zero_payload_message_id_is_invalid ... ok [INFO] [stdout] test message::tests::serialise_choke_message ... ok [INFO] [stdout] test message::tests::serialise_bitfield_message ... ok [INFO] [stdout] test message::tests::serialise_cancel_message ... ok [INFO] [stdout] test message::tests::serialise_interested_message ... ok [INFO] [stdout] test message::tests::serialise_request_message ... ok [INFO] [stdout] test message::tests::serialise_keep_alive_message ... ok [INFO] [stdout] test metainfo::tests::get_expected_info_struct_from_valid_info_dict ... ok [INFO] [stdout] test metainfo::tests::get_expected_metainfo_struct_from_valid_dict ... ok [INFO] [stdout] test metainfo::tests::get_pieces_iterator_from_info_struct ... ok [INFO] [stdout] test metainfo::tests::info_serialisation_produces_correct_bencode_type_dict_variant ... ok [INFO] [stdout] test metainfo::tests::return_error_if_announce_value_is_incorrect_decoded_variant ... ok [INFO] [stdout] test metainfo::tests::return_error_if_constructing_metainfo_from_incorrect_decoded_variant ... ok [INFO] [stdout] test metainfo::tests::return_error_if_dict_missing_announce_key ... ok [INFO] [stdout] test metainfo::tests::return_error_if_dict_missing_info_key ... ok [INFO] [stdout] test metainfo::tests::return_error_if_info_dict_missing_length_key ... ok [INFO] [stdout] test metainfo::tests::return_error_if_info_dict_missing_name_key ... ok [INFO] [stdout] test metainfo::tests::return_error_if_info_dict_missing_piece_length_key ... ok [INFO] [stdout] test metainfo::tests::return_error_if_info_dict_missing_pieces_key ... ok [INFO] [stdout] test metainfo::tests::return_error_if_info_value_is_incorrect_decoded_variant ... ok [INFO] [stdout] test parse::tests::parse_byte_string ... ok [INFO] [stdout] test parse::tests::parse_dict_containing_multiple_keys_bytestring_and_integer_values ... ok [INFO] [stdout] test parse::tests::parse_dict_containing_multiple_keys_bytestring_value ... ok [INFO] [stdout] test parse::tests::parse_dict_containing_single_key_bytestring_value ... ok [INFO] [stdout] test parse::tests::parse_dict_containing_single_key_list_value ... ok [INFO] [stdout] test parse::tests::parse_integer ... ok [INFO] [stdout] test message::tests::serialise_not_interested_message ... ok [INFO] [stdout] test message::tests::return_error_if_single_byte_message_id_is_invalid ... ok [INFO] [stdout] test message::tests::serialise_unchoke_message ... ok [INFO] [stdout] test message::tests::serialise_piece_message ... ok [INFO] [stdout] test message::tests::serialise_have_message ... ok [INFO] [stdout] test parse::tests::parse_list_containing_bytestring_and_integer ... ok [INFO] [stdout] test parse::tests::parse_list_containing_dict ... ok [INFO] [stdout] test parse::tests::parse_list_containing_multiple_bytestrings ... ok [INFO] [stdout] test parse::tests::parse_list_containing_single_bytestring ... ok [INFO] [stdout] test parse::tests::parse_nested_dict ... ok [INFO] [stdout] test serialise::tests::serialise_dict ... ok [INFO] [stdout] test serialise::tests::serialise_integer ... ok [INFO] [stdout] test piece::tests::receiver_handles_truncated_last_piece ... ok [INFO] [stdout] test parse::tests::parse_nested_list ... ok [INFO] [stdout] test serialise::tests::serialise_list ... ok [INFO] [stdout] test tracker::tests::create_error_variant_from_failure_response ... ok [INFO] [stdout] test torrent::tests::correct_info_hash_field_on_torrent_instance ... ok [INFO] [stdout] test tracker::tests::create_success_variant_from_successful_response ... ok [INFO] [stdout] test tracker::tests::creating_tracker_request_produces_expected_url_for_get_request ... ok [INFO] [stdout] test tracker::tests::parse_peer ... ok [INFO] [stdout] test piece::tests::receiver_puts_pieces_together_correctly ... ok [INFO] [stdout] test serialise::tests::serialise_bytestring ... ok [INFO] [stdout] test worker::tests::download_sends_unchoke_and_interested_messages_to_peer ... ok [INFO] [stdout] test worker::tests::integrity_check_failure_causes_rerequest_of_piece ... ok [INFO] [stdout] test worker::tests::errored_worker_puts_work_back_onto_queue_before_exiting_and_download_can_complete ... ok [INFO] [stdout] test worker::tests::send_have_message_to_peer_if_piece_downloaded_and_passed_integrity_check ... ok [INFO] [stdout] test worker::tests::single_worker_downloads_all_two_pieces_from_peer ... ok [INFO] [stdout] test worker::tests::send_keep_alive_if_empty_queue_but_download_not_yet_complete ... ok [INFO] [stdout] test work::tests::tasks_can_get_work_from_queue ... ok [INFO] [stdout] test worker::tests::single_worker_downloads_pieces_larger_than_default_block_size_but_not_divisible_by_it ... ok [INFO] [stdout] test work::tests::tasks_can_put_work_onto_queue ... ok [INFO] [stdout] test download::tests::downloads_file_from_single_peer ... ok [INFO] [stdout] test init::tests::generate_correct_torrent_struct_from_tracker_response_and_metainfo ... ok [INFO] [stdout] test tracker::tests::sent_tracker_get_request_is_received_by_tracker ... ok [INFO] [stdout] test worker::tests::two_workers_download_the_two_pieces_from_their_respective_peer ... ok [INFO] [stdout] test tracker::tests::sent_request_returns_response_body ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 93 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.34s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/bittorrent_client-2c286057c0f0e1a9) [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 bittorrent_client [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] running `Command { std: "docker" "inspect" "25c8549842637c0c4a7630a312df3fb4b28cbffdf3ffbb6cfd50af16626a2ad2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "25c8549842637c0c4a7630a312df3fb4b28cbffdf3ffbb6cfd50af16626a2ad2", kill_on_drop: false }` [INFO] [stdout] 25c8549842637c0c4a7630a312df3fb4b28cbffdf3ffbb6cfd50af16626a2ad2