[INFO] fetching crate reedline 0.52.1...
[INFO] testing reedline-0.52.1 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate reedline 0.52.1 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate reedline 0.52.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate reedline 0.52.1
[INFO] tweaked toml for crates.io crate reedline 0.52.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate reedline 0.52.1 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate reedline 0.52.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4
[INFO] running `Command { std: "docker" "start" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling vte v0.14.1
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling strip-ansi-escapes v0.2.1
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling reedline v0.52.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 20.70s
[INFO] running `Command { std: "docker" "inspect" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]    Compiling strum_macros v0.28.0
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling regex-automata v0.4.16
[INFO] [stderr]    Compiling strum v0.28.0
[INFO] [stderr]    Compiling crossterm v0.29.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling gethostname v1.1.0
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling reedline v0.52.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling rstest v0.26.1
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 58.40s
[INFO] running `Command { std: "docker" "inspect" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/reedline/7c0605db5398d04b/out/reedline-7c0605db5398d04b)
[INFO] [stdout] 
[INFO] [stdout] running 1878 tests
[INFO] [stdout] test core_editor::cursor::tests::caret_of_forward_block_retreats_one_grapheme ... ok
[INFO] [stdout] test core_editor::cursor::tests::caret_retreats_past_zwj_emoji_as_one ... ok
[INFO] [stdout] test completion::default::tests::default_completer_with_start_strings ... ok
[INFO] [stdout] test core_editor::cursor::tests::anchor_and_head_accessors ... ok
[INFO] [stdout] test completion::history::tests::duplicates_in_history ... ok
[INFO] [stdout] test completion::history::tests::complete_doesnt_return_duplicates::case_2 ... ok
[INFO] [stdout] test core_editor::cursor::tests::collapse_drops_anchor_at_current_head ... ok
[INFO] [stdout] test completion::default::tests::default_completer_with_non_ansi ... ok
[INFO] [stdout] test core_editor::cursor::tests::caret_of_point_is_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::collapse_on_point_is_noop ... ok
[INFO] [stdout] test core_editor::cursor::tests::collapse_to_drops_anchor_and_moves_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::caret_of_empty_buffer_point_is_zero ... ok
[INFO] [stdout] test core_editor::cursor::tests::direction_forward_for_empty_range ... ok
[INFO] [stdout] test core_editor::cursor::tests::direction_backward_when_head_less_than_anchor ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_backward_grows_anchor_right ... ok
[INFO] [stdout] test core_editor::cursor::tests::contains ... ok
[INFO] [stdout] test core_editor::cursor::tests::contains_false_for_empty_range ... ok
[INFO] [stdout] test core_editor::cursor::tests::default_is_point_at_zero ... ok
[INFO] [stdout] test core_editor::cursor::tests::contains_is_direction_agnostic ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_backward_grows_head_left ... ok
[INFO] [stdout] test core_editor::cursor::tests::direction_forward_when_head_greater_than_anchor ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_from_empty_range_stays_forward ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_span_block_flip_backward_to_forward_keeps_anchor_grapheme ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_forward_grows_head_right ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_span_block_flip_forward_to_backward_keeps_anchor_grapheme ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_span_block_flip_hops_full_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_forward_noop_when_range_already_covers ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_forward_shrinks_anchor_left ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_span_bar_grows_head_no_flip ... ok
[INFO] [stdout] test core_editor::cursor::tests::len_ignores_direction ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_span_does_not_widen_like_put_cursor ... ok
[INFO] [stdout] test core_editor::cursor::tests::is_empty_false_for_nonzero_width ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_with_zero_width_target_is_safe ... ok
[INFO] [stdout] test core_editor::cursor::tests::is_empty_true_when_anchor_equals_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::move_head_from_point_creates_range ... ok
[INFO] [stdout] test core_editor::cursor::tests::flip_of_empty_range_is_unchanged ... ok
[INFO] [stdout] test core_editor::cursor::tests::len_is_zero_for_empty_range ... ok
[INFO] [stdout] test core_editor::cursor::tests::new_preserves_anchor_and_head_order ... ok
[INFO] [stdout] test core_editor::cursor::tests::flip_swaps_anchor_and_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::point_constructs_empty_range_at_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::put_cursor_extend_flip_across_multibyte_anchor ... ok
[INFO] [stdout] test core_editor::cursor::tests::put_cursor_extend_flip_backward_to_forward_keeps_anchor_grapheme ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_forward_grows_both_sides ... ok
[INFO] [stdout] test core_editor::cursor::tests::end_returns_higher_of_anchor_and_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::extend_backward_preserves_direction ... ok
[INFO] [stdout] test completion::history::tests::complete_doesnt_return_duplicates::case_1 ... ok
[INFO] [stdout] test core_editor::cursor::tests::caret_retreats_past_multibyte_grapheme ... ok
[INFO] [stdout] test completion::history::tests::complete_doesnt_return_duplicates::case_3 ... ok
[INFO] [stdout] test core_editor::clip_buffer::tests::reads_back_local ... ok
[INFO] [stdout] test core_editor::cursor::tests::move_head_preserves_anchor ... ok
[INFO] [stdout] test core_editor::cursor::tests::put_cursor_extend_no_flip_stays_backward ... ok
[INFO] [stdout] test core_editor::cursor::tests::start_and_end_agree_for_empty_range ... ok
[INFO] [stdout] test core_editor::edit_stack::test::insert_works::case_2 ... ok
[INFO] [stdout] test core_editor::edit_stack::test::redo_works::case_1 ... ok
[INFO] [stdout] test core_editor::edit_stack::test::redo_works::case_2 ... ok
[INFO] [stdout] test core_editor::cursor::tests::put_cursor_extend_flip_forward_to_backward_keeps_anchor_grapheme ... ok
[INFO] [stdout] test core_editor::cursor::tests::start_returns_lower_of_anchor_and_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::put_cursor_non_extend_collapses_to_point ... ok
[INFO] [stdout] test core_editor::cursor::tests::with_direction_noop_when_already_forward ... ok
[INFO] [stdout] test core_editor::cursor::tests::with_direction_on_empty_range_stays_forward ... ok
[INFO] [stdout] test core_editor::cursor::tests::to_range_returns_start_to_end ... ok
[INFO] [stdout] test core_editor::edit_stack::test::undo_works::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::change_bufferedge_fwd_matches_legacy_leave_blank_command ... ok
[INFO] [stdout] test core_editor::editor::test::change_line_up_blanks_current_and_prev ... ok
[INFO] [stdout] test core_editor::edit_stack::test::undo_works::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::append_at_buffer_end_appends_past_block_caret ... ok
[INFO] [stdout] test core_editor::cursor::tests::caret_of_backward_range_is_head ... ok
[INFO] [stdout] test core_editor::cursor::tests::put_cursor_extend_forward_places_head_on_far_edge ... ok
[INFO] [stdout] test core_editor::editor::test::change_lineedge_linewise_blanks_current_line ... ok
[INFO] [stdout] test core_editor::editor::test::buffer_edge_spans_lines ... ok
[INFO] [stdout] test core_editor::editor::test::change_line_down_blanks_current_and_next ... ok
[INFO] [stdout] test core_editor::editor::test::copy_current_line_is_linewise_and_nondestructive ... ok
[INFO] [stdout] test core_editor::editor::test::copy_find_forward_matches_copy_right_until ... ok
[INFO] [stdout] test core_editor::editor::test::change_bufferedge_back_matches_legacy_leave_blank_command ... ok
[INFO] [stdout] test core_editor::editor::test::change_charwise_behaves_like_cut ... ok
[INFO] [stdout] test core_editor::editor::test::copy_line_edge_matches_dedicated_line_copies ... ok
[INFO] [stdout] test core_editor::editor::test::cut_bufferedge_back_linewise_cuts_through_current_line ... ok
[INFO] [stdout] test core_editor::cursor::tests::with_direction_flips_forward_to_backward ... ok
[INFO] [stdout] test core_editor::editor::test::cursor_at_buffer_end_holds_on_last_grapheme_in_normal_mode ... ok
[INFO] [stdout] test core_editor::cursor::tests::with_direction_noop_when_already_backward ... ok
[INFO] [stdout] test core_editor::editor::test::cut_big_word_right_from_midword_consumes_rest_of_word ... ok
[INFO] [stdout] test core_editor::editor::test::copy_lineedge_linewise_tags_register_nondestructively ... ok
[INFO] [stdout] test core_editor::editor::test::cut_current_line_is_linewise ... ok
[INFO] [stdout] test core_editor::editor::test::cut_back_to_a_position_inside_a_grapheme_takes_it_whole ... ok
[INFO] [stdout] test core_editor::editor::test::copy_word_forward_yanks_without_editing ... ok
[INFO] [stdout] test core_editor::editor::test::cut_find_absent_char_is_noop ... ok
[INFO] [stdout] test core_editor::editor::test::cut_find_backward_before_matches_cut_left_before ... ok
[INFO] [stdout] test core_editor::editor::test::cross_line_cursor_off_clamps_to_line ... ok
[INFO] [stdout] test core_editor::editor::test::cross_line_cursor_on_crosses_newline ... ok
[INFO] [stdout] test core_editor::edit_stack::test::insert_works::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::cursor_at_buffer_end_fails_on_a_bar_caret_selection ... ok
[INFO] [stdout] test core_editor::editor::test::cut_from_start_linewise_cuts_through_current_line ... ok
[INFO] [stdout] test core_editor::editor::test::cut_bufferedge_fwd_linewise_eats_leading_newline ... ok
[INFO] [stdout] test core_editor::editor::test::cut_from_start_linewise_leave_blank_keeps_empty_line ... ok
[INFO] [stdout] test core_editor::cursor::tests::with_direction_flips_backward_to_forward ... ok
[INFO] [stdout] test core_editor::editor::test::cut_to_end_linewise_cuts_from_current_line ... ok
[INFO] [stdout] test core_editor::editor::test::cut_lineedge_charwise_stays_charwise ... ok
[INFO] [stdout] test core_editor::editor::test::cut_lineedge_linewise_matches_current_line ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_edge_matches_dedicated_line_cuts ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_down_on_last_line_cuts_only_that_line ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_down_on_single_line_buffer_empties_it ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_edge_forward_stops_at_newline ... ok
[INFO] [stdout] test core_editor::editor::test::cut_find_forward_on_matches_cut_right_until ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_down_linewise_deletes_current_and_next ... ok
[INFO] [stdout] test core_editor::editor::test::cut_to_a_position_inside_a_grapheme_takes_it_whole ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_up_linewise_deletes_current_and_prev ... ok
[INFO] [stdout] test core_editor::editor::test::cut_to_a_position_past_the_buffer_stops_at_the_end ... ok
[INFO] [stdout] test core_editor::editor::test::cut_find_backward_on_matches_cut_left_until ... ok
[INFO] [stdout] test core_editor::editor::test::emacs_extend_word_is_exclusive_span ... ok
[INFO] [stdout] test core_editor::editor::test::cut_word_end_is_inclusive_of_last_char ... ok
[INFO] [stdout] test core_editor::editor::test::entering_vi_normal_clamps_cursor ... ok
[INFO] [stdout] test core_editor::editor::test::cut_to_end_linewise_eats_whole_crlf_terminator ... ok
[INFO] [stdout] test core_editor::editor::test::cut_word_forward_removes_range_and_yanks ... ok
[INFO] [stdout] test core_editor::editor::test::cut_word_right_from_midword_consumes_rest_of_word ... ok
[INFO] [stdout] test core_editor::editor::test::cut_word_right_consumes_whole_contraction ... ok
[INFO] [stdout] test core_editor::editor::test::dd_on_last_line_then_paste_leaves_no_blank_line ... ok
[INFO] [stdout] test core_editor::editor::test::entering_vi_insert_does_not_move_cursor ... ok
[INFO] [stdout] test core_editor::editor::test::cut_word_backward_removes_preceding_word ... ok
[INFO] [stdout] test core_editor::editor::test::cut_find_forward_before_matches_cut_right_before ... ok
[INFO] [stdout] test core_editor::editor::test::cut_line_up_on_first_line_cuts_only_that_line ... ok
[INFO] [stdout] test core_editor::editor::test::erase_grapheme_backward_over_multibyte ... ok
[INFO] [stdout] test core_editor::editor::test::erase_word_forward_deletes_without_touching_register ... ok
[INFO] [stdout] test core_editor::cursor::tests::flip_twice_returns_original ... ok
[INFO] [stdout] test core_editor::editor::test::emacs_extend_word_twice_grows_span ... ok
[INFO] [stdout] test core_editor::editor::test::esc_back_steps_one_within_line ... ok
[INFO] [stdout] test core_editor::editor::test::esc_back_at_line_start_stays_in_line ... ok
[INFO] [stdout] test core_editor::editor::test::esc_back_on_trailing_empty_line_stays ... ok
[INFO] [stdout] test core_editor::editor::test::esc_back_at_line_end_does_not_double_step ... ok
[INFO] [stdout] test core_editor::editor::test::erase_find_forward_is_inclusive ... ok
[INFO] [stdout] test core_editor::editor::test::extend_word_forward_keeps_anchor_at_origin ... ok
[INFO] [stdout] test core_editor::editor::test::head_cell_is_grapheme_wide ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_case_change_leaves_the_selection_standing ... ok
[INFO] [stdout] test core_editor::editor::test::helix::head_cell_tracks_the_extending_head ... ok
[INFO] [stdout] test core_editor::editor::test::helix::cursor_at_buffer_end_holds_for_the_resting_block_caret ... ok
[INFO] [stdout] test core_editor::editor::test::head_cell_is_the_last_grapheme_of_a_forward_selection ... ok
[INFO] [stdout] test core_editor::editor::test::extend_buffer_edge_matches_move_to_start_end_selecting ... ok
[INFO] [stdout] test core_editor::editor::test::head_cell_is_the_first_grapheme_of_a_backward_selection ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_collapse_selection_backward_lands_at_its_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_cut_selection_still_fills_the_cut_buffer ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_across_the_anchor_flips_it::case_1_line_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_onto_the_anchor_stays_one_grapheme::case_3_buffer_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_erase_selection_leaves_the_cut_buffer_alone ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_collapse_selection_forward_lands_after_it ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_rests_the_caret_on_the_target::case_3_line_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_shrinks_without_crossing_the_anchor ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_erase_selection_takes_only_the_selection ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_forward_targets_keep_growing::case_1_word_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_across_the_anchor_flips_it::case_2_buffer_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_forward_targets_keep_growing::case_2_word_end ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_forward_targets_keep_growing::case_4_buffer_end ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_word_forward_grows_on_every_press ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_grapheme_step_rests_on_the_newline::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_grapheme_step_rests_on_the_newline::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_still_flips_the_resting_block ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_move_line_start_non_blank_lands_on_the_first_non_blank ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_paste_after_lands_past_the_selection_and_selects_it ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_paste_before_lands_at_the_selection_start_and_selects_it ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_paste_count_selects_every_copy ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_paste_does_not_split_a_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_forward_targets_keep_growing::case_5_find_on ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_grapheme_backward_flips_the_anchor_then_grows ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_paste_of_an_empty_cut_buffer_leaves_the_caret_put ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_select_line_covers_an_empty_line_whole ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_line_start_non_blank_backward_reaches_the_indent_end ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_rests_the_caret_on_the_target::case_1_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_cut_on_the_newline_joins_the_lines ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_line_start_non_blank_forward_covers_the_landing ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_rests_the_caret_on_the_target::case_2_word_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_select_line_from_a_terminator_keeps_its_own_line ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_line_start_non_blank_is_idempotent ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_forward_targets_keep_growing::case_3_line_end ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_select_re_anchors_at_each_word ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_select_line_snaps_out_to_the_whole_line ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_select_line_takes_one_more_line_on_repeat ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_select_line_stops_at_the_last_line ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_grapheme_forward_grows_on_every_press ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_hops_a_whole_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_forward_targets_keep_growing::case_6_find_before ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_move_line_start_non_blank_stays_on_a_blank_line ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_onto_the_anchor_stays_one_grapheme::case_2_line_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_extend_backward_onto_the_anchor_stays_one_grapheme::case_1_word_start ... ok
[INFO] [stdout] test core_editor::editor::test::helix::open_line_then_opens_above_stack::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::helix::repeating_open_below_does_not_stack ... ok
[INFO] [stdout] test core_editor::editor::test::helix::vi_yank_still_collapses_the_selection ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_undo_re_widens_the_restored_caret ... ok
[INFO] [stdout] test core_editor::editor::test::helix::helix_yank_leaves_the_selection_standing ... ok
[INFO] [stdout] test core_editor::editor::test::helix::open_line_then_opens_above_stack::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::move_word_right_keeps_contraction_whole ... ok
[INFO] [stdout] test core_editor::editor::test::move_find_forward_before_matches_move_right_before ... ok
[INFO] [stdout] test core_editor::editor::test::helix::resting_cursor_cell_is_the_whole_head_cell ... ok
[INFO] [stdout] test core_editor::editor::test::move_word_right_rests_after_word_like_emacs_meta_f ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_at_end::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::net_deliberate_selection_reports_a_range ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_at_end::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::net_get_selection_backward_is_ordered ... ok
[INFO] [stdout] test core_editor::editor::test::move_grapheme_right_steps_over_multibyte ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_at_end::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::helix::open_line_lands_on_the_new_line_from_an_anchored_cursor::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_at_end::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::linewise_cut_last_line_eats_whole_crlf_terminator ... ok
[INFO] [stdout] test core_editor::editor::test::move_word_right_from_midword_completes_current_word ... ok
[INFO] [stdout] test core_editor::editor::test::helix::open_line_lands_on_the_new_line_from_an_anchored_cursor::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::move_buffer_edge_matches_move_to_start_end ... ok
[INFO] [stdout] test core_editor::editor::test::move_find_forward_matches_move_right_until ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_at_end::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::net_get_selection_none_without_anchor ... ok
[INFO] [stdout] test core_editor::editor::test::no_head_cell_under_a_bar_caret ... ok
[INFO] [stdout] test core_editor::editor::test::no_head_cell_without_a_selection ... ok
[INFO] [stdout] test core_editor::editor::test::open_line_is_unchanged_for_a_bar_caret::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::paste_after_linewise_middle_line_lands_below ... ok
[INFO] [stdout] test core_editor::editor::test::select_until_char_in_bar_mode_opens_selection ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_at_end::case_6 ... ok
[INFO] [stdout] test core_editor::editor::test::paste_before_linewise_on_first_line_lands_above ... ok
[INFO] [stdout] test core_editor::editor::test::paste_after_linewise_into_empty_buffer_has_no_blank_line ... ok
[INFO] [stdout] test core_editor::editor::test::paste_after_linewise_on_last_line_lands_below ... ok
[INFO] [stdout] test core_editor::editor::test::move_word_forward_lands_on_next_word_start ... ok
[INFO] [stdout] test core_editor::editor::test::select_all_captures_inclusivity_at_plant_time ... ok
[INFO] [stdout] test core_editor::editor::test::move_find_backward_before_matches_move_left_before ... ok
[INFO] [stdout] test core_editor::editor::test::move_word_right_with_select_extends_anchor ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_01 ... ok
[INFO] [stdout] test core_editor::editor::test::move_word_end_landing_follows_caret_geometry ... ok
[INFO] [stdout] test core_editor::editor::test::shift_select_one_grapheme_over_multibyte ... ok
[INFO] [stdout] test core_editor::editor::test::paste_after_over_selection_does_not_skip_a_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::paste_before_linewise_middle_line_lands_above ... ok
[INFO] [stdout] test core_editor::editor::test::paste_before_over_selection_replaces_it ... ok
[INFO] [stdout] test core_editor::editor::test::open_line_is_unchanged_for_a_bar_caret::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::net_insertion_point_emacs_rests_at_len ... ok
[INFO] [stdout] test core_editor::editor::test::shift_select_grabs_one_grapheme_per_step ... ok
[INFO] [stdout] test core_editor::editor::test::move_find_backward_on_matches_move_left_until ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_09 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_13 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_18 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_19 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_20 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_03 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_08 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_07 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_22 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_21 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_01 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_02 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_04 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_06 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_11 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_02 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_10 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_12 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_14 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_03 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_04 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_11 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_05 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_09 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_07 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_char_left_at_beginning_of_2nd_line ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_char_left_at_beginning_of_line ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_05 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_big_word_left::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_6 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_10 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_char_left_clears_stale_selection ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_06 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_big_word_left::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_big_word_left::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_char_left_cuts_char_and_puts_in_buffer ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_big_word::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_big_word::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_7 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_nested ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_big_word::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_big_word_left::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_big_word::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_quotes ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word::case_08 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_around_word_boundaries::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_with_punctuation::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_15 ... ok
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_16 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_3 ... ignored, Deleting two consecutive chars is not implemented correctly and needs the multiplier explicitly.
[INFO] [stdout] test core_editor::editor::test::test_bracket_text_object_range::case_17 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_with_punctuation::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_6 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_6 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_7 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_with_punctuation::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_with_punctuation::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_selection_linewise_multi_line ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_brackets ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_selection_linewise_single_line ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_boundaries::case_7 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_right_until_char::case_8 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_inside_word_with_punctuation::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_text_object_unicode_safety ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_word_left::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_selection_linewise_spanning_two_lines ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_02 ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_word_left::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_03 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_01 ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_7 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_04 ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_cut_word_left::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_13 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_09 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_10 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_15 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_18 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_19 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_20 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_06 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_21 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_11 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_08 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_12 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_05 ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_07 ... ok
[INFO] [stdout] test core_editor::editor::test::test_replace_char::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_swap_cursor_and_anchor ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_8 ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_9 ... ok
[INFO] [stdout] test core_editor::editor::test::test_replace_char::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_kill_line ... ok
[INFO] [stdout] test core_editor::editor::test::test_replace_char::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_kill_line_with_windows_newline ... ok
[INFO] [stdout] test core_editor::editor::test::test_lower_upper_switchcase_selection::case_6 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_14 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_02 ... ok
[INFO] [stdout] test core_editor::editor::test::test_replace_char::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_7 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_8 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_01 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_23 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_16 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_5 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_09 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_10 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_04 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_06 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_08 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_04 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_01 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_02 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_05 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_11 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_12 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_03 ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_backspace_with_crlf ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_13 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_09 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_06 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_17 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_10 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_6 ... ok
[INFO] [stdout] test core_editor::editor::test::test_quote_text_object_range::case_22 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_03 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_edge_cases::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_07 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_in_whitespace::case_05 ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_delete_with_crlf ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_backspace_works_on_word_boundaries ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_insert_works_on_work_boundaries ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_delete_works_on_word_boundaries ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_mode_selection_calculation_bug ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_07 ... ok
[INFO] [stdout] test core_editor::editor::test::test_text_object_jumping_behavior::case_08 ... ok
[INFO] [stdout] test core_editor::editor::test::test_word_vs_big_word_comparison::case_4 ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_c_command_mode_switch_bug_fix ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_around_word::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_normal_mode_c_command_with_selection ... ok
[INFO] [stdout] test core_editor::editor::test::test_word_vs_big_word_comparison::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_normal_mode_inclusive_selection ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_around_word::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_normal_mode_shift_select_right_c_command ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_visual_mode_c_command ... ok
[INFO] [stdout] test core_editor::editor::test::test_word_vs_big_word_comparison::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_insert_with_newline ... ok
[INFO] [stdout] test core_editor::editor::test::test_word_vs_big_word_comparison::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_normal_mode_cut_selection_backward ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_inside_word::case_1 ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_x_command_with_shift_selection ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_inside_word::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::vi_insert_does_not_clamp_off_the_end ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_clamps_to_line_end ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_backspace_with_newline ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_empty_buffer_stays_at_zero ... ok
[INFO] [stdout] test core_editor::editor::test::test_undo_delete_with_newline ... ok
[INFO] [stdout] test core_editor::editor::test::test_vi_normal_mode_inclusive_selection_backward ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_inside_word::case_2 ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_selection_cut_spans_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_around_word::case_3 ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_set_buffer_clamps_multibyte ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_inside_brackets ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_inside_nested ... ok
[INFO] [stdout] test core_editor::editor::test::test_yank_inside_quotes ... ok
[INFO] [stdout] test core_editor::editor::test::visual_move_word_right_end_select_covers_last_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::word_operator_never_splits_a_combining_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::visual_replace_char_replaces_only_the_caret_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_clamps_cursor_off_the_end ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_within_bounds_is_unchanged ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_selection_cut_is_inclusive ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_clamps_onto_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::editor::test::vi_visual_extend_word_covers_landing ... ok
[INFO] [stdout] test core_editor::editor::test::vi_normal_set_buffer_clamps_cursor ... ok
[INFO] [stdout] test core_editor::editor::test::visual_line_jk_keeps_anchor_grapheme_covered ... ok
[INFO] [stdout] test core_editor::graphemes::tests::ensure_prev_floors_mid_grapheme_to_its_start ... ok
[INFO] [stdout] test core_editor::editor::test::word_commands_match_legacy_spec_at_every_position ... ok
[INFO] [stdout] test core_editor::editor::test::visual_move_line_does_not_panic_across_line_boundary ... ok
[INFO] [stdout] test core_editor::editor::test::visual_replace_char_replaces_whole_selection ... ok
[INFO] [stdout] test core_editor::editor::test::vi_visual_still_stops_before_the_newline ... ok
[INFO] [stdout] test core_editor::editor::test::visual_line_jk_preserves_caret_column ... ok
[INFO] [stdout] test core_editor::editor::test::visual_move_to_line_start_after_end_keeps_anchor_grapheme ... ok
[INFO] [stdout] test core_editor::graphemes::tests::is_boundary_false_mid_grapheme ... ok
[INFO] [stdout] test core_editor::graphemes::tests::ensure_accepts_a_position_inside_a_multibyte_char ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_then_prev_returns_to_origin_for_unicode ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_treats_combining_mark_as_single_grapheme ... ok
[INFO] [stdout] test core_editor::graphemes::tests::is_boundary_true_at_zero_for_empty_buffer ... ok
[INFO] [stdout] test core_editor::graphemes::tests::prev_at_zero_returns_zero ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_at_end_returns_buf_len ... ok
[INFO] [stdout] test core_editor::graphemes::tests::prev_retreats_one_ascii_char ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_on_empty_buffer_returns_zero ... ok
[INFO] [stdout] test core_editor::graphemes::tests::is_boundary_true_at_start_end_and_grapheme_starts ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_skips_two_byte_utf8_grapheme ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_advances_one_cjk_char ... ok
[INFO] [stdout] test core_editor::line::tests::end_of_line_backs_over_carriage_return ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_advances_one_ascii_char ... ok
[INFO] [stdout] test core_editor::line::tests::first_non_blank_finds_the_indent_end ... ok
[INFO] [stdout] test core_editor::graphemes::tests::ensure_is_idempotent ... ok
[INFO] [stdout] test core_editor::line::tests::first_non_blank_ignores_a_carriage_return ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_skips_zwj_emoji_sequence_as_one ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_returns_buf_len_when_at_end ... ok
[INFO] [stdout] test core_editor::line::tests::end_of_line_stops_at_newline_or_buffer_end ... ok
[INFO] [stdout] test core_editor::graphemes::tests::ensure_is_noop_on_aligned_positions ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_left_grapheme_works::case_2 ... ok
[INFO] [stdout] test core_editor::line::tests::first_non_blank_reports_into_the_buffer_not_the_line ... ok
[INFO] [stdout] test core_editor::line::tests::start_of_line_finds_current_line ... ok
[INFO] [stdout] test core_editor::graphemes::tests::prev_retreats_past_two_byte_utf8_grapheme ... ok
[INFO] [stdout] test core_editor::graphemes::tests::next_then_prev_returns_to_origin_for_ascii ... ok
[INFO] [stdout] test core_editor::graphemes::tests::prev_retreats_past_combining_mark ... ok
[INFO] [stdout] test core_editor::graphemes::tests::prev_retreats_past_zwj_emoji_sequence ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_right_grapheme_works::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::capitalize_char_works::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_selection_collapses_to_range_start::case_5_to_buffer_end ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_right_grapheme_works::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_left_grapheme_works::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_right_grapheme_works::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_word_right_works ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_char_updates_insertion_point_point_correctly ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_newline_inserts_lf_only::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_newline_inserts_lf_only::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_newline_inserts_lf_only::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_newline_inserts_lf_only::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_newline_inserts_lf_only::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::capitalize_char_works::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::capitalize_char_works::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_big_word_right_start::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_left_grapheme_works::case_1 ... ok
[INFO] [stdout] test core_editor::line::tests::first_non_blank_is_none_on_a_blank_line ... ok
[INFO] [stdout] test core_editor::line::tests::start_of_next_line_is_none_on_last_line ... ok
[INFO] [stdout] test core_editor::line_buffer::test::insert_str_updates_insertion_point_point_correctly ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_selection_collapses_to_range_start::case_2_backward ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_big_word_right_start::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_selection_collapses_to_range_start::case_3_forward_multibyte ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_selection_collapses_to_range_start::case_6_point_is_a_no_op ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_word_left_works ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_selection_collapses_to_range_start::case_1_forward ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_big_word_right_start::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::delete_selection_collapses_to_range_start::case_4_backward_multibyte ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_big_word_right_start::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_long_word_left::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_long_word_left::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_word_vi_breaks_on_punctuation ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_unicode_word_right_start::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::lowercase_word_works::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::lowercase_word_works::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_02 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_03 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::lowercase_word_works::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_05 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_long_word_left::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_unicode_word_right_start::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_07 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_long_word_left::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_01 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_unicode_word_left::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_unicode_word_left::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_04 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_unicode_word_right_start::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_06 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::set_buffer_updates_insertion_point_to_new_buffer_length::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::set_buffer_updates_insertion_point_to_new_buffer_length::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_08 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_graphemes_work::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::locate_unicode_word_left::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_graphemes_work::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_graphemes_work::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::lowercase_word_works::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_graphemes_work::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::lowercase_word_works::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_09 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_words_works::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_down_works::case_10 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_words_works::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_clearing_line_buffer_resets_buffer_and_insertion_point ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::moving_up_works::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_9 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_clear_to_line_end::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_clear_to_line_end::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_before::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_before_left::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_before_left::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_before::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_before_left::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until_left::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until_left::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until_left::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until_left::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_first_line_detection::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_first_line_detection::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_first_line_detection::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_before::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_delete_until_left::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::swap_words_works::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_num::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_find_current_line_end::case_9 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_first_line_detection::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::switchcase_char::case_6 ... ok
[INFO] [stdout] test core_editor::graphemes::tests::ensure_next_ceils_mid_grapheme_to_its_end ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_grapheme_right_index_from_pos::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_last_line_detection::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_left_before::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_left_before::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_left_until::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_clear_to_line_end::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_left_until::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_before::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_before::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_before::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_9 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_before::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_right_until::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_end::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_to_line_start::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_left_before::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_move_left_until::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_current_line_range::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_bracket_behavior::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_bracket_behavior::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_bracket_behavior::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_num_lines::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_num_lines::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_num_lines::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_01 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_02 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_03 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_04 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_05 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_06 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_07 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_08 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_num_lines::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_09 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_quote_multiline::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_quote_multiline::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_bracket_behavior::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_10 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_13 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_14 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_bracket_behavior::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_16 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_01 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_quote_multiline::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_11 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_06 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_quote_multiline::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_new_buffer_is_empty ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_09 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_10 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_11 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_14 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_multiline_next_quote_multiline::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_12 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_15 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_16 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_08 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_num_lines::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_17 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_22 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_18 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_19 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_20 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_24 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_25 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_4 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_26 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_27 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_04 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_05 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_06 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_07 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_08 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_09 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_10 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_11 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_6 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_01 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_02 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_03 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_12 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_unicode_safety::case_7 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_04 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_13 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_05 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_07 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_14 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_21 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair::case_15 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_02 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_23 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_12 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_09 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_10 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_13 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_14 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_15 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_15 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_11 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_16 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_16 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair::case_03 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_17 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_01 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_current_pair_group::case_13 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_04 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_20 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_08 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_06 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_07 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_02 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_03 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_unicode_safety::case_1 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_unicode_safety::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_05 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_12 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_21 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_18 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_in_group::case_19 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_unicode_safety::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_unicode_safety::case_5 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_6 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_3 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_unicode_safety::case_6 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_8 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::test_range_inside_next_pair_unicode_safety::case_4 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_4 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::uppercase_word_works::case_4 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_9 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::uppercase_word_works::case_3 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::uppercase_word_works::case_5 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::uppercase_word_works::case_2 ... ok
[INFO] [stdout] test core_editor::line_buffer::test::uppercase_word_works::case_1 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end::case_1 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_03 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_08 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_7 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end::case_5 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end::case_6 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_04 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_01 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_09 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_02 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_11 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_1 ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_backward_before_stops_short ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end::case_3 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end::case_4 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_13 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_05 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_14 ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_06 ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_buffer_edge_spans_whole_buffer ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_07 ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_before_respects_grapheme_boundaries ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_line_edge_forward_stops_at_newline ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_line_edge_forward_stops_before_crlf ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_long_word_right_end::case_2 ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_line_start_non_blank_lands_on_the_indent_end ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_10 ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_marks_forward_word_end_inclusive ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_stays_put_for_line_start_non_blank_with_nowhere_to_go ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_at_buffer_end_covers_the_tail ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_find_spans_origin_to_hit ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_word_back_excludes_cursor_on_word_start ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_backward_finds_adjacent_char ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_word_end_includes_cursor_unless_on_word_end ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_word_back_includes_cursor_mid_word ... ok
[INFO] [stdout] test core_editor::resolve::tests::locate_unicode_word_right_end_multibyte::case_12 ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_absent_char_stays_put ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_line_targets_the_adjacent_line ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_backward_on_lands_on_char ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_backward_searches_strictly_before_origin ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_before_replay_from_landing_spot_is_stuck ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_forward_before_stops_short ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_forward_on_lands_on_char ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_find_searches_strictly_past_origin ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_handles_line_and_buffer_edges ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_motion_line_edge_backward_stops_at_line_start ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_word_start_selects_through_the_gap ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::between_only_recoheres ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_does_not_rest_on_crlf_terminator ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_leaves_existing_selection ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_empty_buffer_stays_empty ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_leaves_midbuffer_point ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_word_start_hops_when_cursor_touches_the_boundary ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_widens_over_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_over_newline_covers_a_whole_crlf ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::between_leaves_head_past_last_grapheme ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_over_newline_matches_block_away_from_terminators ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_leaves_selection_head_at_end ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_pulls_back_from_interior_line_end ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_over_newline_still_will_not_widen_across_a_line ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_pulls_back_over_multibyte_grapheme ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::recohere_clamps_past_end_to_point_at_len ... ok
[INFO] [stdout] test core_editor::word::tests::big_word_boundary_fuses_word_and_punctuation ... ok
[INFO] [stdout] test core_editor::word::tests::carriage_return_is_eol_not_a_word ... ok
[INFO] [stdout] test core_editor::resolve::tests::resolve_selection_word_start_from_space_before_last_word ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_pulls_point_back_from_end ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_rests_on_trailing_empty_line ... ok
[INFO] [stdout] test core_editor::word::tests::categorize_each_class ... ok
[INFO] [stdout] test core_editor::word::tests::small_word_boundary_is_any_class_change ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::recohere_expands_selection_outward ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_widens_backward_over_multibyte_at_end ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_over_newline_widens_onto_the_terminator ... ok
[INFO] [stdout] test edit_mode::emacs::test::overriding_default_keybindings_works ... ok
[INFO] [stdout] test edit_mode::emacs::test::return_none_reedline_event_when_keybinding_is_not_found ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_point_at_end_widens_backward ... ok
[INFO] [stdout] test edit_mode::emacs::test::switch_mode_event_accepts_only_emacs ... ok
[INFO] [stdout] test edit_mode::emacs::test::inserting_capital_character_for_non_ascii_remains_as_is ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_rests_on_interior_empty_line ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::block_widens_point_to_one_grapheme ... ok
[INFO] [stdout] test edit_mode::emacs::test::inserting_capital_character_works ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::commit_is_idempotent ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_1_after_a_count::chord_1__KeyCode__F_5__KeyModifiers__NONE_ReedlineEvent__ClearScreen_ ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_2_after_a_pending_find::chord_3__KeyCode__Char___d____KeyModifiers__ALT_ReedlineEvent__ClearScre ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_1_after_a_count::chord_2__KeyCode__Char___t____KeyModifiers__CONTROL_ReedlineEvent__Clear ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_3_after_a_pending_goto::chord_1__KeyCode__F_5__KeyModifiers__NONE_ReedlineEvent__ClearScreen_ ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::recohere_is_identity_on_aligned_cursors ... ok
[INFO] [stdout] test edit_mode::emacs::test::ctrl_l_leads_to_clear_screen_event ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_4_after_a_count_and_a_pending_find::chord_2__KeyCode__Char___t____KeyModifiers__CONTROL_ReedlineEvent__Clear ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::on_grapheme_empty_buffer_is_noop ... ok
[INFO] [stdout] test edit_mode::emacs::test::inserting_character_works ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_3_after_a_pending_goto::chord_2__KeyCode__Char___t____KeyModifiers__CONTROL_ReedlineEvent__Clear ... ok
[INFO] [stdout] test edit_mode::emacs::test::kill_line ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_2_after_a_pending_find::chord_1__KeyCode__F_5__KeyModifiers__NONE_ReedlineEvent__ClearScreen_ ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::recohere_floors_mid_grapheme_point ... ok
[INFO] [stdout] test edit_mode::helix::test::count_repeats_undo ... ok
[INFO] [stdout] test edit_mode::helix::test::count_seeks_once_then_opens_above ... ok
[INFO] [stdout] test core_editor::rest_policy::tests::recohere_is_idempotent ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_ends_a_live_count ... ok
[INFO] [stdout] test edit_mode::helix::test::a_live_count_rejects_the_goto_prefix ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_3_after_a_pending_goto::chord_3__KeyCode__Char___d____KeyModifiers__ALT_ReedlineEvent__ClearScre ... ok
[INFO] [stdout] test edit_mode::helix::test::count_repeats_motion ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_1_after_a_count::chord_3__KeyCode__Char___d____KeyModifiers__ALT_ReedlineEvent__ClearScre ... ok
[INFO] [stdout] test edit_mode::helix::test::count_survives_into_pending ... ok
[INFO] [stdout] test edit_mode::helix::test::ctrl_c_uses_common_control_binding ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_4_after_a_count_and_a_pending_find::chord_1__KeyCode__F_5__KeyModifiers__NONE_ReedlineEvent__ClearScreen_ ... ok
[INFO] [stdout] test edit_mode::helix::test::count_accumulates_digits ... ok
[INFO] [stdout] test edit_mode::helix::test::c_cuts_and_enters_insert ... ok
[INFO] [stdout] test edit_mode::helix::test::an_unbound_chord_still_rejects_a_half_typed_sequence ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_character_does_not_steal_a_pending_argument ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_4_after_a_count_and_a_pending_find::chord_3__KeyCode__Char___d____KeyModifiers__ALT_ReedlineEvent__ClearScre ... ok
[INFO] [stdout] test edit_mode::helix::test::a_typed_one_is_still_a_count ... ok
[INFO] [stdout] test edit_mode::helix::test::a_bound_chord_fires_during_a_half_typed_sequence::case_2_after_a_pending_find::chord_2__KeyCode__Char___t____KeyModifiers__CONTROL_ReedlineEvent__Clear ... ok
[INFO] [stdout] test edit_mode::helix::test::altgr_char_is_not_a_command ... ok
[INFO] [stdout] test edit_mode::helix::test::custom_select_table_shadows_the_default ... ok
[INFO] [stdout] test edit_mode::helix::test::esc_cancels_pending_sequence ... ok
[INFO] [stdout] test edit_mode::helix::test::esc_deselects_in_normal_and_leaves_select ... ok
[INFO] [stdout] test edit_mode::helix::test::find_waits_for_char_then_selects ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_moves_in_normal_and_extends_in_select::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::g_absorbs_without_emitting ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_keeps_select_mode ... ok
[INFO] [stdout] test edit_mode::helix::test::defaults_to_insert_and_inserts_chars ... ok
[INFO] [stdout] test edit_mode::helix::test::enter_collapses_then_submits_and_enters_insert ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_moves_in_normal_and_extends_in_select::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::esc_cancels_pending_goto ... ok
[INFO] [stdout] test edit_mode::helix::test::h_and_l_collapse_in_normal_extend_in_select ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_moves_in_normal_and_extends_in_select::case_3 ... ok
[INFO] [stdout] test edit_mode::helix::test::esc_in_normal_deselects ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_shadows_the_bare_binding_for_the_same_key::case_3 ... ok
[INFO] [stdout] test edit_mode::helix::test::insert_entries_collapse_to_an_edge::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::esc_returns_from_select_despite_table_binding ... ok
[INFO] [stdout] test edit_mode::helix::test::insert_esc_enters_normal ... ok
[INFO] [stdout] test edit_mode::helix::test::find_accepts_altgr_argument ... ok
[INFO] [stdout] test edit_mode::helix::test::open_line_next_mode_is_mode_independent::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_shadows_the_bare_binding_for_the_same_key::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_shadows_the_bare_binding_for_the_same_key::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::insert_accepts_altgr_chars ... ok
[INFO] [stdout] test edit_mode::helix::test::leading_zero_is_not_a_count ... ok
[INFO] [stdout] test edit_mode::helix::test::goto_moves_in_normal_and_extends_in_select::case_4 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_leaves_select_mode::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_carries_the_edge_direction::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::open_line_next_mode_is_mode_independent::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::operator_next_mode_is_mode_independent::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::operator_next_mode_is_mode_independent::case_3 ... ok
[INFO] [stdout] test edit_mode::helix::test::open_line_enters_insert::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_leaves_select_mode::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_next_mode_is_mode_independent::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::open_line_enters_insert::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_next_mode_is_mode_independent::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::replace_waits_for_char ... ok
[INFO] [stdout] test edit_mode::helix::test::select_mode_consults_its_own_table ... ok
[INFO] [stdout] test edit_mode::helix::test::select_mode_home_and_end_extend_to_the_line_edges ... ok
[INFO] [stdout] test edit_mode::helix::test::switch_mode_event_abandons_a_half_typed_sequence ... ok
[INFO] [stdout] test edit_mode::helix::test::switch_mode_event_declines_another_machine ... ok
[INFO] [stdout] test edit_mode::helix::test::switch_mode_event_switches_the_machine::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::operator_next_mode_is_mode_independent::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::switch_mode_event_switches_the_machine::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::operators_leave_select_mode ... ok
[INFO] [stdout] test edit_mode::helix::test::switch_mode_event_switches_the_machine::case_3 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_carries_the_count_in_the_command ... ok
[INFO] [stdout] test edit_mode::helix::test::till_backward_uses_stop_before ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_carries_the_edge_direction::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::paste_event_produces_insert_string ... ok
[INFO] [stdout] test edit_mode::helix::test::undo_redo_lower_to_bare_edits::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motions_select_in_normal_mode::case_3 ... ok
[INFO] [stdout] test edit_mode::helix::test::v_toggles_between_normal_and_select ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motions_select_in_normal_mode::case_6 ... ok
[INFO] [stdout] test edit_mode::helix::test::undo_redo_keep_select_mode::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::select_mode_backspace_extends ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motion_extends_in_select_mode ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motions_select_in_normal_mode::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::unbound_goto_target_rejects_and_clears ... ok
[INFO] [stdout] test edit_mode::helix::test::undo_redo_lower_to_bare_edits::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::x_selects_a_line_once_per_count ... ok
[INFO] [stdout] test edit_mode::helix::test::undo_redo_keep_select_mode::case_1 ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motions_select_in_normal_mode::case_2 ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motions_select_in_normal_mode::case_4 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_delete_char_backward ... ok
[INFO] [stdout] test edit_mode::helix::test::word_motions_select_in_normal_mode::case_5 ... ok
[INFO] [stdout] test edit_mode::helix::test::y_copies_and_stays_normal ... ok
[INFO] [stdout] test edit_mode::keybindings::test::rebinding_a_key_replaces_the_previous_event ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_01 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_03 ... ok
[INFO] [stdout] test edit_mode::keybindings::test::remove_binding_returns_the_bound_event_and_unbinds ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_04 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_partial_motion ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_has_garbage ... ok
[INFO] [stdout] test edit_mode::helix::test::insert_enter_submits_only_without_modifiers ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_partial_action ... ok
[INFO] [stdout] test edit_mode::helix::test::insert_entries_collapse_to_an_edge::case_1 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_05 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_02 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_09 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_10 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_14 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_15 ... ok
[INFO] [stdout] test edit_mode::keybindings::test::empty_until_found_is_accepted ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::oversized_count_saturates_instead_of_overflowing ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_13 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_11 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::replace_char_in_visual_returns_to_normal ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_17 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_find_action ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_12 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_20 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_16 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_18 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_01 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_07 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_08 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_delete_without_motion ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_delete_word ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_11 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_19 ... ok
[INFO] [stdout] test edit_mode::helix::test::normal_mode_arrows_keep_menu_navigation ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_15 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_13 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_06 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_find_motion ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_14 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_07 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_02 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_09 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_memory_move::case_08 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_16 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_06 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_21 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_04 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_20 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_22 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_10 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_05 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_23 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_03 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_17 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_12 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_18 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_19 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_24 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_32 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_40 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_25 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_35 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_36 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_37 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_28 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_26 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_27 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_48 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_46 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_47 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_49 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_34 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_39 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_52 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_50 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_29 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_56 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_41 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_51 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_44 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_42 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_04 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_57 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_58 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_59 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_01 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_02 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_30 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_06 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_45 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_08 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_31 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_53 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_03 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_13 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_09 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_15 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_54 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_07 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_11 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_12 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_33 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_16 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_10 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_14 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_38 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_55 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move::case_43 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_17 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_delete_twenty_word ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_synonm::case_1 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_delete_word ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_up ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_synonm::case_2 ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_delete_two_word ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_reedline_move_in_visual_mode::case_05 ... ok
[INFO] [stdout] test edit_mode::vi::test::a_bound_key_fires_during_a_half_typed_sequence_and_abandons_it ... ok
[INFO] [stdout] test edit_mode::vi::test::alt_char_in_insert_is_esc_then_the_normal_command ... ok
[INFO] [stdout] test edit_mode::vi::test::alt_shift_char_in_insert_reaches_the_uppercase_command ... ok
[INFO] [stdout] test edit_mode::vi::test::altgr_char_in_insert_is_still_typed ... ok
[INFO] [stdout] test edit_mode::vi::test::alt_char_in_visual_returns_to_normal_first ... ok
[INFO] [stdout] test edit_mode::vi::test::alt_char_in_normal_aborts_the_pending_sequence ... ok
[INFO] [stdout] test edit_mode::vi::test::binding_fires_right_after_aborted_find ... ok
[INFO] [stdout] test edit_mode::vi::test::binding_on_the_alt_chord_beats_the_escape ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_delete_without_motion ... ok
[INFO] [stdout] test edit_mode::vi::test::ctrl_char_in_insert_with_no_binding_returns_none ... ok
[INFO] [stdout] test edit_mode::vi::test::dot_replays_previous_wrapped_in_outer_multiple ... ok
[INFO] [stdout] test edit_mode::vi::test::enter_in_normal_with_no_binding_submits_and_enters_insert ... ok
[INFO] [stdout] test edit_mode::vi::test::esc_clears_cache ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_char_action_replace ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_delete_char_backward ... ok
[INFO] [stdout] test edit_mode::vi::parser::tests::test_two_delete_two_lines ... ok
[INFO] [stdout] test edit_mode::vi::test::i_in_normal_transitions_to_insert ... ok
[INFO] [stdout] test edit_mode::vi::test::d_in_visual_emits_cut_selection_and_returns_to_normal ... ok
[INFO] [stdout] test edit_mode::vi::test::incomplete_sequence_returns_none_and_holds_cache ... ok
[INFO] [stdout] test edit_mode::vi::test::keybinding_without_modifier_test ... ok
[INFO] [stdout] test edit_mode::vi::test::esc_leads_to_normal_mode_test ... ok
[INFO] [stdout] test edit_mode::vi::test::invalid_motion_after_operator_clears_cache ... ok
[INFO] [stdout] test edit_mode::vi::test::linewise_dd_emits_linewise_cut ... ok
[INFO] [stdout] test edit_mode::vi::test::keybinding_with_shift_modifier_test ... ok
[INFO] [stdout] test edit_mode::vi::test::multiplier_repeats_operator_motion ... ok
[INFO] [stdout] test edit_mode::vi::test::mouse_down_event_produces_mouse_event ... ok
[INFO] [stdout] test edit_mode::vi::test::pending_motion_beats_custom_keybinding ... ok
[INFO] [stdout] test edit_mode::vi::test::paste_event_produces_insert_string ... ok
[INFO] [stdout] test edit_mode::vi::test::previous_set_after_complete_command ... ok
[INFO] [stdout] test edit_mode::vi::test::alt_on_a_non_character_key_is_left_to_the_tables ... ok
[INFO] [stdout] test edit_mode::vi::test::resize_event_passes_through ... ok
[INFO] [stdout] test edit_mode::vi::test::partial_multiplier_holds_cache ... ok
[INFO] [stdout] test edit_mode::vi::test::switch_mode_event_abandons_a_half_typed_sequence ... ok
[INFO] [stdout] test edit_mode::vi::test::esc_from_normal_does_not_step_cursor ... ok
[INFO] [stdout] test edit_mode::vi::test::non_register_modifier_test ... ok
[INFO] [stdout] test edit_mode::vi::test::esc_from_visual_returns_to_normal ... ok
[INFO] [stdout] test edit_mode::vi::test::switch_mode_event_declines_another_machine ... ok
[INFO] [stdout] test edit_mode::vi::test::normal_mode_arrows_keep_menu_navigation ... ok
[INFO] [stdout] test edit_mode::vi::test::multiplier_alone_repeats_motion ... ok
[INFO] [stdout] test edit_mode::vi::test::focus_gained_returns_none ... ok
[INFO] [stdout] test edit_mode::vi::test::shift_char_in_insert_inserts_uppercase ... ok
[INFO] [stdout] test edit_mode::vi::test::keybinding_with_super_modifier_test ... ok
[INFO] [stdout] test edit_mode::vi::test::shift_char_pushed_uppercase_into_cache ... ok
[INFO] [stdout] test edit_mode::vi::test::repeated_dot_doesnt_accumulates_nesting_in_previous ... ok
[INFO] [stdout] test edit_mode::vi::test::v_completes_pending_replace_char ... ok
[INFO] [stdout] test edit_mode::vi::test::switch_mode_event_switches_the_machine::case_2 ... ok
[INFO] [stdout] test edit_mode::vi::test::switch_mode_event_switches_the_machine::case_1 ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_02_right_is_l ... ok
[INFO] [stdout] test edit_mode::vi::test::switch_mode_event_switches_the_machine::case_3 ... ok
[INFO] [stdout] test edit_mode::vi::test::unbound_char_in_insert_inserts_char ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_03_backspace_is_h ... ok
[INFO] [stdout] test edit_mode::vi::test::non_char_key_in_normal_uses_keybindings ... ok
[INFO] [stdout] test edit_mode::vi::test::unbound_char_in_normal_feeds_parser ... ok
[INFO] [stdout] test edit_mode::vi::test::v_completes_pending_find_motion ... ok
[INFO] [stdout] test edit_mode::vi::test::v_in_normal_enters_visual ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_mode_reads_its_own_keybinding_table ... ok
[INFO] [stdout] test edit_mode::vi::test::the_alt_chord_opt_out_reads_the_visual_table ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_04_up_is_k ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_01_left_is_h ... ok
[INFO] [stdout] test edit_mode::vi::test::v_completes_pending_till_motion ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_05_down_is_j ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_delete_cuts_the_selection_and_leaves_visual ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_06_ctrl_p_is_k ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_10_home_is_0 ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_11_end_is_dollar ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_08_ctrl_left_is_b ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_12_ctrl_a_is_0 ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_09_ctrl_right_is_w ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_07_ctrl_n_is_j ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_13_ctrl_e_is_dollar ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_15_ctrl_end_is_g ... ok
[INFO] [stdout] test edit_mode::vi::test::visual_navigation_keys_extend_the_selection::case_14_ctrl_home_is_gg ... ok
[INFO] [stdout] test engine::tests::a_menu_without_word_chars_outlives_the_word::case_2_statement_end ... ok
[INFO] [stdout] test engine::tests::a_persistent_menu_survives_the_end_of_the_word ... ok
[INFO] [stdout] test engine::tests::a_word_boundary_closes_the_menu::case_3_close_paren ... ok
[INFO] [stdout] test engine::tests::a_word_boundary_closes_the_menu::case_6_qualifier ... ok
[INFO] [stdout] test engine::tests::abbreviation_empty_buffer_returns_none ... ok
[INFO] [stdout] test engine::tests::a_word_ends_inside_a_burst_of_typing ... ok
[INFO] [stdout] test engine::tests::abbreviation_expands_before_trailing_text_on_submit ... ok
[INFO] [stdout] test engine::tests::abbreviation_expands_last_word_only ... ok
[INFO] [stdout] test engine::tests::abbreviation_expands_on_space_without_double_space ... ok
[INFO] [stdout] test engine::tests::abbreviation_expands_on_submit ... ok
[INFO] [stdout] test engine::tests::abbreviation_leading_spaces_returns_none ... ok
[INFO] [stdout] test engine::tests::a_late_lone_suggestion_is_dropped_once_the_line_moved_on ... ok
[INFO] [stdout] test engine::tests::abbreviation_no_match_returns_none ... ok
[INFO] [stdout] test engine::tests::a_late_shared_prefix_is_dropped_once_the_line_moved_on ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_1 ... ok
[INFO] [stdout] test engine::tests::abbreviation_non_ascii_key_and_expansion ... ok
[INFO] [stdout] test engine::tests::a_lone_late_suggestion_is_accepted_rather_than_spliced ... ok
[INFO] [stdout] test engine::tests::a_lone_stale_suggestion_does_not_swallow_the_completion ... ok
[INFO] [stdout] test engine::tests::a_word_boundary_closes_the_menu::case_2_statement_end ... ok
[INFO] [stdout] test engine::tests::abbreviation_mid_word_cursor_on_submit_returns_none ... ok
[INFO] [stdout] test engine::tests::a_word_boundary_closes_the_menu::case_5_underscore ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_3 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_6 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_7 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_1 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_2 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_2 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_6 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_5 ... ok
[INFO] [stdout] test engine::tests::a_menu_without_word_chars_is_left_alone ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_7 ... ok
[INFO] [stdout] test engine::tests::abbreviation_expands_on_enter_in_vi_normal ... ok
[INFO] [stdout] test engine::tests::a_menu_without_word_chars_outlives_the_word::case_1_space ... ok
[INFO] [stdout] test engine::tests::an_abbreviation_expanded_on_the_space_still_ends_the_word ... ok
[INFO] [stdout] test engine::tests::a_newline_command_closes_the_menu ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_5 ... ok
[INFO] [stdout] test engine::tests::an_unsatisfied_arm_does_not_fire_on_a_later_result ... ok
[INFO] [stdout] test engine::tests::additional_edit_mode_stays_inactive_until_switched ... ok
[INFO] [stdout] test engine::tests::an_opening_menu_is_not_visible_until_answered ... ok
[INFO] [stdout] test engine::tests::auto_pairs_backspace_after_buffer_replacement_removes_empty_pair ... ok
[INFO] [stdout] test engine::tests::auto_pairs_do_not_rewrite_reverse_history_search_query ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_default::case_4 ... ok
[INFO] [stdout] test engine::tests::auto_pairs_disabled_keeps_literal_typing ... ok
[INFO] [stdout] test engine::tests::auto_pairs_overlapping_pair_definitions_resolve_by_search_order ... ok
[INFO] [stdout] test engine::tests::auto_pairs_ignore_unconfigured_openers ... ok
[INFO] [stdout] test engine::tests::auto_pairs_do_not_rewrite_insert_string ... ok
[INFO] [stdout] test engine::tests::auto_pairs_multiline_and_crlf_buffer ... ok
[INFO] [stdout] test engine::tests::auto_pairs_insert_pair_and_continue_inside ... ok
[INFO] [stdout] test engine::tests::a_word_boundary_closes_the_menu::case_4_letter ... ok
[INFO] [stdout] test engine::tests::a_word_boundary_closes_the_menu::case_1_space ... ok
[INFO] [stdout] test engine::tests::auto_pairs_balanced_paste_event_is_not_rewritten ... ok
[INFO] [stdout] test engine::tests::auto_pairs_context_selection_matches_vi_block_forward_selection ... ok
[INFO] [stdout] test engine::tests::auto_pairs_undo_granularity_skip_existing_closer_not_vetoed ... ok
[INFO] [stdout] test engine::tests::auto_pairs_undo_granularity_skip_existing_closer_vetoed ... ok
[INFO] [stdout] test engine::tests::auto_pairs_veto_backspace_pair_falls_back_to_plain_backspace ... ok
[INFO] [stdout] test engine::tests::auto_pairs_undo_granularity_open_vetoed ... ok
[INFO] [stdout] test engine::tests::auto_pairs_veto_sees_buffer_and_cursor_after_preceding_commands_in_batch ... ok
[INFO] [stdout] test engine::tests::auto_pairs_support_same_character_pairs ... ok
[INFO] [stdout] test engine::tests::auto_pairs_unbalanced_paste_event_is_not_rewritten ... ok
[INFO] [stdout] test engine::tests::auto_pairs_undo_granularity_backspace_pair_vetoed ... ok
[INFO] [stdout] test engine::tests::auto_pairs_undo_granularity_backspace_pair_not_vetoed ... ok
[INFO] [stdout] test engine::tests::auto_pairs_veto_open_falls_back_to_literal_insert_char ... ok
[INFO] [stdout] test engine::tests::auto_pairs_veto_skip_existing_closer_falls_back_to_literal_insert_char ... ok
[INFO] [stdout] test engine::tests::auto_pairs_veto_open_with_selection_replaces_selection_literally ... ok
[INFO] [stdout] test engine::tests::auto_pairs_backspace_after_pair_newline_keeps_closer ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_4 ... ok
[INFO] [stdout] test engine::tests::abbreviation_string_detection_with_override::case_3 ... ok
[INFO] [stdout] test engine::tests::auto_pairs_backspace_removes_empty_pair_as_one_undo_step ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_history_traversal::case_2::start_1_0 ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_redo::case_2::start_2_3 ... ok
[INFO] [stdout] test engine::tests::auto_pairs_veto_open_does_not_affect_skip_over_or_backspace_pair ... ok
[INFO] [stdout] test engine::tests::auto_pairs_skip_over_grapheme_with_combining_mark_after_closer ... ok
[INFO] [stdout] test engine::tests::context_policy_allows_non_quote_pair_inside_unclosed_region ... ok
[INFO] [stdout] test engine::tests::clear_edit_modes_drops_the_standbys_and_keeps_the_active_machine ... ok
[INFO] [stdout] test engine::tests::auto_pairs_skip_existing_closer ... ok
[INFO] [stdout] test engine::tests::auto_pairs_undo_granularity_open_not_vetoed ... ok
[INFO] [stdout] test engine::tests::context_policy_vetoes_same_delimiter_inside_unclosed_region ... ok
[INFO] [stdout] test engine::tests::down_inside_a_multiline_buffer_is_handled_while_the_cursor_moves ... ok
[INFO] [stdout] test engine::tests::down_inside_recalled_multiline_entry_keeps_walking_forward ... ok
[INFO] [stdout] test engine::tests::break_signal_builder_pattern ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_clearing_selection_is_handled::case_1 ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_history_traversal::case_2::start_2_3 ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_redo::case_2::start_1_0 ... ok
[INFO] [stdout] test engine::tests::down_walks_forward_through_history_and_is_handled_until_it_cannot ... ok
[INFO] [stdout] test engine::tests::break_signal_is_send ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_clearing_selection_is_handled::case_2 ... ok
[INFO] [stdout] test engine::tests::edit_status_is_applied_when_any_command_applies ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_history_traversal::case_1::start_2_3 ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_history_traversal::case_1::start_1_0 ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_redo::case_1::start_2_3 ... ok
[INFO] [stdout] test engine::tests::buffer_edge_alias_preserves_redo::case_1::start_1_0 ... ok
[INFO] [stdout] test engine::tests::down_on_the_line_being_typed_is_inapplicable ... ok
[INFO] [stdout] test engine::tests::enter_over_a_stale_menu_runs_the_line ... ok
[INFO] [stdout] test engine::tests::enter_with_an_empty_menu_submits_the_line ... ok
[INFO] [stdout] test engine::tests::command_less_mode_transition_settles_cursor ... ok
[INFO] [stdout] test engine::tests::esc_clears_a_bar_selection_without_moving_the_caret::case_1_selected_leftward ... ok
[INFO] [stdout] test engine::tests::esc_clears_a_bar_selection_without_moving_the_caret::case_2_selected_rightward ... ok
[INFO] [stdout] test engine::tests::helix_backtick_lowercases_and_alt_backtick_uppercases ... ok
[INFO] [stdout] test engine::tests::helix_normal_history_hint_appends_at_buffer_end ... ok
[INFO] [stdout] test engine::tests::helix_insert_mode_auto_pair_routes_through_veto ... ok
[INFO] [stdout] test engine::tests::helix_insert_mode_auto_pair_still_pairs_when_not_vetoed ... ok
[INFO] [stdout] test engine::tests::every_submit_event_accepts_an_open_menu::case_1_enter ... ok
[INFO] [stdout] test engine::tests::helix_normal_k_moves_a_line_before_it_reaches_history ... ok
[INFO] [stdout] test engine::tests::helix_normal_k_uses_prefix_search ... ok
[INFO] [stdout] test engine::tests::every_submit_event_accepts_an_open_menu::case_2_submit ... ok
[INFO] [stdout] test engine::tests::auto_pairs_wrap_selection_with_opener ... ok
[INFO] [stdout] test engine::tests::helix_normal_right_key_completes_the_hint ... ok
[INFO] [stdout] test engine::tests::failed_history_save_still_returns_the_line_and_stashes_the_error ... ok
[INFO] [stdout] test engine::tests::helix_normal_motion_selection_blocks_hint_completion ... ok
[INFO] [stdout] test engine::tests::every_submit_event_accepts_an_open_menu::case_3_submit_or_newline ... ok
[INFO] [stdout] test engine::tests::helix_normal_k_recalls_history_at_the_first_line ... ok
[INFO] [stdout] test engine::tests::helix_capital_a_appends_past_the_last_grapheme ... ok
[INFO] [stdout] test engine::tests::helix_normal_submit_breaks_from_a_terminator ... ok
[INFO] [stdout] test engine::tests::harness_drives_typed_chars_into_buffer ... ok
[INFO] [stdout] test engine::tests::helix_normal_submit_returns_the_whole_buffer ... ok
[INFO] [stdout] test engine::tests::helix_normal_submit_breaks_at_the_cursor_not_past_it ... ok
[INFO] [stdout] test engine::tests::helix_percent_selects_the_whole_buffer ... ok
[INFO] [stdout] test engine::tests::every_submit_event_passes_an_empty_menu::case_1_enter ... ok
[INFO] [stdout] test engine::tests::every_submit_event_passes_an_empty_menu::case_2_submit ... ok
[INFO] [stdout] test engine::tests::every_submit_event_passes_an_empty_menu::case_3_submit_or_newline ... ok
[INFO] [stdout] test engine::tests::failed_history_save_keeps_the_entry_reachable ... ok
[INFO] [stdout] test engine::tests::helix_normal_submit_keeps_the_grapheme_under_the_cursor ... ok
[INFO] [stdout] test engine::tests::immediately_accept_submits_without_hanging ... ok
[INFO] [stdout] test engine::tests::helix_select_left_walks_one_cell_after_a_wide_selection::case_1_select_all_h ... ok
[INFO] [stdout] test engine::tests::inserted_text_does_not_end_the_word ... ok
[INFO] [stdout] test engine::tests::function_key_switches_through_the_emacs_parser_keep_an_emacs_selection ... ok
[INFO] [stdout] test engine::tests::late_results_never_auto_accept_without_quick_completions ... ok
[INFO] [stdout] test engine::tests::helix_select_left_walks_one_cell_after_a_wide_selection::case_2_select_all_left ... ok
[INFO] [stdout] test engine::tests::helix_select_j_extends_to_the_column_normal_mode_would_land_on ... ok
[INFO] [stdout] test engine::tests::helix_capital_i_inserts_at_the_first_non_blank ... ok
[INFO] [stdout] test engine::tests::helix_tilde_switches_case_and_keeps_the_selection ... ok
[INFO] [stdout] test engine::tests::helix_select_left_walks_one_cell_after_a_wide_selection::case_3_select_line_h ... ok
[INFO] [stdout] test engine::tests::helix_select_extends_with_arrow_keys ... ok
[INFO] [stdout] test engine::tests::idle_callback_builder_pattern ... ok
[INFO] [stdout] test engine::tests::helix_select_left_walks_one_cell_after_a_wide_selection::case_4_select_line_left ... ok
[INFO] [stdout] test engine::tests::helix_select_selection_blocks_hint_completion ... ok
[INFO] [stdout] test engine::tests::menu_accept_chains_with_an_edit_as_a_space_binding ... ok
[INFO] [stdout] test engine::tests::menu_accept_over_a_stale_menu_is_inapplicable_and_leaves_it_open ... ok
[INFO] [stdout] test engine::tests::menu_accept_splices_the_selection_and_closes_the_menu ... ok
[INFO] [stdout] test engine::tests::menu_next_does_not_close_the_menu_over_a_lone_stale_value ... ok
[INFO] [stdout] test engine::tests::mouse_click_moves_cursor_in_regular_mode ... ok
[INFO] [stdout] test engine::tests::mouse_click_osc133_sets_semantic_markers ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_1::quick_1_false::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_1::quick_1_false::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::late_results_splice_the_shared_prefix ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_1::quick_2_true::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_1::quick_2_true::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_2::quick_1_false::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_2::quick_2_true::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_3::quick_1_false::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_2::quick_2_true::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_3::quick_1_false::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::late_results_splice_the_shared_prefix_without_quick_completions ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_3::quick_2_true::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::late_results_with_several_suggestions_only_populate_the_menu ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_3::quick_2_true::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::menu_accept_over_an_empty_menu_is_inapplicable_and_leaves_it_open ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_4::quick_1_false::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::menu_events_invalidate_the_anchor_only_when_they_query::case_2_previous_only_moves ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_4::quick_1_false::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_4::quick_2_true::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_4::quick_2_true::persistent_2_true ... ok
[INFO] [stdout] test engine::tests::menu_accept_under_until_found_yields_to_the_next_event_only_when_inapplicable ... ok
[INFO] [stdout] test engine::tests::menu_accept_without_an_open_menu_is_inapplicable ... ok
[INFO] [stdout] test engine::tests::repaint_request_during_active_read_survives_while_stale_ones_are_dropped ... ok
[INFO] [stdout] test engine::tests::menu_events_invalidate_the_anchor_only_when_they_query::case_1_next_queries_the_completer ... ok
[INFO] [stdout] test engine::tests::repaint_signal_handles_share_one_flag ... ok
[INFO] [stdout] test engine::tests::repaint_signal_is_independent_of_break_signal ... ok
[INFO] [stdout] test engine::tests::noop_moves_only_dismiss_eligible_quick_menus::case_2::quick_1_false::persistent_1_false ... ok
[INFO] [stdout] test engine::tests::quick_completion_accepts_a_lone_suggestion_that_arrives_late ... ok
[INFO] [stdout] test engine::tests::reedline_is_send ... ok
[INFO] [stdout] test engine::tests::repaint_request_collapses_rapid_fire ... ok
[INFO] [stdout] test engine::tests::switch_mode_collapses_a_wide_selection_onto_the_caret::case_1_vi_visual_into_vi_normal ... ok
[INFO] [stdout] test engine::tests::switch_mode_activates_a_standby_machine ... ok
[INFO] [stdout] test engine::tests::switch_mode_collapses_a_wide_selection_onto_the_caret::case_2_vi_visual_into_emacs ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_a_block_mode_keeps_the_selected_text::case_4_backward_into_vi_visual ... ok
[INFO] [stdout] test engine::tests::switch_mode_between_machines_keeps_the_covered_grapheme ... ok
[INFO] [stdout] test engine::tests::repaint_signal_switches_input_loop_to_polling ... ok
[INFO] [stdout] test engine::tests::signal_external_break_pattern_match ... ok
[INFO] [stdout] test engine::tests::repaint_signal_survives_behind_an_arc ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_a_block_mode_keeps_the_selected_text::case_6_backward_into_helix_normal ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_a_block_mode_keeps_the_selected_text::case_2_forward_into_helix_select ... ok
[INFO] [stdout] test engine::tests::switch_mode_collapses_a_wide_selection_onto_the_caret::case_3_helix_select_into_emacs ... ok
[INFO] [stdout] test engine::tests::switch_mode_collapses_a_wide_selection_onto_the_caret::case_4_helix_select_into_helix_insert ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_emacs_keeps_the_cursor_in_place::case_1_vi_insert ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_a_block_mode_keeps_the_selected_text::case_1_forward_into_vi_visual ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_emacs_keeps_the_cursor_in_place::case_5_helix_normal ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_a_block_mode_keeps_the_selected_text::case_3_forward_into_helix_normal ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_emacs_keeps_the_cursor_in_place::case_2_vi_normal ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_emacs_keeps_the_cursor_in_place::case_3_vi_visual ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_emacs_keeps_the_cursor_in_place::case_6_helix_select ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_vi_normal_drops_a_bar_selection::case_1_selected_leftward ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_emacs_keeps_the_cursor_in_place::case_4_helix_insert ... ok
[INFO] [stdout] test engine::tests::test_complete_line_from_history ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_vi_normal_drops_a_bar_selection::case_2_selected_rightward ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_a_block_mode_keeps_the_selected_text::case_5_backward_into_helix_select ... ok
[INFO] [stdout] test engine::tests::test_cursor_position_after_multiline_history_navigation ... ok
[INFO] [stdout] test engine::tests::test_menu_persistence_covers_all_quick_dismissal_commands::case_1 ... ok
[INFO] [stdout] test engine::tests::switch_mode_reaches_a_custom_machine_by_name ... ok
[INFO] [stdout] test engine::tests::test_menu_persistence_covers_all_quick_dismissal_commands::case_2 ... ok
[INFO] [stdout] test engine::tests::test_menu_persistence_while_erasing::case_1 ... ok
[INFO] [stdout] test engine::tests::switch_mode_under_an_open_history_menu_keeps_the_cursor ... ok
[INFO] [stdout] test engine::tests::take_repaint_request_is_false_without_a_handle ... ok
[INFO] [stdout] test engine::tests::test_menu_persistence_while_erasing::case_2 ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_the_active_state_is_inapplicable ... ok
[INFO] [stdout] test engine::tests::switch_mode_lands_in_the_named_state ... ok
[INFO] [stdout] test engine::tests::switch_mode_out_of_vi_visual_keeps_the_covered_grapheme ... ok
[INFO] [stdout] test engine::tests::test_menu_persistence_while_erasing::case_3 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_history::case_2 ... ok
[INFO] [stdout] test engine::tests::test_menu_persistence_while_erasing::case_4 ... ok
[INFO] [stdout] test engine::tests::switch_mode_into_insert_keeps_the_covered_grapheme ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start::case_1 ... ok
[INFO] [stdout] test engine::tests::take_repaint_request_consumes_the_request ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_history::case_3 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline::case_2 ... ok
[INFO] [stdout] test engine::tests::switch_mode_to_an_unregistered_machine_falls_through ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline::case_1 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline::case_3 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start::case_3 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_down_start::case_3 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_history::case_1 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_end_start::case_1 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_start::case_2 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_start::case_3 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_down_start::case_1 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_end_start::case_2 ... ok
[INFO] [stdout] test engine::tests::try_expand_abbreviation_survives_multibyte_char_before_cursor ... ok
[INFO] [stdout] test engine::tests::the_end_of_a_word_returns_enter_to_the_line ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_end_start::case_3 ... ok
[INFO] [stdout] test engine::tests::until_found_copy_selection_status::case_2_local_with_selection ... ok
[INFO] [stdout] test engine::tests::until_found_copy_selection_status::case_1_local_without_selection ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_start::case_1 ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start_multiline_history_up_down_start::case_2 ... ok
[INFO] [stdout] test engine::tests::typing_past_a_completion_then_enter_runs_the_line ... ok
[INFO] [stdout] test engine::tests::until_found_falls_through_down_on_the_line_being_typed ... ok
[INFO] [stdout] test engine::tests::the_completer_is_not_asked_about_a_word_that_has_ended ... ok
[INFO] [stdout] test engine::tests::test_move_to_line_start::case_2 ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_2_up_from_second_line ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_1_up_at_first_line ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_2 ... ok
[INFO] [stdout] test engine::tests::thread_safe ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_1 ... ok
[INFO] [stdout] test engine::tests::thread_safe_with_idle_callback ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_3 ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_3_down_at_last_line ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_7 ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_4 ... ok
[INFO] [stdout] test engine::tests::undo_removes_accepted_history_hint ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_5 ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_4_down_from_first_line ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_6 ... ok
[INFO] [stdout] test engine::tests::test_current_selection ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_5_left_at_buffer_start ... ok
[INFO] [stdout] test engine::tests::until_found_toggles_between_two_switch_targets ... ok
[INFO] [stdout] test engine::tests::up_inside_recalled_multiline_entry_keeps_walking_back ... ok
[INFO] [stdout] test engine::tests::up_is_inapplicable_once_history_is_exhausted ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_6_right_from_buffer_start ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_7_line_start_at_line_start ... ok
[INFO] [stdout] test engine::tests::until_found_horizontal_alias_status::case_8 ... ok
[INFO] [stdout] test engine::tests::until_found_noop_move_preserves_redo::case_1 ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_9_extend_missing_find ... ok
[INFO] [stdout] test engine::tests::until_found_noop_move_preserves_history_traversal ... ok
[INFO] [stdout] test engine::tests::until_found_noop_move_preserves_redo::case_2 ... ok
[INFO] [stdout] test engine::tests::until_found_noop_move_preserves_redo::case_3 ... ok
[INFO] [stdout] test engine::tests::vi_normal_k_uses_prefix_search ... ok
[INFO] [stdout] test engine::tests::until_found_move_status::case_8_line_end_from_line_start ... ok
[INFO] [stdout] test engine::tests::vi_normal_single_line_down_rests_on_last_grapheme ... ok
[INFO] [stdout] test engine::tests::v_then_d_deletes_cursor_grapheme ... ok
[INFO] [stdout] test engine::tests::vi_normal_to_end_rests_on_last_grapheme ... ok
[INFO] [stdout] test engine::tests::vi_visual_navigation_keys_feed_the_operator::case_3_right_then_delete ... ok
[INFO] [stdout] test engine::tests::vi_hl_cross_newline_at_engine_seam ... ok
[INFO] [stdout] test engine::tests::vi_insert_mode_auto_pair_still_pairs_when_not_vetoed ... ok
[INFO] [stdout] test engine::tests::vi_visual_navigation_keys_feed_the_operator::case_1_right_then_d ... ok
[INFO] [stdout] test engine::tests::vi_normal_history_hint_appends_at_buffer_end ... ok
[INFO] [stdout] test engine::tests::vi_insert_mode_auto_pair_routes_through_veto ... ok
[INFO] [stdout] test engine::tests::vi_normal_enter_inserts_newline_at_end_not_mid_word ... ok
[INFO] [stdout] test engine::tests::vi_normal_k_off_end_uses_plain_walk ... ok
[INFO] [stdout] test engine::tests::vi_visual_selection_blocks_hint_completion ... ok
[INFO] [stdout] test engine::tests::vi_normal_down_rests_on_last_grapheme ... ok
[INFO] [stdout] test hinter::default::tests::hint_is_the_rest_of_the_latest_matching_entry::case_3_exact_entry_leaves_nothing ... ok
[INFO] [stdout] test engine::tests::vi_visual_navigation_keys_feed_the_operator::case_2_end_then_d ... ok
[INFO] [stdout] test hinter::default::tests::hint_is_the_rest_of_the_latest_matching_entry::case_4_no_match ... ok
[INFO] [stdout] test hinter::default::tests::hint_is_the_rest_of_the_latest_matching_entry::case_1_rest_of_latest_match ... ok
[INFO] [stdout] test hinter::default::tests::no_hint_below_min_chars ... ok
[INFO] [stdout] test hinter::default::tests::hint_is_the_rest_of_the_latest_matching_entry::case_2_multibyte_prefix ... ok
[INFO] [stdout] test engine::tests::vi_normal_end_of_line_rests_on_last_grapheme ... ok
[INFO] [stdout] test history::base::test::clear_history ... ok
[INFO] [stdout] test engine::tests::until_found_noop_move_that_clears_selection_is_applied ... ok
[INFO] [stdout] test engine::tests::v_extend_left_then_d_deletes_selection ... ok
[INFO] [stdout] test engine::tests::word_chars_decide_where_the_word_ends::case_1_path_separator ... ok
[INFO] [stdout] test engine::tests::with_edit_mode_builder_accepts_custom_helix_mode ... ok
[INFO] [stdout] test history::base::test::count_all ... ok
[INFO] [stdout] test engine::tests::word_chars_decide_where_the_word_ends::case_2_dash ... ok
[INFO] [stdout] test history::base::test::get_latest ... ok
[INFO] [stdout] test history::base::test::search_includes_limit ... ok
[INFO] [stdout] test history::cursor::tests::accessing_empty_history_returns_nothing ... ok
[INFO] [stdout] test engine::tests::word_chars_decide_where_the_word_ends::case_3_space ... ok
[INFO] [stdout] test history::base::test::create_file_backed_history ... ok
[INFO] [stdout] test history::base::test::history_size_zero ... ok
[INFO] [stdout] test hinter::default::tests::accepting_exposes_the_whole_hint_and_its_first_token ... ok
[INFO] [stdout] test history::base::test::get_earliest ... ok
[INFO] [stdout] test history::base::test::search_includes ... ok
[INFO] [stdout] test history::base::test::search_prefix_is_case_sensitive ... ok
[INFO] [stdout] test hinter::default::tests::ansi_coloring_wraps_the_same_hint ... ok
[INFO] [stdout] test history::base::test::clear_history_with_backing_file ... FAILED
[INFO] [stdout] test history::cursor::tests::appends_only_unique ... ok
[INFO] [stdout] test hinter::default::tests::a_failing_history_yields_no_hint_instead_of_a_panic ... ok
[INFO] [stdout] test history::cursor::tests::concurrent_histories_do_not_erase_each_other ... ok
[INFO] [stdout] test history::cursor::tests::going_backwards_in_empty_history_does_not_error_out ... ok
[INFO] [stdout] test history::cursor::tests::going_forward_in_empty_history_does_not_error_out ... ok
[INFO] [stdout] test history::cursor::tests::going_forwards_bottoms_out ... ok
[INFO] [stdout] test history::cursor::tests::prefix_search_ignores_consecutive_equivalent_entries_going_backwards ... ok
[INFO] [stdout] test history::cursor::tests::substring_search_with_empty_value_returns_none ... ok
[INFO] [stdout] test history::cursor::tests::prefix_search_ignores_consecutive_equivalent_entries_going_forwards ... ok
[INFO] [stdout] test history::cursor::tests::persists_newlines_in_entries ... ok
[INFO] [stdout] test history::cursor::tests::prefix_search_returns_to_none ... ok
[INFO] [stdout] test history::cursor::tests::prefix_search_works ... ok
[INFO] [stdout] test menu::columnar_menu::tests::an_open_menu_keeps_showing_stale_values ... ok
[INFO] [stdout] test history::item::tests::test_ignore_all_extra_info_serialization ... ok
[INFO] [stdout] test menu::columnar_menu::tests::an_opening_menu_is_not_visible_until_answered ... ok
[INFO] [stdout] test history::base::test::search_prefix ... ok
[INFO] [stdout] test history::cursor::tests::going_backwards_bottoms_out ... ok
[INFO] [stdout] test history::cursor::tests::prefix_search_bottoms_out ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_fuzzy_matches::shared_prefix_completes_nothing ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_fuzzy_same_prefix_matches::completes_no_shared_prefix ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_prefix_matches::empty_completes_prefix ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_prefix_matches::full_prefix_completes_nothing ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_prefix_matches::partial_completes_shared_prefix ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_with_quotes::partial_completes_case_insensitive ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_with_quotes::partial_completes_prefix_with_backtick ... ok
[INFO] [stdout] test menu::columnar_menu::tests::pending_completion_draws_nothing_instead_of_no_records ... ok
[INFO] [stdout] test menu::columnar_menu::tests::movement_on_an_awaiting_empty_menu_is_a_noop ... ok
[INFO] [stdout] test history::cursor::tests::substring_search_works ... ok
[INFO] [stdout] test menu::columnar_menu::tests::partial_completion_fuzzy_matches::no_shared_prefix_completes_nothing ... ok
[INFO] [stdout] test menu::columnar_menu::tests::re_activating_forgets_the_previous_lines_answer ... ok
[INFO] [stdout] test menu::columnar_menu::tests::layout_recomputes_without_a_menu_event ... ok
[INFO] [stdout] test menu::columnar_menu::tests::stale_pending_span_is_not_spliced ... ok
[INFO] [stdout] test menu::columnar_menu::tests::stale_result_with_mismatched_origin_is_not_spliced ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_horizontal_menu_selection_position ... ok
[INFO] [stdout] test history::cursor::tests::truncates_file_to_capacity ... ok
[INFO] [stdout] test history::cursor::tests::truncates_too_large_file ... ok
[INFO] [stdout] test history::item::tests::test_custom_extra_info_serialization ... ok
[INFO] [stdout] test menu::columnar_menu::tests::default_completer_partial_completion_matches_demo_example ... ok
[INFO] [stdout] test history::item::tests::test_history_item_with_custom_extra_info ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_menu_create_string ... ok
[INFO] [stdout] test history::item::tests::test_history_item_with_default_extra_info ... ok
[INFO] [stdout] test history::cursor::tests::writes_to_new_file ... ok
[INFO] [stdout] test menu::columnar_menu::tests::grid_dimensions_stay_nonzero_while_awaiting ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_menu_replace_backtick ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_menu_create_string_long_unicode_string ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_vertical_menu_selection_position ... ok
[INFO] [stdout] test history::cursor::tests::concurrent_histories_are_threadsafe ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_menu_create_string_starting_with_multibyte_char ... ok
[INFO] [stdout] test menu::description_menu::tests::zero_width_terminal_does_not_panic_the_layout ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_menu_create_value_string ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_menu_create_value_string_long_unicode_string ... ok
[INFO] [stdout] test menu::columnar_menu::tests::test_small_menu_selection_position ... ok
[INFO] [stdout] test menu::columnar_menu::tests::zero_configured_columns_does_not_panic_the_layout ... ok
[INFO] [stdout] test menu::columnar_menu::tests::zero_width_terminal_does_not_panic_the_layout ... ok
[INFO] [stdout] test menu::ide_menu::tests::partial_completion_prefix_matches::empty_completes_prefix ... ok
[INFO] [stdout] test menu::ide_menu::tests::partial_completion_prefix_matches::full_prefix_completes_nothing ... ok
[INFO] [stdout] test menu::description_menu::tests::zero_configured_columns_does_not_panic_the_layout ... ok
[INFO] [stdout] test menu::ide_menu::tests::pending_update_does_not_move_the_menu ... ok
[INFO] [stdout] test menu::ide_menu::tests::partial_completion_fuzzy_same_prefix_matches::completes_no_shared_prefix ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_02 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_06 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_07 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_08 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_09 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_10 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_11 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_1 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_2 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_menu_create_value_string_starting_with_multibyte_char ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_4 ... ok
[INFO] [stdout] test menu::ide_menu::tests::partial_completion_fuzzy_matches::no_shared_prefix_completes_nothing ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_menu_replace_backtick ... ok
[INFO] [stdout] test menu::list_menu::tests::description_after_formats_without_ansi ... ok
[INFO] [stdout] test menu::list_menu::tests::description_after_resets_style_after_value ... ok
[INFO] [stdout] test menu::list_menu::tests::description_before_formats_without_ansi ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_5 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_6 ... ok
[INFO] [stdout] test menu::ide_menu::tests::partial_completion_fuzzy_matches::shared_prefix_completes_nothing ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_3 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_01 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_regression_panic_on_long_item ... ok
[INFO] [stdout] test menu::ide_menu::tests::partial_completion_prefix_matches::partial_completes_shared_prefix ... ok
[INFO] [stdout] test menu::list_menu::tests::description_before_resets_style_before_value ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_truncate_list_string::case_7 ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_04 ... ok
[INFO] [stdout] test menu::list_menu::tests::number_of_max_lines_test ... ok
[INFO] [stdout] test menu::list_menu::tests::number_one_line_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::completion_point_is_untouched_for_bar_cursors ... ok
[INFO] [stdout] test menu::list_menu::tests::lines_with_wrap_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::completion_covers_the_caret_grapheme::case_3_multibyte ... ok
[INFO] [stdout] test menu::menu_functions::tests::common_prefix_falls_back_to_derivation_without_a_completer_supplied_partial ... ok
[INFO] [stdout] test menu::menu_functions::tests::completion_covers_the_caret_grapheme::case_1_helix_normal ... ok
[INFO] [stdout] test menu::menu_functions::tests::completion_covers_the_caret_grapheme::case_2_vi_normal ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_empty_buffer_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_row_double_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_01_inserted_word ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_02_appended ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_03_new_shorter ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_row_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_07_empty_old ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_04_inserted_inside_parens ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_05_tail_differs ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_11_multibyte_prefix ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_06_inserted_words ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_08_nothing_shared ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_09_equal ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_10_multibyte_diff ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_2 ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_12_repeat ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_13_repeat_twice ... ok
[INFO] [stdout] test menu::menu_functions::tests::style_fuzzy_suggestion ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_1 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_3 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_4 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_5 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_6 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_7 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_completer_input::case_8 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_derive_common_prefix::case_1_ascii ... ok
[INFO] [stdout] test menu::menu_functions::tests::string_difference_is_the_text_typed_after_the_prefix::case_14_old_is_prefix_and_reappears ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_03 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_derive_common_prefix::case_2_non_ascii ... ok
[INFO] [stdout] test menu::ide_menu::tests::test_split_string::case_05 ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_negative_direction ... ok
[INFO] [stdout] test menu::list_menu::tests::number_of_lines_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::style_fuzzy_suggestion_out_of_bounds ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_row_other_marker_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_derive_common_prefix::case_5_first_suggestion_longest ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_2_unterminated ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_4_no_args_reset ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_5_empty_reset_with_args_afterwards ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_6_empty_reset_without_args_afterwards ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_7_zero_reset_without_args_afterwards ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_replace_in_buffer::case_1 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_replace_in_buffer_with_output_mode::case_1_full_buffer ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_replace_in_buffer::case_2 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_replace_in_buffer_with_output_mode::case_2_extend_to_end ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_replace_in_buffer::case_3 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_01_no_ansi_shorter ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_02_with_ansi_shorter ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_06_no_ansi_nothing_left ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_07_trunc_with_short_segments ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_04_no_ansi_result_thinner_than_max ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_05_with_ansi_exact_width ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_08_trunc_with_long_segment ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_10_cut_on_a_segment_boundary_keeps_its_escape ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_derive_common_prefix::case_3_unsorted ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_derive_common_prefix::case_4_should_be_case_sensitive ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_1_plain ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_3_invalid ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_parse_ansi::case_8_multiple ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_03_no_ansi_one_longer ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_09_style_survives_the_cut ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_row_empty_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_row_fake_indicator_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_16_reset_inside_the_kept_part ... ok
[INFO] [stdout] test menu::menu_functions::tests::parse_row_no_number_test ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_11_earlier_segment_fits_only_without_dots ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_19_max_width_zero ... ok
[INFO] [stdout] test menu::tests::test_effective_input_mode::case_1_bool_only_false ... ok
[INFO] [stdout] test menu::tests::test_effective_input_mode::case_3_enum_overrides_false_bool ... ok
[INFO] [stdout] test menu::tests::test_effective_input_mode::case_5_full_buffer ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_12_cut_lands_in_the_first_of_two_without_dots ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_13_overflow_segment_has_no_room_left ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_14_wide_grapheme_starts_the_overflow_segment ... ok
[INFO] [stdout] test painting::painter::tests::a_large_buffer_paint_pins_the_cursor_too::case_1 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_15_empty_text_segment_between_escapes ... ok
[INFO] [stdout] test painting::painter::tests::a_large_buffer_paint_pins_the_cursor_too::case_3 ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_1 ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_5 ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_3 ... ok
[INFO] [stdout] test painting::painter::tests::a_large_buffer_paint_pins_the_cursor_too::case_4 ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_6 ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_4 ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_18_max_width_below_the_suffix ... ok
[INFO] [stdout] test painting::painter::tests::a_large_buffer_right_prompt_paint_pins_the_cursor_too ... ok
[INFO] [stdout] test menu::tests::test_effective_input_mode::case_4_enum_overrides_true_bool ... ok
[INFO] [stdout] test painting::painter::tests::a_large_buffer_keeps_the_prompts_trailing_newline ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_that_fills_the_screen_does_not_move_off_it::case_2 ... ok
[INFO] [stdout] test painting::painter::tests::a_large_buffer_paint_pins_the_cursor_too::case_2 ... ok
[INFO] [stdout] test menu::tests::only_a_host_completer_can_have_scrolled_the_terminal ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_2 ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_that_fills_the_screen_does_not_move_off_it::case_3 ... ok
[INFO] [stdout] test menu::tests::test_effective_input_mode::case_2_bool_only_true ... ok
[INFO] [stdout] test painting::painter::tests::a_right_prompt_paint_pins_the_cursor_too ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_that_fills_the_screen_does_not_move_off_it::case_1 ... ok
[INFO] [stdout] test painting::painter::tests::crossterm_defaults_were_the_bright_palette_entries ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_7 ... ok
[INFO] [stdout] test painting::painter::tests::default_color_emits_explicit_foreground_reset ... ok
[INFO] [stdout] test menu::menu_functions::tests::test_truncate_with_ansi::case_17_reset_after_the_cut ... ok
[INFO] [stdout] test painting::painter::tests::exit_erases_below_the_cursor_but_keeps_the_command::case_1_menu_is_erased ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_8 ... ok
[INFO] [stdout] test painting::painter::tests::default_prompt_colors_emit_expected_sgr ... ok
[INFO] [stdout] test painting::painter::tests::large_buffer_path_emits_prompt_colors ... ok
[INFO] [stdout] test painting::painter::tests::no_prompt_colors_when_ansi_coloring_disabled ... ok
[INFO] [stdout] test painting::painter::tests::non_dumb_term_delegates_cursor_position_query ... ok
[INFO] [stdout] test painting::painter::tests::print_menu_at_row_0_does_not_erase_from_home_cell ... ok
[INFO] [stdout] test painting::painter::tests::a_paint_pins_the_cursor_without_disturbing_the_screen::case_9 ... ok
[INFO] [stdout] test painting::painter::tests::test_a_paint_without_a_right_prompt_clears_the_stored_one ... ok
[INFO] [stdout] test painting::painter::tests::test_accurate_winsize_paints_unchanged ... ok
[INFO] [stdout] test painting::painter::tests::test_anchor_prompt_term_dumb_assumes_bottom_without_blank_line ... ok
[INFO] [stdout] test painting::painter::tests::test_anchor_prompt_without_answer_and_no_row_assumes_bottom ... ok
[INFO] [stdout] test painting::painter::tests::test_anchor_prompt_without_answer_assumes_bottom_over_last_known_row ... ok
[INFO] [stdout] test painting::painter::tests::term_dumb_small_buffer_emits_no_save_or_restore_position ... ok
[INFO] [stdout] test painting::painter::tests::exit_erases_below_the_cursor_but_keeps_the_command::case_3_after_cursor_text_survives ... ok
[INFO] [stdout] test painting::painter::tests::exit_erases_below_the_cursor_but_keeps_the_command::case_4_nothing_below_the_cursor_at_all ... ok
[INFO] [stdout] test painting::painter::tests::print_menu_none_start_row_treated_as_row_0 ... ok
[INFO] [stdout] test painting::painter::tests::exit_erases_below_the_cursor_but_keeps_the_command::case_2_hint_is_erased ... ok
[INFO] [stdout] test painting::painter::tests::test_initialize_prompt_position_grows_to_fit_the_cursor::case_1_under_reported ... ok
[INFO] [stdout] test painting::painter::tests::test_initialize_prompt_position_grows_to_fit_the_cursor::case_2_unreported ... ok
[INFO] [stdout] test painting::painter::tests::repaint_at_row_0_does_not_erase_from_home_cell ... ok
[INFO] [stdout] test painting::painter::tests::test_invalidate_keeps_a_resized_cursor_row ... ok
[INFO] [stdout] test painting::painter::tests::repaint_below_row_0_still_clears_from_anchor ... ok
[INFO] [stdout] test painting::painter::tests::test_large_buffer_skips_lines ... ok
[INFO] [stdout] test painting::painter::tests::term_dumb_large_buffer_emits_no_save_or_restore_position ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_large_buffer_no_scroll_keeps_right_prompt ... ok
[INFO] [stdout] test painting::painter::tests::term_dumb_skips_cursor_position_query ... ok
[INFO] [stdout] test painting::painter::tests::test_click_in_menu_ignored ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_first_buffer_col_with_multiline_prompt ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_right_prompt_hidden_for_term_dumb ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_right_prompt_suppressed_in_large_buffer ... ok
[INFO] [stdout] test painting::painter::tests::test_measured_cursor_row_raises_believed_screen_height::case_1_serial_console_assumed_24_rows ... ok
[INFO] [stdout] test painting::painter::tests::test_measured_cursor_row_raises_believed_screen_height::case_6_last_representable_row ... ok
[INFO] [stdout] test painting::painter::tests::test_multiline_mapping ... ok
[INFO] [stdout] test painting::painter::tests::test_prompt_does_not_climb_after_a_resize_that_under_reports ... ok
[INFO] [stdout] test painting::painter::tests::test_prompt_does_not_climb_when_winsize_under_reports ... ok
[INFO] [stdout] test painting::painter::tests::test_click_in_right_prompt_ignored ... ok
[INFO] [stdout] test painting::painter::tests::test_prompt_marker_order_in_small_buffer ... ok
[INFO] [stdout] test painting::painter::tests::test_clicks_past_eol_clamps ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_right_prompt_hidden_when_input_too_wide ... ok
[INFO] [stdout] test painting::painter::tests::test_resolve_resize_leaves_a_prompt_row_alone::case_1_unverified ... ok
[INFO] [stdout] test painting::painter::tests::test_growth_fits_the_anchor_not_just_the_measured_row ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_right_prompt_rendered ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_small_buffer_defaults ... ok
[INFO] [stdout] test painting::painter::tests::test_repaint_after_resize_anchors_above_the_cursor ... ok
[INFO] [stdout] test painting::painter::tests::test_resolve_resize_moves_up_to_the_prompt_start::case_2_cursor_two_rows_below ... ok
[INFO] [stdout] test painting::painter::tests::test_resolve_resize_moves_up_to_the_prompt_start::case_1_cursor_on_the_prompt_row ... ok
[INFO] [stdout] test painting::painter::tests::test_resolve_resize_moves_up_to_the_prompt_start::case_3_prompt_taller_than_the_rows_above ... ok
[INFO] [stdout] test painting::painter::tests::test_screen_to_buffer_simple ... ok
[INFO] [stdout] test painting::painter::tests::test_select_existing_prompt ... ok
[INFO] [stdout] test painting::painter::tests::test_resolve_resize_leaves_a_prompt_row_alone::case_2_stale ... ok
[INFO] [stdout] test painting::painter::tests::test_select_new_prompt_with_no_state_no_output ... ok
[INFO] [stdout] test painting::painter::tests::test_growth_follows_a_cursor_below_the_cached_anchor ... ok
[INFO] [stdout] test painting::painter::tests::test_resolve_resize_leaves_a_prompt_row_alone::case_3_verified ... ok
[INFO] [stdout] test painting::painter::tests::test_measured_cursor_row_raises_believed_screen_height::case_2_stale_winsize ... ok
[INFO] [stdout] test painting::painter::tests::test_select_prompt_row_does_not_reuse_when_flush_at_bottom ... ok
[INFO] [stdout] test painting::painter::tests::test_growth_is_visible_to_the_rest_of_the_same_paint ... ok
[INFO] [stdout] test painting::painter::tests::test_select_prompt_row_reuses_flush_prompt_when_cursor_is_unmoved ... ok
[INFO] [stdout] test painting::painter::tests::test_select_prompt_row_ignores_cursor_when_not_flush ... ok
[INFO] [stdout] test painting::painter::tests::test_layout_large_buffer_extra_rows ... ok
[INFO] [stdout] test painting::painter::tests::test_skip_lines_no_newline ... ok
[INFO] [stdout] test painting::painter::tests::test_measured_cursor_row_raises_believed_screen_height::case_3_accurate_size_is_untouched ... ok
[INFO] [stdout] test painting::painter::tests::test_state_before_suspension_records_flush_at_bottom::case_2_reaches_last_row ... ok
[INFO] [stdout] test painting::painter::tests::test_select_prompt_row_does_not_reuse_when_cursor_left_the_range ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_01 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_02 ... ok
[INFO] [stdout] test painting::painter::tests::test_state_before_suspension_records_flush_at_bottom::case_3_overshoots_last_row ... ok
[INFO] [stdout] test painting::painter::tests::test_the_exit_erase_keeps_the_right_prompt ... ok
[INFO] [stdout] test painting::painter::tests::test_state_before_suspension_records_no_cursor_without_terminal ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_04 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_05 ... ok
[INFO] [stdout] test painting::painter::tests::test_vi_visual_draws_its_own_cursor_shape::case_1_its_own_shape ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_06 ... ok
[INFO] [stdout] test painting::painter::tests::test_vi_visual_draws_its_own_cursor_shape::case_2_unset_follows_vi_normal ... ok
[INFO] [stdout] test painting::painter::tests::test_select_prompt_row_does_not_reuse_flush_prompt_when_cursor_moved ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_11 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_03 ... ok
[INFO] [stdout] test painting::painter::tests::test_wrapped_line_mapping ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_12 ... ok
[INFO] [stdout] test painting::painter::tests::test_state_before_suspension_records_flush_at_bottom::case_1_well_above_bottom ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_14 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_4 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_07 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_3 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_09 ... ok
[INFO] [stdout] test painting::painter::tests::test_measured_cursor_row_raises_believed_screen_height::case_4_cursor_on_the_real_last_row ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_10 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_1 ... ok
[INFO] [stdout] test painting::painter::tests::test_measured_cursor_row_raises_believed_screen_height::case_5_height_never_initialized ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_13 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_2 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_5 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_7 ... ok
[INFO] [stdout] test painting::painter::tests::test_select_new_prompt_with_no_state_but_output ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_8 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_prompt_height::case_1_empty_prompt_still_owns_its_row ... ok
[INFO] [stdout] test painting::painter::tests::test_skip_lines ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_prompt_height::case_3_newline_in_the_prompt ... ok
[INFO] [stdout] test painting::painter::tests::test_skip_lines_with_limit ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_required_lines_covers_the_cursor_row::case_1 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_required_lines_covers_the_cursor_row::case_2 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_required_lines_covers_the_cursor_row::case_3 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_required_lines_covers_the_cursor_row::case_4 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_distance_from_prompt::case_6 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_08 ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_prompt_height::case_2_single_row ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_required_lines_covers_the_cursor_row::case_5 ... ok
[INFO] [stdout] test painting::styled_text::test::an_empty_chunk_is_not_given_a_cell ... ok
[INFO] [stdout] test painting::styled_text::test::a_trailing_terminator_in_a_wider_chunk_gets_a_cell ... ok
[INFO] [stdout] test painting::styled_text::test::a_terminator_inside_a_wider_chunk_gets_a_cell_too ... ok
[INFO] [stdout] test painting::styled_text::test::a_trailing_carriage_return_is_not_a_terminator ... ok
[INFO] [stdout] test painting::styled_text::test::a_crlf_terminator_paints_a_cell_and_drops_the_carriage_return ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_prompt_height::case_4_wrapped ... ok
[INFO] [stdout] test painting::prompt_lines::tests::test_cursor_pos::case_15 ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_1_reverse ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_7_plain ... ok
[INFO] [stdout] test painting::styled_text::test::an_unstyled_wider_terminator_chunk_gains_nothing ... ok
[INFO] [stdout] test painting::styled_text::test::regression_style_range_cargo_run ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_from_second_to_last ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_last_letter ... ok
[INFO] [stdout] test painting::styled_text::test::an_unstyled_terminator_chunk_gains_nothing ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_6_bold ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_5_foreground ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_2_background ... ok
[INFO] [stdout] test painting::styled_text::test::selecting_only_the_newline_paints_a_cell_end_to_end ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_02_empty_range_on_boundary ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_05_ends_on_boundary ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_06_exactly_one_pair ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_07_whole_buffer ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_03_empty_range_at_zero ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_04_starts_on_boundary ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_09_entirely_past_the_end ... ok
[INFO] [stdout] test painting::styled_text::test::test_render_multiline_without_semantic_markers ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_update_over_boundary ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_update_over_part ... ok
[INFO] [stdout] test painting::styled_text::test::test_render_multiline_with_semantic_markers ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_complete_update_one_part ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_inside_a_multibyte_char_does_not_panic::case_2_start_inside_a_char ... ok
[INFO] [stdout] test painting::utils::test::coerce_crlf_preserves_leading_replacement_before_later_newline ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_ignores_zero_width_input::case_1 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_02 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_03 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_05 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_06 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_07 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_08 ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_4_strikethrough ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_01 ... ok
[INFO] [stdout] test painting::styled_text::test::lone_terminator_chunk_gets_a_painted_cell ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_01 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_02 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_03 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_05 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_06 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_07 ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_inside_a_multibyte_char_does_not_panic::case_3_both_inside_chars ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_10 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_04 ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_10_spans_all_three ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_partial_update_one_part ... ok
[INFO] [stdout] test painting::styled_text::test::test_render_single_line_no_markers_emitted ... ok
[INFO] [stdout] test painting::styled_text::test::only_a_style_that_shows_on_a_blank_cell_gets_one::case_3_underline ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_01_empty_range_mid_pair ... ok
[INFO] [stdout] test painting::styled_text::test::the_cell_survives_the_split_at_the_caret ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_08_runs_past_the_end ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_ignores_zero_width_input::case_2 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_04 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_narrow_graphemes::case_09 ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_inside_a_multibyte_char_does_not_panic::case_1_end_inside_a_char ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_10 ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_basic::case_3 ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_5 ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_4 ... ok
[INFO] [stdout] test painting::styled_text::test::style_range_segmentation::case_11_reversed_bounds_are_swapped ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_zero_columns_does_not_panic ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_3 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_lays_pieces_end_to_end ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_01 ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_1 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_04 ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_basic::case_2 ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_basic::case_6 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_05 ... ok
[INFO] [stdout] test painting::utils::test::resolve_wrap_saturates_at_the_last_row ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_basic::case_5 ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_basic::case_4 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_02 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_07 ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_6 ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_7 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_03 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_08 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_06 ... ok
[INFO] [stdout] test prompt::base::test::each_helix_mode_gets_its_own_discriminant ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_10 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_12 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_09 ... ok
[INFO] [stdout] test painting::utils::test::wrap_position_reports_the_landing_column::case_11 ... ok
[INFO] [stdout] test prompt::base::test::each_vi_mode_gets_its_own_discriminant ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_08 ... ok
[INFO] [stdout] test painting::utils::test::deferred_wrap_row_on_wide_graphemes::case_09 ... ok
[INFO] [stdout] test painting::utils::test::estimate_single_line_wraps_basic::case_1 ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_6_helix_insert ... ok
[INFO] [stdout] test prompt::base::test::selection_extent_maps_vi_to_cover_landing_and_bar_modes_to_span ... ok
[INFO] [stdout] test painting::utils::test::test_coerce_crlf::case_2 ... ok
[INFO] [stdout] test prompt::base::test::helix_discriminants_round_trip_through_their_names ... ok
[INFO] [stdout] test prompt::default::tests::mode_indicators_are_two_columns_of_ascii::case_3_normal ... ok
[INFO] [stdout] test prompt::default::tests::shared_prefix_is_not_collapsed ... ok
[INFO] [stdout] test prompt::default::tests::mode_indicators_are_two_columns_of_ascii::case_4_select ... ok
[INFO] [stdout] test prompt::default::tests::the_multiline_indicator_is_wider_than_a_mode ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_click_events_command_input_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_click_events_secondary_prompt_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_command_input_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_primary_prompt_start ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_1_default ... ok
[INFO] [stdout] test prompt::default::tests::cwd_equal_to_home_is_just_tilde ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_9_custom ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_2_emacs ... ok
[INFO] [stdout] test prompt::default::tests::home_is_collapsed_to_tilde ... ok
[INFO] [stdout] test prompt::default::tests::mode_indicators_are_two_columns_of_ascii::case_2_insert ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_3_vi_insert ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_4_vi_normal ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_5_vi_visual ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_click_events_primary_prompt_start ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_8_helix_select ... ok
[INFO] [stdout] test prompt::default::tests::indicator_table_splits_the_modal_states::case_7_helix_normal ... ok
[INFO] [stdout] test prompt::default::tests::mode_indicators_are_two_columns_of_ascii::case_1_base ... ok
[INFO] [stdout] test prompt::default::tests::missing_home_leaves_path_untouched ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc633_command_input_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_secondary_prompt_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc633_primary_prompt_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc633_secondary_prompt_start ... ok
[INFO] [stdout] test utils::environment::tests::unset_term_is_not_dumb ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc633_right_prompt_start ... ok
[INFO] [stdout] test utils::text_manipulation::test::remove_last_char_works_with_normal_string ... ok
[INFO] [stdout] test utils::text_manipulation::test::remove_last_char_works_with_empty_string ... ok
[INFO] [stdout] test utils::text_manipulation::test::remove_last_char_works_with_string_containing_emojis ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_click_events_right_prompt_start ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_osc133_right_prompt_start ... ok
[INFO] [stdout] test validator::default::test::test_incomplete_brackets::case_2 ... ok
[INFO] [stdout] test validator::default::test::test_incomplete_brackets::case_1 ... ok
[INFO] [stdout] test validator::default::test::test_incomplete_brackets::case_3 ... ok
[INFO] [stdout] test validator::default::test::test_incomplete_brackets::case_4 ... ok
[INFO] [stdout] test terminal_extensions::semantic_prompt::tests::test_string_terminator_is_st_not_bel ... ok
[INFO] [stdout] test utils::environment::tests::regular_term_is_not_dumb ... ok
[INFO] [stdout] test utils::environment::tests::term_dumb_is_dumb ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- history::base::test::clear_history_with_backing_file stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'history::base::test::clear_history_with_backing_file' (2864) panicked at src/history/base.rs:446:92:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: ReedlineError(IOError(Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }))
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x630f2d3e9871 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x630f2d4008fa - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x630f2d3ee43c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x630f2d3c3716 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x630f2d3e09a9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x630f2d357b80 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x630f2d3e0b62 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x630f2d3c37c2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x630f2d3bc229 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x630f2d3c43cd - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x630f2d40102c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x630f2d400e02 - core[a373ad73a504971]::result::unwrap_failed
[INFO] [stdout]   12:     0x630f2d283335 - reedline[f096bc27ee5c40e7]::history::base::test::clear_history_with_backing_file::open_history
[INFO] [stdout]   13:     0x630f2d288c29 - <reedline[f096bc27ee5c40e7]::history::base::test::clear_history_with_backing_file::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x630f2d34afcb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   15:     0x630f2d3581a5 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   16:     0x630f2d351a94 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x630f2d35b232 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x630f2d3e860f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x7614c8f23dfa - <unknown>
[INFO] [stdout]   20:     0x7614c8fb73d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     history::base::test::clear_history_with_backing_file
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1876 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.34s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4", kill_on_drop: false }`
[INFO] [stdout] a5b8098bab697cc47180c8e2a69ddcd8a116ea0e7d8cdab589f21ce002be1ce4
