[INFO] fetching crate confab 0.3.2...
[INFO] testing confab-0.3.2 against 1.90.0 for beta-1.91-3
[INFO] extracting crate confab 0.3.2 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate confab 0.3.2
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate confab 0.3.2
[INFO] tweaked toml for crates.io crate confab 0.3.2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate confab 0.3.2 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate confab 0.3.2 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" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unicode-general-category v1.0.0
[INFO] [stderr]   Downloaded ptyprocess v0.4.1
[INFO] [stderr]   Downloaded terminal_size v0.4.2
[INFO] [stderr]   Downloaded serde-jsonlines v0.7.0
[INFO] [stderr]   Downloaded cargo_metadata v0.19.2
[INFO] [stderr]   Downloaded thingbuf v0.1.6
[INFO] [stderr]   Downloaded expectrl v0.7.1
[INFO] [stderr]   Downloaded rustyline-async v0.4.6
[INFO] [stderr]   Downloaded conpty v0.5.1
[INFO] [stderr]   Downloaded cc v1.2.23
[INFO] [stderr]   Downloaded crossterm v0.29.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 54d4bf977ef2fae5685ca746a4332c1f961a3b6306a8715b094a0d7a6bcf490f
[INFO] running `Command { std: "docker" "start" "-a" "54d4bf977ef2fae5685ca746a4332c1f961a3b6306a8715b094a0d7a6bcf490f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "54d4bf977ef2fae5685ca746a4332c1f961a3b6306a8715b094a0d7a6bcf490f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "54d4bf977ef2fae5685ca746a4332c1f961a3b6306a8715b094a0d7a6bcf490f", kill_on_drop: false }`
[INFO] [stdout] 54d4bf977ef2fae5685ca746a4332c1f961a3b6306a8715b094a0d7a6bcf490f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ada09724738de266d859b44b80e6ffcb9ab02d56a0c5381f85b0c769a7ebc490
[INFO] running `Command { std: "docker" "start" "-a" "ada09724738de266d859b44b80e6ffcb9ab02d56a0c5381f85b0c769a7ebc490", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]    Compiling bitflags v2.9.1
[INFO] [stderr]    Compiling linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling cc v1.2.23
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling smallvec v1.15.0
[INFO] [stderr]    Compiling camino v1.1.9
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling convert_case v0.7.1
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling socket2 v0.5.9
[INFO] [stderr]    Compiling rustls v0.23.27
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling unicode-general-category v1.0.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling unicode-width v0.2.0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling terminal_size v0.4.2
[INFO] [stderr]    Compiling clap_builder v4.5.38
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling tokio v1.45.0
[INFO] [stderr]    Compiling derive_more v2.0.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling thingbuf v0.1.6
[INFO] [stderr]    Compiling clap v4.5.38
[INFO] [stderr]    Compiling rustls-webpki v0.103.3
[INFO] [stderr]    Compiling rustyline-async v0.4.6
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling cargo-platform v0.1.9
[INFO] [stderr]    Compiling cargo_metadata v0.19.2
[INFO] [stderr]    Compiling tokio-rustls v0.26.2
[INFO] [stderr]    Compiling confab v0.3.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.15s
[INFO] running `Command { std: "docker" "inspect" "ada09724738de266d859b44b80e6ffcb9ab02d56a0c5381f85b0c769a7ebc490", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ada09724738de266d859b44b80e6ffcb9ab02d56a0c5381f85b0c769a7ebc490", kill_on_drop: false }`
[INFO] [stdout] ada09724738de266d859b44b80e6ffcb9ab02d56a0c5381f85b0c769a7ebc490
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8e611c3f04e6033174d1d4d04014316a17b333f00ab171c100ac5da0206003e3
[INFO] running `Command { std: "docker" "start" "-a" "8e611c3f04e6033174d1d4d04014316a17b333f00ab171c100ac5da0206003e3", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.5
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling socket2 v0.5.9
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling io-lifetimes v1.0.11
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling deranged v0.4.0
[INFO] [stderr]    Compiling polling v2.8.0
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling rustix v0.37.28
[INFO] [stderr]    Compiling async-io v1.13.0
[INFO] [stderr]    Compiling event-listener v2.5.3
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling waker-fn v1.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.3.8
[INFO] [stderr]    Compiling futures-lite v1.13.0
[INFO] [stderr]    Compiling nix v0.26.4
[INFO] [stderr]    Compiling async-lock v2.8.0
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling socket2 v0.4.10
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling assert_matches v1.5.0
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling rustls-webpki v0.103.3
[INFO] [stderr]    Compiling rustls v0.23.27
[INFO] [stderr]    Compiling terminal_size v0.4.2
[INFO] [stderr]    Compiling tempfile v3.20.0
[INFO] [stderr]    Compiling clap_builder v4.5.38
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling ptyprocess v0.4.1
[INFO] [stderr]    Compiling expectrl v0.7.1
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling derive_more v2.0.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling tokio v1.45.0
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling thingbuf v0.1.6
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling clap v4.5.38
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling rustyline-async v0.4.6
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling tokio-rustls v0.26.2
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling cargo-platform v0.1.9
[INFO] [stderr]    Compiling camino v1.1.9
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling rstest_macros v0.25.0
[INFO] [stderr]    Compiling serde-jsonlines v0.7.0
[INFO] [stderr]    Compiling cargo_metadata v0.19.2
[INFO] [stderr]    Compiling confab v0.3.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rstest v0.25.0
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 55.86s
[INFO] running `Command { std: "docker" "inspect" "8e611c3f04e6033174d1d4d04014316a17b333f00ab171c100ac5da0206003e3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8e611c3f04e6033174d1d4d04014316a17b333f00ab171c100ac5da0206003e3", kill_on_drop: false }`
[INFO] [stdout] 8e611c3f04e6033174d1d4d04014316a17b333f00ab171c100ac5da0206003e3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a593d3b5a9589a08f6f4224f7c5449c810a75d83b601cef7e8bf9492f22161aa
[INFO] running `Command { std: "docker" "start" "-a" "a593d3b5a9589a08f6f4224f7c5449c810a75d83b601cef7e8bf9492f22161aa", kill_on_drop: false }`
[INFO] [stderr]    Compiling confab v0.3.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.05s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/confab-67244d9bed2d5e01)
[INFO] [stdout] 
[INFO] [stdout] running 65 tests
[INFO] [stdout] test codec::tests::test_decode_end_after_limit ... ok
[INFO] [stdout] test codec::tests::test_decode_end_at_limit ... ok
[INFO] [stdout] test codec::tests::test_decode_max_length_minus_1_no_end ... ok
[INFO] [stdout] test codec::tests::test_decode_max_length_no_end ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_02 ... ok
[INFO] [stdout] test codec::tests::test_decode_end_before_limit ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_03 ... ok
[INFO] [stdout] test codec::tests::test_decode_end_right_after_limit ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_04 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_05 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_06 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_07 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_08 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_09 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_10 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_12 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_13 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_14 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_15 ... ok
[INFO] [stdout] test util::tests::test_chomp::case_3 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_17 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_18 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_01 ... ok
[INFO] [stdout] test tests::no_args ... ok
[INFO] [stdout] test util::tests::test_chomp::case_6 ... ok
[INFO] [stdout] test util::tests::test_chomp::case_7 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_16 ... ok
[INFO] [stdout] test util::tests::test_chomp::case_4 ... ok
[INFO] [stdout] test util::tests::test_chomp::case_8 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_11 ... ok
[INFO] [stdout] test util::tests::test_chomp::case_5 ... ok
[INFO] [stdout] test codec::tests::test_find_final_char_boundary::case_19 ... ok
[INFO] [stdout] test tests::build_info_and_args ... ok
[INFO] [stdout] test util::tests::test_decode_latin1 ... ok
[INFO] [stdout] test util::tests::test_decode_utf8 ... ok
[INFO] [stdout] test util::tests::test_decode_utf8latin1_fallback ... ok
[INFO] [stdout] test util::tests::test_decode_utf8latin1_good ... ok
[INFO] [stdout] test util::tests::test_display_vis ... ok
[INFO] [stdout] test util::tests::test_encode_latin1 ... ok
[INFO] [stdout] test util::tests::test_json_str_map_empty ... ok
[INFO] [stdout] test util::tests::test_json_str_map_one_field ... ok
[INFO] [stdout] test util::tests::test_json_str_map_two_fields ... ok
[INFO] [stdout] test tests::just_build_info ... ok
[INFO] [stdout] test util::tests::test_latin1ify ... ok
[INFO] [stdout] test util::tests::test_vis::case_4 ... ok
[INFO] [stdout] test util::tests::test_vis::case_6 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_1 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_2 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_3 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_4 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_7 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_5 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_8 ... ok
[INFO] [stdout] test util::tests::test_write_json_str::case_6 ... ok
[INFO] [stdout] test util::tests::test_vis::case_3 ... ok
[INFO] [stdout] test util::tests::test_vis::case_1 ... ok
[INFO] [stdout] test util::tests::test_vis::case_2 ... ok
[INFO] [stdout] test util::tests::test_vis::case_5 ... ok
[INFO] [stdout] test util::tests::test_vis::case_7 ... ok
[INFO] [stdout] test codec::tests::test_decode_max_length_plus_1_no_end ... ok
[INFO] [stdout] test codec::tests::test_decode_over_max_length_straddling_utf8 ... ok
[INFO] [stdout] test codec::tests::test_decode_over_max_length_straddling_utf8_in_latin1 ... ok
[INFO] [stdout] test tests::validate_cli ... ok
[INFO] [stdout] test util::tests::test_chomp::case_1 ... ok
[INFO] [stdout] test util::tests::test_chomp::case_2 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 65 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/deps/cli-7fad1ce1054c9a3f)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:43273\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "long\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> l\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> lo\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> lon\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> long\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> long\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"long\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< This is a very long line.  I'm not going t\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< o bore you with the details, so instead I'\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< ll bore you with so"
[INFO] [stdout] read: "me mangled Cicero: Lore\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< m ipsum dolor sit amet, consectetur adipis\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G"
[INFO] [stdout] read: "\u{1b}[J< icing elit, sed do eiusmod tempor incididu\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< nt ut labore et dolore magna aliqua.  Ut e\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< nim ad minim veniam, quis nostrud exercita\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< tion ullamco laboris nisi ut aliquip ex ea\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J<  commodo consequat.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_long_line ... ok
[INFO] [stdout] read: "* Connecting ...\r\n* Connected to 127.0.0.1:39473"
[INFO] [stdout] read: "\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "Fëanor is an 🧝.  Frosty is a ☃.\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> F\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fë\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëa\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> Fëan\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëano\u{1b}[1G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> Fëanor\u{1b}[1G\u{1b}[14C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor \u{1b}[1G\u{1b}[15C\u{1b}[1G\u{1b}[Jconfab> Fëanor i\u{1b}[1G\u{1b}[16C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is\u{1b}[1G\u{1b}[17C\u{1b}[1G\u{1b}[Jconfab> Fëanor is \u{1b}[1G\u{1b}[18C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is a\u{1b}[1G\u{1b}[19C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an\u{1b}[1G\u{1b}[20C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an \u{1b}[1G\u{1b}[21C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝\u{1b}[1G\u{1b}[23C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.\u{1b}[1G\u{1b}[24C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝. \u{1b}[1G\u{1b}[25C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  \u{1b}[1G\u{1b}[26C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  F\u{1b}[1G\u{1b}[27C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Fr\u{1b}[1G\u{1b}[28C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Fro\u{1b}[1G\u{1b}[29C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Fros\u{1b}[1G\u{1b}[30C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frost\u{1b}[1G\u{1b}[31C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty\u{1b}[1G\u{1b}[32C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty \u{1b}[1G\u{1b}[33C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty i\u{1b}[1G\u{1b}[34C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is\u{1b}[1G\u{1b}[35C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is \u{1b}[1G\u{1b}[36C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a\u{1b}[1G\u{1b}[37C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a \u{1b}[1G\u{1b}[38C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a ☃\u{1b}[1G\u{1b}[39C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a ☃.\u{1b}[1G\u{1b}[40C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> Fëanor is an ?.  Frosty is a ?.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: b\"F\\xebanor is an ?.  Frosty is a ?.\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_send_latin1 ... ok
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:40051\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "Hello!\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> H\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> He\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> Hel\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> Hell\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> Hello\u{1b}[1"
[INFO] [stdout] read: "G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> Hello!\u{1b}[1G\u{1b}[14C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> Hello!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"Hello!\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< Goodbye.\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}["
[INFO] [stdout] read: "8C\u{1b}[1G\u{1b}[J* Disconnected\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_quit_session ... ok
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "[07:32:35] * Connecting ...\r\n[07:32:35] * Connected to 127.0.0.1:34303\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "* Connected to 127.0.0.1:33645\r\nconfab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "Fëanor is an 🧝.  Frosty is a ☃.\r\n"
[INFO] [stdout] read: "* Connecting ...\r\n* Connected to 127.0.0.1:43905\r\nconfab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfa"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> F\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> Fë\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> Fëa\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> Fëan\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> Fëan"
[INFO] [stdout] read: "o\u{1b}[1G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> Fëanor\u{1b}[1G\u{1b}[14C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor \u{1b}[1G\u{1b}[15C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J[07:32:35] < Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "b> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "pieces\r\n"
[INFO] [stdout] read: "* Connecting ...\r\n* Connected to 127.0.0.1:45349\r\nconfab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> p\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> pi\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> pie\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> piec\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> piece\u{1b}[1"
[INFO] [stdout] read: "G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> pieces\u{1b}[1G\u{1b}[14C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> pieces\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"pieces\"\n\u{1b}"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Fëanor i\u{1b}[1G\u{1b}[16C\u{1b}[1G\u{1b}[Jconfab> Fëanor is\u{1b}[1G\u{1b}[17C\u{1b}[1G\u{1b}[Jconfab> Fëanor is \u{1b}[1G\u{1b}[18C\u{1b}[1G\u{1b}[Jconfab> Fëanor is "
[INFO] [stdout] read: "a\u{1b}[1G\u{1b}[19C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an\u{1b}[1G\u{1b}[20C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an \u{1b}[1G\u{1b}[21C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝\u{1b}[1G\u{1b}[23C\u{1b}"
[INFO] [stdout] read: "[1G\u{1b}[Jconfab> Fëanor is an 🧝.\u{1b}[1G\u{1b}[24C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝. \u{1b}[1G\u{1b}[25C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  \u{1b}[1G\u{1b}["
[INFO] [stdout] read:(bytes): [50, 54, 67, 27, 91, 49, 71, 27, 91, 74, 99, 111, 110, 102, 97, 98, 62, 32, 70, 195, 171, 97, 110, 111, 114, 32, 105, 115, 32, 97, 110, 32, 240, 159, 167, 157, 46, 32, 32, 70, 27, 91, 49, 71, 27, 91, 50, 55, 67, 27, 91, 49, 71, 27, 91, 74, 99, 111, 110, 102, 97, 98, 62, 32, 70, 195, 171, 97, 110, 111, 114, 32, 105, 115, 32, 97, 110, 32, 240, 159, 167, 157, 46, 32, 32, 70, 114, 27, 91, 49, 71, 27, 91, 50, 56, 67, 27, 91, 49, 71, 27, 91, 74, 99, 111, 110, 102, 97, 98, 62, 32, 70, 195, 171, 97, 110, 111, 114, 32, 105, 115, 32, 97, 110, 32, 240, 159, 167]
[INFO] [stdout] read:(bytes): [157, 46, 32, 32, 70, 114, 111, 27, 91, 49, 71, 27, 91, 50, 57, 67, 27, 91, 49, 71, 27, 91, 74, 99, 111, 110, 102, 97, 98, 62, 32, 70, 195, 171, 97, 110, 111, 114, 32, 105, 115, 32, 97, 110, 32, 240, 159, 167, 157, 46, 32, 32, 70, 114, 111, 115, 27, 91, 49, 71, 27, 91, 51, 48, 67, 27, 91, 49, 71, 27, 91, 74, 99, 111, 110, 102, 97, 98, 62, 32, 70, 195, 171, 97, 110, 111, 114, 32, 105, 115, 32, 97, 110, 32, 240, 159, 167, 157, 46, 32, 32, 70, 114, 111, 115, 116, 27, 91, 49, 71, 27, 91, 51, 49, 67, 27, 91, 49, 71, 27, 91, 74, 99, 111, 110, 102, 97, 98]
[INFO] [stdout] read: "> Fëanor is an 🧝.  Frosty\u{1b}[1G\u{1b}[32C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty \u{1b}[1G\u{1b}[33C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Fr"
[INFO] [stdout] read: "osty i\u{1b}[1G\u{1b}[34C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is\u{1b}[1G\u{1b}[35C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is \u{1b}[1G\u{1b}[36C\u{1b}[1G"
[INFO] [stdout] read: "\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a\u{1b}[1G\u{1b}[37C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a \u{1b}[1G\u{1b}[38C\u{1b}[1G\u{1b}[Jconfab> Fëa"
[INFO] [stdout] read: "nor is an 🧝.  Frosty is a ☃\u{1b}[1G\u{1b}[39C\u{1b}[1G\u{1b}[Jconfab> Fëanor is an 🧝.  Frosty is a ☃.\u{1b}[1G\u{1b}[40C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1"
[INFO] [stdout] read: "G\u{1b}[J> Fëanor is an 🧝.  Frosty is a ☃.\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"Fëanor is an 🧝.  Frosty is a ☃.\"\n\u{1b}"
[INFO] [stdout] read: "[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< Goodbye.\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_send_utf8 ... ok
[INFO] [stdout] read: "* Connecting ..."
[INFO] [stdout] read: "\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:38593\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "Hello!\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> H\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> He\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hel\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hell\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hello\u{1b}[1G\u{1b}[13C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hello!\u{1b}[1G\u{1b}[14C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> Hello!\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"Hello!\"\n"
[INFO] [stdout] write: "\u{4}"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_send_ctrl_d ... ok
[INFO] [stdout] read: "* Connecting ...\r\n* Connected to 127.0.0.1:35673\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "bytes\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> b\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> by\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> byt\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> byte\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> bytes\u{1b}[1"
[INFO] [stdout] read: "G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> bytes\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"bytes\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< This line is|being sent in|pieces.|Did you get it all?\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_piecemeal_line ... ok
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Here is some non-UTF-8 data:\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Latin-1: Liberté, égalité, fraternité\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< General garbage: \u{1b}[7m<U+0089>\u{1b}[0m«Íï\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Goodbye.\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_receive_non_utf8_with_latin1_fallback ... ok
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:39553\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "crlf\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> c\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> cr\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> crl\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> crlf\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> crlf\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"crlf\\r\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< CR LF:\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\\r\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_send_crlf ... ok
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:40237"
[INFO] [stdout] read: "\r\n"
[INFO] [stdout] read: "< Welcome to the confab Test Server!"
[INFO] [stdout] read: "* Connecting ..."
[INFO] [stdout] read: "\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:41039"
[INFO] [stdout] read: "\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "crlf\r\n"
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> c\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> cr\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> crl\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> crlf\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> crlf\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "* Connected to 127.0.0.1:43889\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"crlf\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "< Welcome to the confab Test Server!\r\n"
[INFO] [stdout] read: "* Connecting ...\r\n"
[INFO] [stdout] read: "* Connected to 127.0.0.1:46213\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Welcome to the confab Test Server!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "bytes\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< CR LF:\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_no_crlf_recv_crlf ... ok
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> b\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> by\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> byt\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> byte\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> bytes\u{1b}[1"
[INFO] [stdout] read: "G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> bytes\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"bytes\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Here is some non-UTF-8 data:\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Latin-1: Libert�, �galit�, fraternit�\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< General garbage: ����\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_receive_non_utf8 ... ok
[INFO] [stdout] read: "\r\n> Hello!\r\n"
[INFO] [stdout] read: "< You sent: \"Hello!\"\r\n"
[INFO] [stdout] read: "> Hello!\r\n"
[INFO] [stdout] read: "< You sent: \"Hello!\"\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J[07:32:36] < Ping 1\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Ping 1\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "> This is from a startup script.\r\n< You sent: \"This is from a startup script.\"\r\n"
[INFO] [stdout] read: "confab> \u{1b}[1G\u{1b}[8C\u{1b}[?7h"
[INFO] [stdout] write: "Hello again!\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> H\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> He\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hel\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> Hell\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> Hello\u{1b}[1G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> Hello \u{1b}[1G\u{1b}[14C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hello a\u{1b}[1G\u{1b}[15C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hello ag\u{1b}[1G\u{1b}[16C\u{1b}[1G\u{1b}[Jconfab> Hello aga\u{1b}[1G\u{1b}[17C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hello agai\u{1b}[1G\u{1b}[18C\u{1b}[1G\u{1b}[Jconfab> Hello again\u{1b}[1G\u{1b}[19C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Hello again!\u{1b}[1G\u{1b}[20C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> Hello again!\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"Hello again!\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "This is from the prompt.\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> T\u{1b}[1G\u{1b}[9C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Th\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> Thi\u{1b}[1G\u{1b}[11C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This \u{1b}[1G\u{1b}[13C\u{1b}[1G\u{1b}[Jconfab> This i\u{1b}[1G\u{1b}[14C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is\u{1b}[1G\u{1b}[15C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is \u{1b}[1G\u{1b}[16C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is f\u{1b}[1G\u{1b}[17C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is fr\u{1b}[1G\u{1b}[18C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is fro\u{1b}[1G\u{1b}[19C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from\u{1b}[1G\u{1b}[20C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from \u{1b}[1G\u{1b}[21C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from t\u{1b}[1G\u{1b}[22C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from th\u{1b}[1G\u{1b}[23C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the\u{1b}[1G\u{1b}[24C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the \u{1b}[1G\u{1b}[25C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the p\u{1b}[1G\u{1b}[26C\u{1b}[1G\u{1b}[Jconfab> This is from the pr\u{1b}[1G\u{1b}[27C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the pro\u{1b}[1G\u{1b}[28C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the prom\u{1b}[1G\u{1b}[29C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the promp\u{1b}[1G\u{1b}[30C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the prompt\u{1b}[1G\u{1b}[31C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> This is from the prompt.\u{1b}[1G\u{1b}[32C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> This is from the prompt.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"This is from the prompt.\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Goodbye.\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J* Disconnected\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test startup_script ... ok
[INFO] [stdout] read: "> quit\r\n< You sent: \"quit\"\r\n< Goodbye.\r\n* Disconnected\r\n"
[INFO] [stdout] read: ""
[INFO] [stdout] test quit_from_startup_script ... ok
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J[07:32:37] < Ping 2\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J[07:32:37] > quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J[07:32:37] < You sent: \"quit\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J[07:32:37] "
[INFO] [stdout] read: "< Goodbye.\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J[07:32:37] * Disconnected\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_show_times ... ok
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< Ping 2\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] write: "quit\r\n"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> q\u{1b}[1G\u{1b}[9C\u{1b}[1G\u{1b}[Jconfab> qu\u{1b}[1G\u{1b}[10C\u{1b}[1G\u{1b}[Jconfab> qui\u{1b}[1G\u{1b}[11C\u{1b}[1G\u{1b}[Jconfab> quit\u{1b}[1G\u{1b}[12C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[Jconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J> quit\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C"
[INFO] [stdout] read: "\u{1b}[1G\u{1b}[J< You sent: \"quit\"\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J< Goodbye.\n\u{1b}[1G\u{1b}[1Gconfab> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J* Disconnected\n\u{1b}[1G\u{1b}[1Gconfab"
[INFO] [stdout] read: "> \u{1b}[1G\u{1b}[8C\u{1b}[1G\u{1b}[J"
[INFO] [stdout] read: ""
[INFO] [stdout] test test_async_recv ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a593d3b5a9589a08f6f4224f7c5449c810a75d83b601cef7e8bf9492f22161aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a593d3b5a9589a08f6f4224f7c5449c810a75d83b601cef7e8bf9492f22161aa", kill_on_drop: false }`
[INFO] [stdout] a593d3b5a9589a08f6f4224f7c5449c810a75d83b601cef7e8bf9492f22161aa
