[INFO] fetching crate rush-sh 0.5.8...
[INFO] testing rush-sh-0.5.8 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-7
[INFO] extracting crate rush-sh 0.5.8 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate rush-sh 0.5.8
[INFO] finished tweaking crates.io crate rush-sh 0.5.8
[INFO] tweaked toml for crates.io crate rush-sh 0.5.8 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rush-sh 0.5.8 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rush-sh 0.5.8 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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e8b9e5a8584557eb6e2d464050783d12b4ef4bd2468a5177aa729a0366468c01
[INFO] running `Command { std: "docker" "start" "-a" "e8b9e5a8584557eb6e2d464050783d12b4ef4bd2468a5177aa729a0366468c01", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e8b9e5a8584557eb6e2d464050783d12b4ef4bd2468a5177aa729a0366468c01", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e8b9e5a8584557eb6e2d464050783d12b4ef4bd2468a5177aa729a0366468c01", kill_on_drop: false }`
[INFO] [stdout] e8b9e5a8584557eb6e2d464050783d12b4ef4bd2468a5177aa729a0366468c01
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a93978c6b1a8011ef958b76b7f4eddf4d9de6b441b2e757f93bea956c946377c
[INFO] running `Command { std: "docker" "start" "-a" "a93978c6b1a8011ef958b76b7f4eddf4d9de6b441b2e757f93bea956c946377c", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling unicode-width v0.2.1
[INFO] [stderr]    Compiling anstream v0.6.20
[INFO] [stderr]    Compiling home v0.5.11
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling clap_builder v4.5.48
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling rustyline v17.0.2
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling clap v4.5.48
[INFO] [stderr]    Compiling rush-sh v0.5.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.25s
[INFO] running `Command { std: "docker" "inspect" "a93978c6b1a8011ef958b76b7f4eddf4d9de6b441b2e757f93bea956c946377c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a93978c6b1a8011ef958b76b7f4eddf4d9de6b441b2e757f93bea956c946377c", kill_on_drop: false }`
[INFO] [stdout] a93978c6b1a8011ef958b76b7f4eddf4d9de6b441b2e757f93bea956c946377c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d6c3af988e0de4d43ef8b87407b041fb449546a0d97f8c76850889f898f9db11
[INFO] running `Command { std: "docker" "start" "-a" "d6c3af988e0de4d43ef8b87407b041fb449546a0d97f8c76850889f898f9db11", kill_on_drop: false }`
[INFO] [stderr]    Compiling rush-sh v0.5.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.21s
[INFO] running `Command { std: "docker" "inspect" "d6c3af988e0de4d43ef8b87407b041fb449546a0d97f8c76850889f898f9db11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d6c3af988e0de4d43ef8b87407b041fb449546a0d97f8c76850889f898f9db11", kill_on_drop: false }`
[INFO] [stdout] d6c3af988e0de4d43ef8b87407b041fb449546a0d97f8c76850889f898f9db11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2ba1e3c202ea4c4abd31d3c967fcc40bd07bb76c5d03badb30a812d965eda680
[INFO] running `Command { std: "docker" "start" "-a" "2ba1e3c202ea4c4abd31d3c967fcc40bd07bb76c5d03badb30a812d965eda680", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rush_sh-c425ffff09cf27ba)
[INFO] [stdout] 
[INFO] [stdout] running 301 tests
[INFO] [stdout] test arithmetic::tests::test_evaluate_comparison ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_variables ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_simple ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_undefined_variable ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_variable ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_with_precedence ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_operators ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_parentheses ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_simple_numbers ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_empty ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_mixed ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_no_braces ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_word_without_braces ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_char_range ... ok
[INFO] [stdout] test brace_expansion::tests::test_parse_brace_content_simple_nested ... ok
[INFO] [stdout] test brace_expansion::tests::test_split_top_level_simple ... ok
[INFO] [stdout] test brace_expansion::tests::test_split_top_level_nested_braces ... ok
[INFO] [stdout] test brace_expansion::tests::test_parse_brace_content_nested ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_set ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_list ... ok
[INFO] [stdout] test builtins::builtin_cd::tests::test_cd_no_arguments ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_nested ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_show ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_simple ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_mixed_tokens ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_list_functions ... ok
[INFO] [stdout] test builtins::builtin_dirs::tests::test_execute_builtin_dirs ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_nonexistent_function ... ok
[INFO] [stdout] test builtins::builtin_cd::tests::test_cd_to_invalid_directory ... ok
[INFO] [stdout] test builtins::builtin_exit::tests::test_exit_builtin_run ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_numeric_range ... ok
[INFO] [stdout] test builtins::builtin_export::tests::test_export_builtin_export_existing ... ok
[INFO] [stdout] test brace_expansion::tests::test_split_top_level_with_braces ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_addition ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_with_ranges ... ok
[INFO] [stdout] test builtins::builtin_export::tests::test_export_builtin_list ... ok
[INFO] [stdout] test builtins::builtin_export::tests::test_export_builtin_set ... ok
[INFO] [stdout] test builtins::builtin_help::tests::test_help_builtin_run ... ok
[INFO] [stdout] test builtins::builtin_set_color_scheme::tests::test_set_color_scheme_builtin_dark ... ok
[INFO] [stdout] test builtins::builtin_popd::tests::test_execute_builtin_popd ... ok
[INFO] [stdout] test builtins::builtin_set_color_scheme::tests::test_set_color_scheme_builtin_default ... ok
[INFO] [stdout] test builtins::builtin_set_condensed::tests::test_set_condensed_builtin_enable ... ok
[INFO] [stdout] test builtins::builtin_set_condensed::tests::test_set_condensed_builtin_disable ... ok
[INFO] [stdout] test builtins::builtin_set_colors::tests::test_set_colors_builtin_disable ... ok
[INFO] [stdout] test builtins::builtin_pwd::tests::test_pwd_builtin_run ... ok
[INFO] [stdout] test builtins::builtin_set_condensed::tests::test_set_condensed_builtin_status ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_invalid_number ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_custom_count ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_default ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_no_args ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_eq_not_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_f_option_directory ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_division_by_zero ... ok
[INFO] [stdout] test builtins::builtin_cd::tests::test_cd_to_valid_directory ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_invalid_option ... ok
[INFO] [stdout] test builtins::builtin_env::tests::test_env_builtin_run ... ok
[INFO] [stdout] test builtins::builtin_set_colors::tests::test_set_colors_builtin_enable ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ge_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ge_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_eq_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_d_option_directory ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ge_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_gt_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_gt_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_invalid_option ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_le_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_le_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_le_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_lt_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_lt_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_n_option_empty_string ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_n_option_missing_argument ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ne_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ne_not_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_n_option_non_empty_string ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_no_arguments ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_numeric_invalid_right_operand ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_test_builtin_description ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_test_builtin_name ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_numeric_invalid_left_operand ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_numeric_invalid_operator ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_z_option_empty_string ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_z_option_missing_argument ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_is_trappable ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_normalize_signal_name ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_list_signals ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_display_all ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_multiple_signals ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_reset_handler ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_empty_action ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_z_option_non_empty_string ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_invalid_signal ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_set_handler ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_signal_numbers ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_uncatchable_signal ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_signal_to_name ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_all_no_aliases ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_all ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_all_too_many_args ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_not_found ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_too_many_args ... ok
[INFO] [stdout] test builtins::builtin_unset::tests::test_unset_builtin_unset_variable ... ok
[INFO] [stdout] test builtins::builtin_unset::tests::test_unset_builtin_no_args ... ok
[INFO] [stdout] test builtins::tests::test_execute_builtin_unknown ... ok
[INFO] [stdout] test builtins::tests::test_get_builtin_commands ... ok
[INFO] [stdout] test builtins::tests::test_is_builtin ... ok
[INFO] [stdout] test completion::tests::test_builtin_commands ... ok
[INFO] [stdout] test completion::tests::test_completion_context_update ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_no_args ... ok
[INFO] [stdout] test completion::tests::test_is_first_word ... ok
[INFO] [stdout] test completion::tests::test_multi_match_completion_cycling ... ok
[INFO] [stdout] test completion::tests::test_multi_match_completion_empty_candidates ... ok
[INFO] [stdout] test builtins::builtin_pushd::tests::test_execute_builtin_pushd ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_show_function ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_absolute ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_show_not_found ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_with_parentheses ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_e_option_non_existing_file ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_home ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_with_directory ... ok
[INFO] [stdout] test completion::tests::test_repeated_completion_detection ... ok
[INFO] [stdout] test completion::tests::test_rush_candidate_display ... ok
[INFO] [stdout] test executor::tests::test_execute_empty_pipeline ... ok
[INFO] [stdout] test executor::tests::test_execute_function_definition ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_e_option_existing_file ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_d_option_regular_file ... ok
[INFO] [stdout] arg1
[INFO] [stdout] inner_doneHello from functiontest executor::tests::test_execute_nonexistent_function ... ok
[INFO] [stdout] test builtins::builtin_source::tests::test_execute_builtin_source_variable_sharing ... ok
[INFO] [stdout] test executor::tests::test_execute_function_call_with_args ... ok
[INFO] [stdout] test executor::tests::test_execute_function_integration ... ok
[INFO] [stdout] test completion::tests::test_multi_match_completion_single_candidate ... ok
[INFO] [stdout] successtest completion::tests::test_get_file_candidates_basic ... ok
[INFO] [stdout] test completion::tests::test_get_file_candidates_with_directory ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_f_option_regular_file ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command_external ... ok
[INFO] [stdout] test completion::tests::test_first_word_file_completion_precedence ... ok
[INFO] [stdout] test executor::tests::test_here_document_execution ... ok
[INFO] [stdout] test executor::tests::test_here_string_execution ... ok
[INFO] [stdout] outer_donehellotest executor::tests::test_here_document_with_command_substitution_builtin ... ok
[INFO] [stdout] test completion::tests::test_directory_completion_formatting ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_comparison ... ok
[INFO] [stdout] test lexer::tests::test_append_redirection ... ok
[INFO] [stdout] test executor::tests::test_execute_pipeline ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_complex ... ok
[INFO] [stdout] test executor::tests::test_execute_nested_function_calls ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_division_by_zero ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_unmatched_parentheses ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_simple ... ok
[INFO] [stdout] test lexer::tests::test_basic_word ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_failure_fallback ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_with_variables ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_dollar_paren ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command_external_nonexistent ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_failure_fallback ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command_builtin ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_in_assignment ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_in_pipeline ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_multiple_spaces ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_special_characters ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_redirection ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_empty_output ... ok
[INFO] [stdout] test completion::tests::test_get_command_candidates_exact ... ok
[INFO] [stdout] hello
[INFO] [stdout] test lexer::tests::test_double_quotes_with_semicolons ... ok
[INFO] [stdout] test lexer::tests::test_double_quotes ... ok
[INFO] [stdout] test lexer::tests::test_empty_input ... ok
[INFO] [stdout] test lexer::tests::test_complex_pipeline ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_newlines ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_no_alias ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_simple ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_with_args ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_current_dir ... ok
[INFO] [stdout] test executor::tests::test_execute_function_with_local_variables ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_variables ... ok
[INFO] [stdout] test lexer::tests::test_here_string_without_quotes ... ok
[INFO] [stdout] test executor::tests::test_execute_function_call ... ok
[INFO] [stdout] test lexer::tests::test_here_document_redirection ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_chained ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_arguments ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_with_quotes ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_quotes ... ok
[INFO] [stdout] test lexer::tests::test_if_tokens ... ok
[INFO] [stdout] test lexer::tests::test_local_keyword ... ok
[INFO] [stdout] test lexer::tests::test_input_redirection ... ok
[INFO] [stdout] test lexer::tests::test_multiple_words ... ok
[INFO] [stdout] test lexer::tests::test_empty_variable ... ok
[INFO] [stdout] test lexer::tests::test_only_spaces ... ok
[INFO] [stdout] test lexer::tests::test_nested_command_substitution ... ok
[INFO] [stdout] test lexer::tests::test_mixed_quotes_and_variables ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_alternative_unset ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_alternative ... ok
[INFO] [stdout] test lexer::tests::test_here_document_with_quoted_delimiter ... ok
[INFO] [stdout] test completion::tests::test_get_command_candidates ... ok
[INFO] [stdout] test lexer::tests::test_here_string_redirection ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_default_set_variable ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_in_double_quotes ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_error_unset ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_length ... ok
[INFO] [stdout] test lexer::tests::test_local_keyword_in_function ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_in_assignment ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substring ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_with_arguments ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_complex_expression ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_assign_default ... ok
[INFO] [stdout] test lexer::tests::test_pipe ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_simple ... ok
[INFO] [stdout] test lexer::tests::test_redirections ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substitute ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substitute_all ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_longest_suffix ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_shortest_prefix ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_default ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_longest_prefix ... ok
[INFO] [stdout] test executor::tests::test_here_document_with_variable_expansion ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substring_with_length ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_mixed_with_regular_variables ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_unset_variable ... ok
[INFO] [stdout] test lexer::tests::test_redirections_mixed ... ok
[INFO] [stdout] test lexer::tests::test_semicolons_outside_quotes ... ok
[INFO] [stdout] test lexer::tests::test_unclosed_double_quote ... ok
[INFO] [stdout] test lexer::tests::test_single_quotes_with_semicolons ... ok
[INFO] [stdout] test lexer::tests::test_variable_expansion ... ok
[INFO] [stdout] test lexer::tests::test_variable_in_quotes_with_pipe ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic_unset_intermediate ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_default_modifier ... ok
[INFO] [stdout] test lexer::tests::test_single_quotes ... ok
[INFO] [stdout] test lexer::tests::test_variable_expansion_nonexistent ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic_with_local_scope ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_at ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_empty_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_basic ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_mixed_scopes ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_simple_variable ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_with_locals ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_substring ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_special_characters ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_alternative_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_default_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_error_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_empty ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_indirect_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_assign_default_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_indirect_basic ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_invalid_character ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_longest_suffix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_shortest_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_simple_variable ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substitute ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substitute_all ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substring ... ok
[INFO] [stdout] test parser::tests::test_append_redirection ... ok
[INFO] [stdout] test parser::tests::test_complex_pipeline_with_redirections ... ok
[INFO] [stdout] test parser::tests::test_command_with_args ... ok
[INFO] [stdout] test parser::tests::test_empty_tokens ... ok
[INFO] [stdout] test parser::tests::test_input_redirection ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_no_matches ... ok
[INFO] [stdout] test parser::tests::test_multiple_redirections ... ok
[INFO] [stdout] test parser::tests::test_only_pipe ... ok
[INFO] [stdout] test parser::tests::test_parse_assignment_invalid ... ok
[INFO] [stdout] test parser::tests::test_parse_assignment_quoted ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_shortest_suffix ... ok
[INFO] [stdout] test parser::tests::test_parse_here_document_redirection ... ok
[INFO] [stdout] test parser::tests::test_parse_assignment ... ok
[INFO] [stdout] test parser::tests::test_parse_function_definition_legacy_format ... ok
[INFO] [stdout] test parser::tests::test_output_redirection ... ok
[INFO] [stdout] test parser::tests::test_parse_function_definition ... ok
[INFO] [stdout] test parser::tests::test_parse_local_assignment ... ok
[INFO] [stdout] test parser::tests::test_parse_mixed_redirections ... ok
[INFO] [stdout] test parser::tests::test_parse_if ... ok
[INFO] [stdout] test parser::tests::test_parse_local_assignment_invalid_var_name ... ok
[INFO] [stdout] test parser::tests::test_single_command ... ok
[INFO] [stdout] test state::tests::test_condensed_cwd_environment_variable ... ok
[INFO] [stdout] test parser::tests::test_pipeline ... ok
[INFO] [stdout] test state::tests::test_get_user_hostname ... ok
[INFO] [stdout] test state::tests::test_export_variable ... ok
[INFO] [stdout] test parser::tests::test_parse_here_string_redirection ... ok
[INFO] [stdout] test state::tests::test_get_prompt ... ok
[INFO] [stdout] test state::tests::test_get_full_cwd ... ok
[INFO] [stdout] test parser::tests::test_parse_if_elif ... ok
[INFO] [stdout] test state::tests::test_positional_parameters ... ok
[INFO] [stdout] test state::tests::test_positional_parameters_empty ... ok
[INFO] [stdout] test state::tests::test_local_variable_scoping ... ok
[INFO] [stdout] test state::tests::test_prompt_with_condensed_setting ... ok
[INFO] [stdout] test state::tests::test_shell_state_basic ... ok
[INFO] [stdout] test state::tests::test_shift_positional_params ... ok
[INFO] [stdout] test state::tests::test_special_variables ... ok
[INFO] [stdout] test state::tests::test_unset_variable ... ok
[INFO] [stdout] test state::tests::test_push_positional_param ... ok
[INFO] [stdout] test state::tests::test_variable_set_in_local_scope ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_shortest_suffix ... ok
[INFO] [stdout] test parser::tests::test_parse_local_assignment_separate_tokens ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_longest_prefix ... ok
[INFO] [stdout] test parser::tests::test_parse_function_definition_empty ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_default_modifier_unset ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic_unset_target ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substring_with_length ... ok
[INFO] [stdout] test state::tests::test_nested_local_scopes ... ok
[INFO] [stdout] test parser::tests::test_redirection_without_file ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 301 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.37s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rush_sh-d76c4d37f3a6989c)
[INFO] [stdout] 
[INFO] [stdout] running 325 tests
[INFO] [stdout] test arithmetic::tests::test_evaluate_comparison ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_division_by_zero ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_variable ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_operators ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_with_precedence ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_parentheses ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_mixed ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_nested ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_simple ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_in_word_with_ranges ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_char_range ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_numeric_range ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_mixed_tokens ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_no_braces ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_simple_numbers ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_word_without_braces ... ok
[INFO] [stdout] test brace_expansion::tests::test_parse_brace_content_nested ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_addition ... ok
[INFO] [stdout] test brace_expansion::tests::test_split_top_level_simple ... ok
[INFO] [stdout] test builtins::builtin_cd::tests::test_cd_to_valid_directory ... ok
[INFO] [stdout] test brace_expansion::tests::test_split_top_level_with_braces ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_invalid_option ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_list ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_set ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_show ... ok
[INFO] [stdout] test builtins::builtin_cd::tests::test_cd_no_arguments ... ok
[INFO] [stdout] test builtins::builtin_cd::tests::test_cd_to_invalid_directory ... ok
[INFO] [stdout] test brace_expansion::tests::test_parse_brace_content_simple_nested ... ok
[INFO] [stdout] test builtins::builtin_alias::tests::test_execute_builtin_alias_show_not_found ... ok
[INFO] [stdout] test brace_expansion::tests::test_split_top_level_nested_braces ... ok
[INFO] [stdout] test arithmetic::tests::test_tokenize_variables ... ok
[INFO] [stdout] test builtins::builtin_export::tests::test_export_builtin_set ... ok
[INFO] [stdout] test builtins::builtin_env::tests::test_env_builtin_run ... ok
[INFO] [stdout] test builtins::builtin_help::tests::test_help_builtin_run ... ok
[INFO] [stdout] test builtins::builtin_popd::tests::test_execute_builtin_popd ... ok
[INFO] [stdout] test builtins::builtin_pushd::tests::test_execute_builtin_pushd ... ok
[INFO] [stdout] test builtins::builtin_set_color_scheme::tests::test_set_color_scheme_builtin_dark ... ok
[INFO] [stdout] test builtins::builtin_set_colors::tests::test_set_colors_builtin_disable ... ok
[INFO] [stdout] test builtins::builtin_export::tests::test_export_builtin_export_existing ... ok
[INFO] [stdout] test builtins::builtin_exit::tests::test_exit_builtin_run ... ok
[INFO] [stdout] test builtins::builtin_set_colors::tests::test_set_colors_builtin_enable ... ok
[INFO] [stdout] test builtins::builtin_set_condensed::tests::test_set_condensed_builtin_disable ... ok
[INFO] [stdout] test builtins::builtin_set_condensed::tests::test_set_condensed_builtin_enable ... ok
[INFO] [stdout] test builtins::builtin_set_color_scheme::tests::test_set_color_scheme_builtin_default ... ok
[INFO] [stdout] test builtins::builtin_set_condensed::tests::test_set_condensed_builtin_status ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_custom_count ... ok
[INFO] [stdout] test brace_expansion::tests::test_expand_braces_empty ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_no_args ... ok
[INFO] [stdout] test builtins::builtin_export::tests::test_export_builtin_list ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_invalid_number ... ok
[INFO] [stdout] test builtins::builtin_pwd::tests::test_pwd_builtin_run ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_undefined_variable ... ok
[INFO] [stdout] test builtins::builtin_shift::tests::test_shift_builtin_default ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_nonexistent_function ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_show_function ... ok
[INFO] [stdout] test builtins::builtin_dirs::tests::test_execute_builtin_dirs ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_d_option_directory ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_d_option_regular_file ... ok
[INFO] [stdout] test builtins::builtin_declare::tests::test_declare_builtin_run_list_functions ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_e_option_non_existing_file ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_simple ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_f_option_directory ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_eq_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_f_option_regular_file ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ge_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_lt_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ge_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_gt_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_n_option_missing_argument ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_n_option_empty_string ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_n_option_non_empty_string ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ne_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ne_not_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_ge_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_numeric_invalid_right_operand ... ok
[INFO] [stdout] test builtins::builtin_source::tests::test_execute_builtin_source_variable_sharing ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_test_builtin_name ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_eq_not_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_z_option_missing_argument ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_z_option_non_empty_string ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_is_trappable ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_test_builtin_description ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_z_option_empty_string ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_signal_to_name ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_display_all ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_normalize_signal_name ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_empty_action ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_list_signals ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_reset_handler ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_invalid_signal ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_set_handler ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_signal_numbers ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_uncatchable_signal ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_all ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_not_found ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_all_no_aliases ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_all_too_many_args ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_no_args ... ok
[INFO] [stdout] test builtins::builtin_unalias::tests::test_execute_builtin_unalias_too_many_args ... ok
[INFO] [stdout] test builtins::tests::test_get_builtin_commands ... ok
[INFO] [stdout] test builtins::builtin_unset::tests::test_unset_builtin_no_args ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_gt_less ... ok
[INFO] [stdout] test builtins::builtin_unset::tests::test_unset_builtin_unset_variable ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_le_equal ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_invalid_option ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_lt_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_le_greater ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_le_less ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_numeric_invalid_left_operand ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_numeric_invalid_operator ... ok
[INFO] [stdout] test builtins::builtin_trap::tests::test_trap_multiple_signals ... ok
[INFO] [stdout] test builtins::tests::test_execute_builtin_unknown ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_no_arguments ... ok
[INFO] [stdout] test arithmetic::tests::test_evaluate_with_parentheses ... ok
[INFO] [stdout] test builtins::builtin_test::tests::test_e_option_existing_file ... ok
[INFO] [stdout] test completion::tests::test_builtin_commands ... ok
[INFO] [stdout] test completion::tests::test_get_file_candidates_basic ... ok
[INFO] [stdout] test completion::tests::test_multi_match_completion_cycling ... ok
[INFO] [stdout] test completion::tests::test_directory_completion_formatting ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_absolute ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_with_directory ... ok
[INFO] [stdout] test completion::tests::test_repeated_completion_detection ... ok
[INFO] [stdout] test completion::tests::test_get_file_candidates_with_directory ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_current_dir ... ok
[INFO] [stdout] test completion::tests::test_multi_match_completion_empty_candidates ... ok
[INFO] [stdout] inner_doneHello from functionouter_donetest completion::tests::test_first_word_file_completion_precedence ... ok
[INFO] [stdout] arg1
[INFO] [stdout] successhello
[INFO] [stdout] test completion::tests::test_is_first_word ... ok
[INFO] [stdout] test completion::tests::test_rush_candidate_display ... ok
[INFO] [stdout] test completion::tests::test_multi_match_completion_single_candidate ... ok
[INFO] [stdout] test executor::tests::test_execute_empty_pipeline ... ok
[INFO] [stdout] test completion::tests::test_parse_path_for_completion_home ... ok
[INFO] [stdout] test executor::tests::test_execute_nested_function_calls ... ok
[INFO] [stdout] test executor::tests::test_execute_function_definition ... ok
[INFO] [stdout] test executor::tests::test_execute_function_call_with_args ... ok
[INFO] [stdout] test executor::tests::test_execute_function_with_local_variables ... ok
[INFO] [stdout] test completion::tests::test_completion_context_update ... ok
[INFO] [stdout] test executor::tests::test_execute_function_call ... ok
[INFO] [stdout] test executor::tests::test_execute_function_integration ... ok
[INFO] [stdout] test executor::tests::test_execute_nonexistent_function ... ok
[INFO] [stdout] test executor::tests::test_here_document_with_command_substitution_builtin ... ok
[INFO] [stdout] test lexer::tests::test_append_redirection ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_comparison ... ok
[INFO] [stdout] test executor::tests::test_here_document_with_variable_expansion ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_complex ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_with_variables ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command_external_nonexistent ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_simple ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command_external ... ok
[INFO] [stdout] test builtins::tests::test_is_builtin ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_failure_fallback ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks ... ok
[INFO] [stdout] hellotest executor::tests::test_execute_pipeline ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_failure_fallback ... ok
[INFO] [stdout] test lexer::tests::test_basic_word ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_with_arguments ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_unmatched_parentheses ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_in_assignment ... ok
[INFO] [stdout] test executor::tests::test_here_document_execution ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_in_pipeline ... ok
[INFO] [stdout] test executor::tests::test_execute_single_command_builtin ... ok
[INFO] [stdout] test executor::tests::test_here_string_execution ... ok
[INFO] [stdout] test lexer::tests::test_complex_pipeline ... ok
[INFO] [stdout] test completion::tests::test_get_command_candidates ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_in_assignment ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_redirection ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_special_characters ... ok
[INFO] [stdout] test lexer::tests::test_double_quotes_with_semicolons ... ok
[INFO] [stdout] test lexer::tests::test_double_quotes ... ok
[INFO] [stdout] test lexer::tests::test_empty_input ... ok
[INFO] [stdout] test lexer::tests::test_empty_variable ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_no_alias ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_quotes ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_empty_output ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_chained ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_newlines ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_arguments ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_multiple_spaces ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_backticks_with_quotes ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_with_variables ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_with_args ... ok
[INFO] [stdout] test lexer::tests::test_here_document_with_quoted_delimiter ... ok
[INFO] [stdout] test lexer::tests::test_here_document_redirection ... ok
[INFO] [stdout] test lexer::tests::test_here_string_without_quotes ... ok
[INFO] [stdout] test lexer::tests::test_here_string_redirection ... ok
[INFO] [stdout] test lexer::tests::test_local_keyword ... ok
[INFO] [stdout] test lexer::tests::test_input_redirection ... ok
[INFO] [stdout] test lexer::tests::test_if_tokens ... ok
[INFO] [stdout] test lexer::tests::test_mixed_quotes_and_variables ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_alternative ... ok
[INFO] [stdout] test lexer::tests::test_multiple_words ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_complex_expression ... ok
[INFO] [stdout] test lexer::tests::test_local_keyword_in_function ... ok
[INFO] [stdout] test lexer::tests::test_nested_command_substitution ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_default_set_variable ... ok
[INFO] [stdout] test lexer::tests::test_only_spaces ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_error_unset ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_alternative_unset ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_mixed_with_regular_variables ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_assign_default ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_longest_prefix ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_default ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_simple ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substitute ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substring ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_shortest_prefix ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_unset_variable ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_shortest_suffix ... ok
[INFO] [stdout] test lexer::tests::test_pipe ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substring_with_length ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_remove_longest_suffix ... ok
[INFO] [stdout] test lexer::tests::test_redirections ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_substitute_all ... ok
[INFO] [stdout] test lexer::tests::test_single_quotes ... ok
[INFO] [stdout] test completion::tests::test_get_command_candidates_exact ... ok
[INFO] [stdout] test lexer::tests::test_semicolons_outside_quotes ... ok
[INFO] [stdout] test lexer::tests::test_single_quotes_with_semicolons ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_default_modifier_unset ... ok
[INFO] [stdout] test lexer::tests::test_variable_expansion ... ok
[INFO] [stdout] test lexer::tests::test_redirections_mixed ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_in_double_quotes ... ok
[INFO] [stdout] test lexer::tests::test_unclosed_double_quote ... ok
[INFO] [stdout] test lexer::tests::test_parameter_expansion_length ... ok
[INFO] [stdout] test lexer::tests::test_expand_aliases_simple ... ok
[INFO] [stdout] test lexer::tests::test_variable_expansion_nonexistent ... ok
[INFO] [stdout] test lexer::tests::test_variable_in_quotes_with_pipe ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic_with_local_scope ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic_unset_target ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_basic ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_empty_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_simple_variable ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_basic_unset_intermediate ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_special_characters ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_substring ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_no_matches ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_at ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_mixed_scopes ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_indirect_prefix_with_locals ... ok
[INFO] [stdout] test parameter_expansion::tests::test_expand_default_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_error_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_indirect_basic ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_longest_suffix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_invalid_character ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_shortest_suffix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_indirect_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_assign_default_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_default_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_empty ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_longest_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_simple_variable ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_alternative_modifier ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_remove_shortest_prefix ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substitute ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substring ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substring_with_length ... ok
[INFO] [stdout] test parser::tests::test_command_with_args ... ok
[INFO] [stdout] test parser::tests::test_append_redirection ... ok
[INFO] [stdout] test parameter_expansion::tests::test_parse_substitute_all ... ok
[INFO] [stdout] test parser::tests::test_only_pipe ... ok
[INFO] [stdout] test parser::tests::test_output_redirection ... ok
[INFO] [stdout] test parser::tests::test_parse_assignment ... ok
[INFO] [stdout] test parser::tests::test_parse_function_definition ... ok
[INFO] [stdout] test parser::tests::test_parse_function_definition_empty ... ok
[INFO] [stdout] test parser::tests::test_parse_here_string_redirection ... ok
[INFO] [stdout] test parser::tests::test_parse_here_document_redirection ... ok
[INFO] [stdout] test parser::tests::test_parse_if ... ok
[INFO] [stdout] test parser::tests::test_parse_local_assignment_invalid_var_name ... ok
[INFO] [stdout] test parser::tests::test_complex_pipeline_with_redirections ... ok
[INFO] [stdout] test parser::tests::test_parse_if_elif ... ok
[INFO] [stdout] test parser::tests::test_parse_local_assignment_separate_tokens ... ok
[INFO] [stdout] test parser::tests::test_empty_tokens ... ok
[INFO] [stdout] test parser::tests::test_parse_function_definition_legacy_format ... ok
[INFO] [stdout] test parser::tests::test_input_redirection ... ok
[INFO] [stdout] test parser::tests::test_multiple_redirections ... ok
[INFO] [stdout] test parser::tests::test_parse_local_assignment ... ok
[INFO] [stdout] test parser::tests::test_parse_assignment_quoted ... ok
[INFO] [stdout] test parser::tests::test_parse_mixed_redirections ... ok
[INFO] [stdout] test parser::tests::test_redirection_without_file ... ok
[INFO] [stdout] test parser::tests::test_single_command ... ok
[INFO] [stdout] test state::tests::test_condensed_cwd_environment_variable ... ok
[INFO] [stdout] test state::tests::test_get_full_cwd ... ok
[INFO] [stdout] test state::tests::test_get_prompt ... ok
[INFO] [stdout] test state::tests::test_export_variable ... ok
[INFO] [stdout] test parser::tests::test_parse_assignment_invalid ... ok
[INFO] [stdout] test parser::tests::test_pipeline ... ok
[INFO] [stdout] test state::tests::test_get_user_hostname ... ok
[INFO] [stdout] test state::tests::test_local_variable_scoping ... ok
[INFO] [stdout] test state::tests::test_nested_local_scopes ... ok
[INFO] [stdout] test state::tests::test_positional_parameters ... ok
[INFO] [stdout] test state::tests::test_push_positional_param ... ok
[INFO] [stdout] test state::tests::test_shell_state_basic ... ok
[INFO] [stdout] test state::tests::test_shift_positional_params ... ok
[INFO] [stdout] test state::tests::test_special_variables ... ok
[INFO] [stdout] test state::tests::test_positional_parameters_empty ... ok
[INFO] [stdout] test state::tests::test_unset_variable ... ok
[INFO] [stdout] test state::tests::test_prompt_with_condensed_setting ... ok
[INFO] [stdout] 1 2 3
[INFO] [stdout] test tests::test_integration_brace_expansion_with_ranges ... ok
[INFO] [stdout] test lexer::tests::test_arithmetic_expansion_division_by_zero ... ok
[INFO] [stdout] test lexer::tests::test_command_substitution_dollar_paren ... ok
[INFO] [stdout] test tests::test_integration_builtin_cd ... ok
[INFO] [stdout] test state::tests::test_variable_set_in_local_scope ... ok
[INFO] [stdout] test tests::test_integration_true ... ok
[INFO] [stdout] a b
[INFO] [stdout] INT trapped
[INFO] [stdout] test tests::test_signal_queue_enqueue_dequeue ... ok
[INFO] [stdout] test tests::test_signal_queue_overflow ... ok
[INFO] [stdout] test tests::test_integration_false ... ok
[INFO] [stdout] test tests::test_integration_brace_expansion_with_pipes ... ok
[INFO] [stdout] hellotrap -- 'echo int handler' INT
[INFO] [stdout] trap -- 'echo term handler' TERM
[INFO] [stdout] test tests::test_trap_builtin_integration ... ok
[INFO] [stdout] EXIT trap executed
[INFO] [stdout] input contentexpandedtest tests::test_process_pending_signals_with_trap ... ok
[INFO] [stdout] test tests::test_trap_multiple_signals ... ok
[INFO] [stdout] test tests::test_trap_display_integration ... ok
[INFO] [stdout] test tests::test_integration_pipeline ... ok
[INFO] [stdout] test tests::test_trap_exit_execution ... ok
[INFO] [stdout] test tests::test_trap_reset_integration ... ok
[INFO] [stdout] test tests::test_integration_variable_expansion ... ok
[INFO] [stdout] test tests::test_integration_redirection_output ... ok
[INFO] [stdout] Caught SIGINT
[INFO] [stdout] test tests::test_source_rushrc_functionality ... ok
[INFO] [stdout] test tests::test_trap_execution_during_repl ... ok
[INFO] [stdout] test tests::test_integration_redirection_input ... ok
[INFO] [stdout] a b c
[INFO] [stdout] test tests::test_integration_brace_expansion_simple ... ok
[INFO] [stdout] a b c d
[INFO] [stdout] filea.txt fileb.txt
[INFO] [stdout] INT
[INFO] [stdout] test tests::test_integration_brace_expansion_mixed ... ok
[INFO] [stdout] TERM
[INFO] [stdout] HUP
[INFO] [stdout] test tests::test_source_rushrc_condensed_setting ... ok
[INFO] [stdout] test tests::test_multiple_signals_in_sequence ... ok
[INFO] [stdout] test tests::test_integration_brace_expansion_nested ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 325 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.30s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rush_sh
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "2ba1e3c202ea4c4abd31d3c967fcc40bd07bb76c5d03badb30a812d965eda680", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ba1e3c202ea4c4abd31d3c967fcc40bd07bb76c5d03badb30a812d965eda680", kill_on_drop: false }`
[INFO] [stdout] 2ba1e3c202ea4c4abd31d3c967fcc40bd07bb76c5d03badb30a812d965eda680
