[INFO] cloning repository https://github.com/shantanugoel/rust-bash
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/shantanugoel/rust-bash" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshantanugoel%2Frust-bash", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshantanugoel%2Frust-bash'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 68d6dbaf7ae059e29cfe1570a421b0e710ec8572
[INFO] testing shantanugoel/rust-bash against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshantanugoel%2Frust-bash" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/shantanugoel/rust-bash
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/shantanugoel/rust-bash
[INFO] tweaked toml for git repo https://github.com/shantanugoel/rust-bash written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/shantanugoel/rust-bash on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/shantanugoel/rust-bash 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" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 14466928ce1012276ab8b0c7d031950b0cf2a9f5919d33515b117db9c97c10ce
[INFO] running `Command { std: "docker" "start" "-a" "14466928ce1012276ab8b0c7d031950b0cf2a9f5919d33515b117db9c97c10ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "14466928ce1012276ab8b0c7d031950b0cf2a9f5919d33515b117db9c97c10ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "14466928ce1012276ab8b0c7d031950b0cf2a9f5919d33515b117db9c97c10ce", kill_on_drop: false }`
[INFO] [stdout] 14466928ce1012276ab8b0c7d031950b0cf2a9f5919d33515b117db9c97c10ce
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 17a97cc7726389e3eec3f41d56a8355d21dedca163d8c235735dbff5beb6a871
[INFO] running `Command { std: "docker" "start" "-a" "17a97cc7726389e3eec3f41d56a8355d21dedca163d8c235735dbff5beb6a871", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling zerocopy v0.8.46
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]    Compiling typed-arena v2.0.2
[INFO] [stderr]    Compiling peg-runtime v0.8.5
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling dyn-clone v1.0.20
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling jaq-core v3.0.0-gamma
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling peg-macros v0.8.5
[INFO] [stderr]    Compiling phf_shared v0.12.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling cached_proc_macro v0.27.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling cached_proc_macro_types v0.1.1
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling jiff v0.2.23
[INFO] [stderr]    Compiling bon-macros v3.9.1
[INFO] [stderr]    Compiling regex-bites v0.1.6
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling cached v0.59.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling peg v0.8.5
[INFO] [stderr]    Compiling ureq-proto v0.5.3
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling insta v1.46.3
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling clap_derive v4.6.0
[INFO] [stderr]    Compiling utf8-chars v3.0.6
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling phf v0.12.1
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling self_cell v1.2.2
[INFO] [stderr]    Compiling hifijson v0.5.0
[INFO] [stderr]    Compiling jaq-std v3.0.0-gamma
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling indenter v0.3.4
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling clap v4.6.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling rustyline v17.0.2
[INFO] [stderr]    Compiling jaq-json v2.0.0-gamma
[INFO] [stderr]    Compiling tar v0.4.45
[INFO] [stderr]    Compiling bon v3.9.1
[INFO] [stderr]    Compiling brush-parser v0.3.0 (https://github.com/reubeno/brush.git?rev=ae35b6dd09f394c66fd805bea747e35a013ee978#ae35b6dd)
[INFO] [stderr]    Compiling ureq v3.2.0
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling rust-bash v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 29s
[INFO] running `Command { std: "docker" "inspect" "17a97cc7726389e3eec3f41d56a8355d21dedca163d8c235735dbff5beb6a871", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17a97cc7726389e3eec3f41d56a8355d21dedca163d8c235735dbff5beb6a871", kill_on_drop: false }`
[INFO] [stdout] 17a97cc7726389e3eec3f41d56a8355d21dedca163d8c235735dbff5beb6a871
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6e62622bbd13c4ca4250f9d36b222b57398ad798c39dcb85ba1f7dc4d52c9320
[INFO] running `Command { std: "docker" "start" "-a" "6e62622bbd13c4ca4250f9d36b222b57398ad798c39dcb85ba1f7dc4d52c9320", kill_on_drop: false }`
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling camino v1.2.2
[INFO] [stderr]    Compiling predicates-core v1.0.10
[INFO] [stderr]    Compiling winnow v1.0.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling toml_datetime v1.0.1+spec-1.1.0
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling difflib v0.4.0
[INFO] [stderr]    Compiling toml_writer v1.0.7+spec-1.1.0
[INFO] [stderr]    Compiling normalize-line-endings v0.3.0
[INFO] [stderr]    Compiling escape8259 v0.5.3
[INFO] [stderr]    Compiling termtree v0.5.1
[INFO] [stderr]    Compiling assert_cmd v2.2.0
[INFO] [stderr]    Compiling libtest-mimic v0.8.2
[INFO] [stderr]    Compiling predicates-tree v1.0.13
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling chunked_transfer v1.5.0
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling tiny_http v0.12.0
[INFO] [stderr]    Compiling toml_parser v1.0.10+spec-1.1.0
[INFO] [stderr]    Compiling toml_edit v0.25.5+spec-1.1.0
[INFO] [stderr]    Compiling toml v1.0.7+spec-1.1.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling fancy-regex v0.14.0
[INFO] [stderr]    Compiling insta v1.46.3
[INFO] [stderr]    Compiling predicates v3.1.4
[INFO] [stderr]    Compiling jaq-std v3.0.0-gamma
[INFO] [stderr]    Compiling datatest-stable v0.3.3
[INFO] [stderr]    Compiling jaq-json v2.0.0-gamma
[INFO] [stderr]    Compiling brush-parser v0.3.0 (https://github.com/reubeno/brush.git?rev=ae35b6dd09f394c66fd805bea747e35a013ee978#ae35b6dd)
[INFO] [stderr]    Compiling rust-bash v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 44s
[INFO] running `Command { std: "docker" "inspect" "6e62622bbd13c4ca4250f9d36b222b57398ad798c39dcb85ba1f7dc4d52c9320", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e62622bbd13c4ca4250f9d36b222b57398ad798c39dcb85ba1f7dc4d52c9320", kill_on_drop: false }`
[INFO] [stdout] 6e62622bbd13c4ca4250f9d36b222b57398ad798c39dcb85ba1f7dc4d52c9320
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8ae6847326b0e087691053292ce079dadef308f1e73e686a6128ffe27a21f69a
[INFO] running `Command { std: "docker" "start" "-a" "8ae6847326b0e087691053292ce079dadef308f1e73e686a6128ffe27a21f69a", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.41s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_bash-17481f56253d36a8)
[INFO] [stdout] 
[INFO] [stdout] running 1085 tests
[INFO] [stdout] test api::tests::brace_group_shares_scope ... ok
[INFO] [stdout] test api::tests::bare_assignment ... ok
[INFO] [stdout] test api::tests::and_success ... ok
[INFO] [stdout] test api::tests::and_failure_skips ... ok
[INFO] [stdout] test api::tests::builder_with_custom_command ... ok
[INFO] [stdout] test api::tests::builder_accepts_custom_fs ... ok
[INFO] [stdout] test api::tests::builder_default_cwd ... ok
[INFO] [stdout] test api::tests::builder_with_cwd ... ok
[INFO] [stdout] test api::tests::case_wildcard ... ok
[INFO] [stdout] test api::tests::case_no_match ... ok
[INFO] [stdout] test api::tests::case_basic ... ok
[INFO] [stdout] test api::tests::builder_with_files ... ok
[INFO] [stdout] test api::tests::cat_file ... ok
[INFO] [stdout] test api::tests::cat_line_numbers ... ok
[INFO] [stdout] test api::tests::cd_changes_cwd ... ok
[INFO] [stdout] test api::tests::brace_group_basic ... ok
[INFO] [stdout] test api::tests::colon_builtin ... ok
[INFO] [stdout] test api::tests::chained_and_or ... ok
[INFO] [stdout] test api::tests::command_not_found ... ok
[INFO] [stdout] test api::tests::complete_simple_commands ... ok
[INFO] [stdout] test api::tests::cd_sets_oldpwd ... ok
[INFO] [stdout] test api::tests::compound_command_with_redirect ... ok
[INFO] [stdout] test api::tests::cat_nonexistent_file ... ok
[INFO] [stdout] test api::tests::cat_stdin ... ok
[INFO] [stdout] test api::tests::command_names_accessor ... ok
[INFO] [stdout] test api::tests::declare_readonly ... ok
[INFO] [stdout] test api::tests::deeply_chained_and_or ... ok
[INFO] [stdout] test api::tests::comment_stripping ... ok
[INFO] [stdout] test api::tests::echo_escape_sequences ... ok
[INFO] [stdout] test api::tests::echo_multiple_words ... ok
[INFO] [stdout] test api::tests::echo_no_newline ... ok
[INFO] [stdout] test api::tests::echo_hello_end_to_end ... ok
[INFO] [stdout] test api::tests::builder_with_env ... ok
[INFO] [stdout] test api::tests::echo_no_args ... ok
[INFO] [stdout] test api::tests::double_quoted_variable_expansion ... ok
[INFO] [stdout] test api::tests::empty_input ... ok
[INFO] [stdout] test api::tests::exit_with_code ... ok
[INFO] [stdout] test api::tests::cd_home ... ok
[INFO] [stdout] test api::tests::empty_variable_in_quotes ... ok
[INFO] [stdout] test api::tests::expand_alternative_value ... ok
[INFO] [stdout] test api::tests::exit_wraps_to_byte_range ... ok
[INFO] [stdout] test api::tests::expand_alternative_unset_is_empty ... ok
[INFO] [stdout] test api::tests::exit_stops_subsequent_commands ... ok
[INFO] [stdout] test api::tests::exit_default_code ... ok
[INFO] [stdout] test api::tests::cwd_accessor ... ok
[INFO] [stdout] test api::tests::exit_non_numeric_argument ... ok
[INFO] [stdout] test api::tests::env_command_runs_inside_redirected_subshell ... ok
[INFO] [stdout] test api::tests::expand_default_not_used_when_set ... ok
[INFO] [stdout] test api::tests::expand_assign_default ... ok
[INFO] [stdout] test api::tests::expand_at_all_params ... ok
[INFO] [stdout] test api::tests::expand_dollar_zero ... ok
[INFO] [stdout] test api::tests::expand_default_value ... ok
[INFO] [stdout] test api::tests::expand_braced_variable ... ok
[INFO] [stdout] test api::tests::expand_dollar_dollar ... ok
[INFO] [stdout] test api::tests::expand_default_with_variable ... ok
[INFO] [stdout] test api::tests::expand_lowercase_first ... ok
[INFO] [stdout] test api::tests::expand_param_count ... ok
[INFO] [stdout] test api::tests::expand_lowercase_all ... ok
[INFO] [stdout] test api::tests::expand_prefix_removal_longest ... ok
[INFO] [stdout] test api::tests::expand_prefix_removal_shortest ... ok
[INFO] [stdout] test api::tests::expand_exit_status ... ok
[INFO] [stdout] test api::tests::expand_error_if_unset ... ok
[INFO] [stdout] test api::tests::expand_random_is_numeric ... ok
[INFO] [stdout] test api::tests::expand_positional_params ... ok
[INFO] [stdout] test api::tests::expand_star_all_params ... ok
[INFO] [stdout] test api::tests::expand_substitution_first ... ok
[INFO] [stdout] test api::tests::expand_simple_variable ... ok
[INFO] [stdout] test api::tests::expand_string_length ... ok
[INFO] [stdout] test api::tests::expand_substring ... ok
[INFO] [stdout] test api::tests::expand_substitution_all ... ok
[INFO] [stdout] test api::tests::expanding_heredoc_preserves_backslash_quote_sequences ... ok
[INFO] [stdout] test api::tests::expand_uppercase_first ... ok
[INFO] [stdout] test api::tests::expand_suffix_removal_shortest ... ok
[INFO] [stdout] test api::tests::expand_unset_variable_is_empty ... ok
[INFO] [stdout] test api::tests::expand_uppercase_all ... ok
[INFO] [stdout] test api::tests::export_creates_exported_var ... ok
[INFO] [stdout] test api::tests::for_loop_basic ... ok
[INFO] [stdout] test api::tests::for_loop_with_variable_expansion ... ok
[INFO] [stdout] test api::tests::expand_suffix_removal_longest ... ok
[INFO] [stdout] test api::tests::here_string ... ok
[INFO] [stdout] test api::tests::if_break_outside_loop_still_takes_then_branch ... ok
[INFO] [stdout] test api::tests::export_marks_existing_var ... ok
[INFO] [stdout] test api::tests::for_loop_in_pipeline ... ok
[INFO] [stdout] test api::tests::expanding_heredoc_treats_quotes_as_literal_text ... ok
[INFO] [stdout] test api::tests::if_elif_falls_through_to_else ... ok
[INFO] [stdout] test api::tests::if_in_pipeline ... ok
[INFO] [stdout] test api::tests::false_command ... ok
[INFO] [stdout] test api::tests::incomplete_open_block ... ok
[INFO] [stdout] test api::tests::incomplete_trailing_pipe ... ok
[INFO] [stdout] test api::tests::incomplete_unterminated_quotes ... ok
[INFO] [stdout] test api::tests::for_loop_variable_persists_after_loop ... ok
[INFO] [stdout] test api::tests::if_elif_else ... ok
[INFO] [stdout] test api::tests::ls_nonexistent ... ok
[INFO] [stdout] test api::tests::ls_long_format ... ok
[INFO] [stdout] test api::tests::last_exit_code_accessor ... ok
[INFO] [stdout] test api::tests::if_then_false ... ok
[INFO] [stdout] test api::tests::ls_one_per_line ... ok
[INFO] [stdout] test api::tests::if_then_true ... ok
[INFO] [stdout] test api::tests::if_no_else_unmatched ... ok
[INFO] [stdout] test api::tests::if_with_command_condition ... ok
[INFO] [stdout] test api::tests::multiple_bare_assignments ... ok
[INFO] [stdout] test api::tests::mkdir_p_creates_parents ... ok
[INFO] [stdout] test api::tests::mkdir_p_and_ls ... ok
[INFO] [stdout] test api::tests::mkdir_creates_directory ... ok
[INFO] [stdout] test api::tests::ls_root_empty ... ok
[INFO] [stdout] test api::tests::or_success_skips ... ok
[INFO] [stdout] test api::tests::negation_with_and_or ... ok
[INFO] [stdout] test api::tests::multiline_double_paren_can_parse_as_command_group ... ok
[INFO] [stdout] test api::tests::pipeline_negation_false ... ok
[INFO] [stdout] test api::tests::output_and_error_redirect ... ok
[INFO] [stdout] test api::tests::pipeline_negation_true ... ok
[INFO] [stdout] test api::tests::or_failure_runs ... ok
[INFO] [stdout] test api::tests::nested_if_in_for ... ok
[INFO] [stdout] test api::tests::pipeline_with_variable ... ok
[INFO] [stdout] test api::tests::pwd_command ... ok
[INFO] [stdout] test api::tests::read_multiple_vars ... ok
[INFO] [stdout] test api::tests::redirect_stderr_to_stdout ... ok
[INFO] [stdout] test api::tests::redirect_stdin_from_file ... ok
[INFO] [stdout] test api::tests::read_from_stdin ... ok
[INFO] [stdout] test api::tests::readonly_variable ... ok
[INFO] [stdout] test api::tests::redirect_append ... ok
[INFO] [stdout] test api::tests::register_default_commands_includes_new ... ok
[INFO] [stdout] test api::tests::redirect_stderr_to_file ... ok
[INFO] [stdout] test api::tests::quoted_glob_prefix_stays_literal ... ok
[INFO] [stdout] test api::tests::redirect_dev_null ... ok
[INFO] [stdout] test api::tests::redirect_write_then_cat ... ok
[INFO] [stdout] test api::tests::redirect_stdout_to_file ... ok
[INFO] [stdout] test api::tests::sequential_commands ... ok
[INFO] [stdout] test api::tests::sequential_exit_code_is_last ... ok
[INFO] [stdout] test api::tests::pwd_after_cd ... ok
[INFO] [stdout] test api::tests::set_options ... ok
[INFO] [stdout] test api::tests::set_and_expand_positional ... ok
[INFO] [stdout] test api::tests::shift_positional_params ... ok
[INFO] [stdout] test api::tests::set_positional_params ... ok
[INFO] [stdout] test api::tests::shift_and_expand ... ok
[INFO] [stdout] test api::tests::state_persists_across_exec_calls ... ok
[INFO] [stdout] test api::tests::set_pipefail_option ... ok
[INFO] [stdout] test api::tests::subshell_function_can_return ... ok
[INFO] [stdout] test api::tests::subshell_basic ... ok
[INFO] [stdout] test api::tests::touch_and_ls ... ok
[INFO] [stdout] test api::tests::should_exit_accessor ... ok
[INFO] [stdout] test api::tests::subshell_isolates_cwd ... ok
[INFO] [stdout] test api::tests::tilde_expands_to_home ... ok
[INFO] [stdout] test api::tests::subshell_isolates_fs_writes ... ok
[INFO] [stdout] test api::tests::touch_existing_file_no_error ... ok
[INFO] [stdout] test api::tests::subshell_isolates_variables ... ok
[INFO] [stdout] test api::tests::subshell_propagates_exit_code ... ok
[INFO] [stdout] test api::tests::touch_creates_file ... ok
[INFO] [stdout] test api::tests::unset_removes_var ... ok
[INFO] [stdout] test api::tests::until_loop_runs_once_when_condition_false ... ok
[INFO] [stdout] test api::tests::while_loop_executes_body ... ok
[INFO] [stdout] test commands::awk::lexer::tests::tokenize_comparison_ops ... ok
[INFO] [stdout] test commands::awk::lexer::tests::tokenize_begin_end ... ok
[INFO] [stdout] test commands::awk::lexer::tests::tokenize_simple_print ... ok
[INFO] [stdout] test commands::awk::lexer::tests::tokenize_string_escapes ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_assignment_ops ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_for_in ... ok
[INFO] [stdout] test commands::awk::lexer::tests::tokenize_regex ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_begin_end ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_regex_pattern ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_simple_print ... ok
[INFO] [stdout] test api::tests::whitespace_only_input ... ok
[INFO] [stdout] test api::tests::true_command ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_ternary ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_range_pattern ... ok
[INFO] [stdout] test commands::awk::runtime::tests::arithmetic_in_output ... ok
[INFO] [stdout] test commands::awk::parser::tests::parse_if_else ... ok
[INFO] [stdout] test commands::awk::runtime::tests::assignment_operators ... ok
[INFO] [stdout] test commands::awk::runtime::tests::array_word_count ... ok
[INFO] [stdout] test commands::awk::runtime::tests::begin_end_sum ... ok
[INFO] [stdout] test commands::awk::runtime::tests::custom_field_separator ... ok
[INFO] [stdout] test commands::awk::runtime::tests::delete_array_element ... ok
[INFO] [stdout] test commands::awk::runtime::tests::continue_in_loop ... ok
[INFO] [stdout] test commands::awk::runtime::tests::do_while_loop ... ok
[INFO] [stdout] test commands::awk::runtime::tests::delete_entire_array ... ok
[INFO] [stdout] test commands::awk::runtime::tests::empty_input ... ok
[INFO] [stdout] test commands::awk::runtime::tests::empty_fs_splits_chars ... ok
[INFO] [stdout] test commands::awk::runtime::tests::field_assignment_rebuilds_record ... ok
[INFO] [stdout] test commands::awk::runtime::tests::exit_statement ... ok
[INFO] [stdout] test commands::awk::runtime::tests::expression_pattern ... ok
[INFO] [stdout] test commands::awk::runtime::tests::gsub_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::if_else_statement ... ok
[INFO] [stdout] test commands::awk::runtime::tests::implicit_concatenation ... ok
[INFO] [stdout] test commands::awk::runtime::tests::in_array_test ... ok
[INFO] [stdout] test commands::awk::runtime::tests::index_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::int_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::logical_operators ... ok
[INFO] [stdout] test commands::awk::runtime::tests::modulo_operator ... ok
[INFO] [stdout] test commands::awk::runtime::tests::multi_dim_array_subsep ... ok
[INFO] [stdout] test commands::awk::runtime::tests::multi_file_fnr_nr ... ok
[INFO] [stdout] test commands::awk::runtime::tests::for_loop ... ok
[INFO] [stdout] test commands::awk::runtime::tests::next_statement ... ok
[INFO] [stdout] test commands::awk::runtime::tests::length_of_array ... ok
[INFO] [stdout] test commands::awk::runtime::tests::no_action_implicit_print ... ok
[INFO] [stdout] test commands::awk::runtime::tests::nr_and_nf ... ok
[INFO] [stdout] test api::tests::variable_in_redirect_target ... ok
[INFO] [stdout] test commands::awk::runtime::tests::match_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::print_all_fields ... ok
[INFO] [stdout] test commands::awk::runtime::tests::break_in_loop ... ok
[INFO] [stdout] test commands::awk::runtime::tests::power_operator ... ok
[INFO] [stdout] test commands::awk::runtime::tests::print_first_field ... ok
[INFO] [stdout] test api::tests::until_loop_basic ... ok
[INFO] [stdout] test api::tests::while_loop_basic ... ok
[INFO] [stdout] test commands::awk::runtime::tests::print_with_ofs ... ok
[INFO] [stdout] test commands::awk::runtime::tests::printf_formatting ... ok
[INFO] [stdout] test commands::awk::runtime::tests::split_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::range_pattern ... ok
[INFO] [stdout] test commands::awk::runtime::tests::sprintf_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::single_field_record ... ok
[INFO] [stdout] test commands::awk::runtime::tests::regex_match_operator ... ok
[INFO] [stdout] test commands::awk::runtime::tests::regex_not_match_operator ... ok
[INFO] [stdout] test commands::awk::runtime::tests::regex_pattern ... ok
[INFO] [stdout] test commands::awk::runtime::tests::ternary_expression ... ok
[INFO] [stdout] test commands::awk::runtime::tests::sub_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::string_comparison ... ok
[INFO] [stdout] test commands::awk::runtime::tests::tolower_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::substr_function ... ok
[INFO] [stdout] test commands::awk::runtime::tests::variable_flag ... ok
[INFO] [stdout] test commands::awk::runtime::tests::unary_not ... ok
[INFO] [stdout] test commands::awk::runtime::tests::while_loop ... ok
[INFO] [stdout] test commands::awk::runtime::tests::uninitialized_variables ... ok
[INFO] [stdout] test commands::awk::tests::integration_begin_only ... ok
[INFO] [stdout] test commands::awk::tests::integration_begin_end_sum ... ok
[INFO] [stdout] test commands::awk::tests::integration_break_continue ... ok
[INFO] [stdout] test commands::awk::tests::integration_assignment_operators ... ok
[INFO] [stdout] test commands::awk::tests::integration_arithmetic ... ok
[INFO] [stdout] test commands::awk::tests::integration_array_word_count ... ok
[INFO] [stdout] test commands::awk::tests::integration_empty_input ... ok
[INFO] [stdout] test commands::awk::tests::integration_delete_array ... ok
[INFO] [stdout] test commands::awk::tests::integration_do_while ... ok
[INFO] [stdout] test commands::awk::tests::integration_end_only ... ok
[INFO] [stdout] test commands::awk::tests::integration_error_on_no_program ... ok
[INFO] [stdout] test commands::awk::tests::integration_exit_code ... ok
[INFO] [stdout] test commands::awk::tests::integration_field_assignment ... ok
[INFO] [stdout] test commands::awk::tests::integration_if_else ... ok
[INFO] [stdout] test commands::awk::tests::integration_field_separator ... ok
[INFO] [stdout] test commands::awk::tests::integration_expression_pattern ... ok
[INFO] [stdout] test commands::awk::tests::integration_empty_fs ... ok
[INFO] [stdout] test commands::awk::tests::integration_index_func ... ok
[INFO] [stdout] test commands::awk::tests::integration_logical_ops ... ok
[INFO] [stdout] test commands::awk::tests::integration_length_func ... ok
[INFO] [stdout] test commands::awk::tests::integration_modulo ... ok
[INFO] [stdout] test commands::awk::tests::integration_next ... ok
[INFO] [stdout] test commands::awk::tests::integration_multi_file ... ok
[INFO] [stdout] test commands::awk::tests::integration_no_action_implicit_print ... ok
[INFO] [stdout] test commands::awk::runtime::tests::toupper_function ... ok
[INFO] [stdout] test commands::awk::tests::integration_pipe_stdin ... ok
[INFO] [stdout] test commands::awk::tests::integration_ofs ... ok
[INFO] [stdout] test commands::awk::tests::integration_power ... ok
[INFO] [stdout] test commands::awk::tests::integration_pre_post_increment ... ok
[INFO] [stdout] test commands::awk::tests::integration_printf ... ok
[INFO] [stdout] test commands::awk::tests::integration_print_first_field ... ok
[INFO] [stdout] test commands::awk::tests::integration_progfile ... ok
[INFO] [stdout] test commands::awk::tests::integration_match_function ... ok
[INFO] [stdout] test commands::awk::tests::integration_nr_nf ... ok
[INFO] [stdout] test commands::awk::tests::integration_single_field ... ok
[INFO] [stdout] test commands::awk::tests::integration_int ... ok
[INFO] [stdout] test commands::awk::tests::integration_split_function ... ok
[INFO] [stdout] test commands::awk::tests::integration_in_array ... ok
[INFO] [stdout] test commands::awk::tests::integration_sprintf ... ok
[INFO] [stdout] test commands::awk::tests::integration_implicit_concat ... ok
[INFO] [stdout] test commands::awk::tests::integration_substr ... ok
[INFO] [stdout] test commands::awk::tests::integration_ternary ... ok
[INFO] [stdout] test commands::awk::tests::integration_string_functions ... ok
[INFO] [stdout] test commands::awk::tests::integration_regex_filter ... ok
[INFO] [stdout] test commands::awk::tests::integration_uninitialized ... ok
[INFO] [stdout] test commands::awk::tests::integration_variable ... ok
[INFO] [stdout] test commands::awk::tests::integration_regex_match_not_match ... ok
[INFO] [stdout] test commands::awk::tests::integration_sub_gsub ... ok
[INFO] [stdout] test commands::awk::tests::integration_very_long_line ... ok
[INFO] [stdout] test commands::awk::tests::integration_range_pattern ... ok
[INFO] [stdout] test commands::compression::tests::gzip_nonexistent_file ... ok
[INFO] [stdout] test commands::compression::tests::gzip_to_stdout ... ok
[INFO] [stdout] test commands::compression::tests::tar_change_dir ... ok
[INFO] [stdout] test commands::compression::tests::tar_create_and_extract_file ... ok
[INFO] [stdout] test commands::compression::tests::gzip_keep_original ... ok
[INFO] [stdout] test commands::compression::tests::tar_create_and_list ... ok
[INFO] [stdout] test commands::compression::tests::gzip_stdin_compress_decompress_roundtrip ... ok
[INFO] [stdout] test commands::compression::tests::gzip_decompress_file ... ok
[INFO] [stdout] test commands::compression::tests::tar_create_directory ... ok
[INFO] [stdout] test commands::compression::tests::tar_empty_archive_refused ... ok
[INFO] [stdout] test commands::compression::tests::tar_no_mode_specified ... ok
[INFO] [stdout] test commands::compression::tests::tar_verbose ... ok
[INFO] [stdout] test commands::diff_cmd::tests::absent_file_without_new_file_flag_errors ... ok
[INFO] [stdout] test commands::compression::tests::gzip_compress_file_creates_gz ... ok
[INFO] [stdout] test commands::diff_cmd::tests::brief_mode ... ok
[INFO] [stdout] test commands::compression::tests::zcat_file ... ok
[INFO] [stdout] test commands::diff_cmd::tests::brief_identical_no_output ... ok
[INFO] [stdout] test commands::diff_cmd::tests::combined_flags ... ok
[INFO] [stdout] test commands::diff_cmd::tests::different_files_exit_one_normal_diff ... ok
[INFO] [stdout] test commands::diff_cmd::tests::context_format_headers ... ok
[INFO] [stdout] test commands::diff_cmd::tests::context_format_uses_exclamation_for_replace ... ok
[INFO] [stdout] test commands::diff_cmd::tests::context_format_custom_context ... ok
[INFO] [stdout] test commands::diff_cmd::tests::directories_without_recursive_flag_errors ... ok
[INFO] [stdout] test commands::diff_cmd::tests::empty_files_identical ... ok
[INFO] [stdout] test commands::diff_cmd::tests::identical_files_exit_zero_no_output ... ok
[INFO] [stdout] test commands::diff_cmd::tests::ignore_case ... ok
[INFO] [stdout] test commands::diff_cmd::tests::ignore_all_whitespace ... ok
[INFO] [stdout] test commands::compression::tests::gzip_compression_levels ... ok
[INFO] [stdout] test commands::diff_cmd::tests::ignore_case_affects_diff_output ... ok
[INFO] [stdout] test commands::compression::tests::gunzip_file ... ok
[INFO] [stdout] test commands::diff_cmd::tests::ignore_space_change ... ok
[INFO] [stdout] test commands::diff_cmd::tests::new_file_treats_absent_as_empty ... ok
[INFO] [stdout] test commands::diff_cmd::tests::no_trailing_newline_files ... ok
[INFO] [stdout] test commands::diff_cmd::tests::new_file_flag_with_unified ... ok
[INFO] [stdout] test commands::diff_cmd::tests::normal_diff_add_lines ... ok
[INFO] [stdout] test commands::diff_cmd::tests::label_overrides_filename ... ok
[INFO] [stdout] test commands::diff_cmd::tests::ignore_blank_lines ... ok
[INFO] [stdout] test commands::diff_cmd::tests::new_file_absent_first_file ... ok
[INFO] [stdout] test commands::diff_cmd::tests::report_identical_files ... ok
[INFO] [stdout] test commands::diff_cmd::tests::normal_diff_delete_lines ... ok
[INFO] [stdout] test commands::diff_cmd::tests::single_line_files ... ok
[INFO] [stdout] test commands::compression::tests::tar_with_gzip ... ok
[INFO] [stdout] test commands::diff_cmd::tests::stdin_via_dash ... ok
[INFO] [stdout] test commands::diff_cmd::tests::recursive_nested_directories ... ok
[INFO] [stdout] test commands::diff_cmd::tests::requires_two_arguments ... ok
[INFO] [stdout] test commands::diff_cmd::tests::recursive_directory_comparison ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_exec_each ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_maxdepth ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_default_path_is_dot ... ok
[INFO] [stdout] test commands::diff_cmd::tests::unified_custom_context ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_nonexistent_path ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_all_from_root ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_by_name_pattern ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_mindepth ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_empty ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_not_name ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_type_file ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_type_directory ... ok
[INFO] [stdout] test commands::exec_cmds::tests::find_or_expression ... ok
[INFO] [stdout] test commands::exec_cmds::tests::xargs_null_delimited ... ok
[INFO] [stdout] test commands::exec_cmds::tests::xargs_with_max_args ... ok
[INFO] [stdout] test commands::exec_cmds::tests::xargs_with_replace ... ok
[INFO] [stdout] test commands::file_ops::tests::chmod_invalid_mode ... ok
[INFO] [stdout] test commands::file_ops::tests::chmod_basic ... ok
[INFO] [stdout] test commands::file_ops::tests::chmod_missing_operand ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_dir_without_r_fails ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_basic_file ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_missing_operand ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_double_dash ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_nonexistent_source ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_into_directory ... ok
[INFO] [stdout] test commands::file_ops::tests::ln_hard ... ok
[INFO] [stdout] test commands::file_ops::tests::cp_recursive ... ok
[INFO] [stdout] test commands::file_ops::tests::ln_missing_operand ... ok
[INFO] [stdout] test commands::file_ops::tests::ln_symbolic ... ok
[INFO] [stdout] test commands::file_ops::tests::mv_basic ... ok
[INFO] [stdout] test commands::file_ops::tests::mv_into_directory ... ok
[INFO] [stdout] test commands::file_ops::tests::rm_dir_without_r_fails ... ok
[INFO] [stdout] test commands::file_ops::tests::mv_missing_operand ... ok
[INFO] [stdout] test commands::file_ops::tests::rm_force_no_args ... ok
[INFO] [stdout] test commands::file_ops::tests::rm_force_nonexistent ... ok
[INFO] [stdout] test commands::file_ops::tests::rm_file ... ok
[INFO] [stdout] test commands::file_ops::tests::stat_directory ... ok
[INFO] [stdout] test commands::file_ops::tests::stat_file ... ok
[INFO] [stdout] test commands::file_ops::tests::rm_no_args ... ok
[INFO] [stdout] test commands::file_ops::tests::rm_recursive_dir ... ok
[INFO] [stdout] test commands::file_ops::tests::stat_nonexistent ... ok
[INFO] [stdout] test commands::file_ops::tests::tee_append ... ok
[INFO] [stdout] test commands::file_ops::tests::tee_write_to_file_and_stdout ... ok
[INFO] [stdout] test commands::jq_cmd::tests::argjson_invalid_json_error ... ok
[INFO] [stdout] test commands::diff_cmd::tests::unified_format_headers_and_hunks ... ok
[INFO] [stdout] test commands::exec_cmds::tests::xargs_custom_delimiter ... ok
[INFO] [stdout] test commands::exec_cmds::tests::xargs_default_echo ... ok
[INFO] [stdout] test commands::jq_cmd::tests::array_iterate_with_field ... ok
[INFO] [stdout] test commands::jq_cmd::tests::arg_variable_injection ... ok
[INFO] [stdout] test commands::jq_cmd::tests::argjson_variable_injection ... ok
[INFO] [stdout] test commands::jq_cmd::tests::alternative_operator ... ok
[INFO] [stdout] test commands::jq_cmd::tests::array_index ... ok
[INFO] [stdout] test commands::jq_cmd::tests::exit_status_no_output ... ok
[INFO] [stdout] test commands::jq_cmd::tests::double_dash_end_of_opts ... ok
[INFO] [stdout] test commands::jq_cmd::tests::combined_short_flags ... ok
[INFO] [stdout] test commands::jq_cmd::tests::compact_output ... ok
[INFO] [stdout] test commands::jq_cmd::tests::exit_status_null ... ok
[INFO] [stdout] test commands::jq_cmd::tests::exit_status_false ... ok
[INFO] [stdout] test commands::jq_cmd::tests::exit_status_truthy ... ok
[INFO] [stdout] test commands::jq_cmd::tests::field_access ... ok
[INFO] [stdout] test commands::jq_cmd::tests::keys_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::has_key_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::invalid_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::identity_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::if_then_else ... ok
[INFO] [stdout] test commands::jq_cmd::tests::multiple_vfs_files ... ok
[INFO] [stdout] test commands::jq_cmd::tests::length_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::no_filter_provided ... ok
[INFO] [stdout] test commands::jq_cmd::tests::invalid_json_input ... ok
[INFO] [stdout] test commands::jq_cmd::tests::multiple_inputs ... ok
[INFO] [stdout] test commands::jq_cmd::tests::join_output ... ok
[INFO] [stdout] test commands::jq_cmd::tests::pipe_chain ... ok
[INFO] [stdout] test commands::jq_cmd::tests::map_transform ... ok
[INFO] [stdout] test commands::jq_cmd::tests::nested_field_access ... ok
[INFO] [stdout] test commands::jq_cmd::tests::null_input ... ok
[INFO] [stdout] test commands::jq_cmd::tests::slurp_mode ... ok
[INFO] [stdout] test commands::jq_cmd::tests::raw_input_mode ... ok
[INFO] [stdout] test commands::jq_cmd::tests::raw_output ... ok
[INFO] [stdout] test commands::jq_cmd::tests::reduce_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::read_from_vfs_file ... ok
[INFO] [stdout] test commands::jq_cmd::tests::split_and_join ... ok
[INFO] [stdout] test commands::jq_cmd::tests::slurp_raw_input ... ok
[INFO] [stdout] test commands::jq_cmd::tests::stdin_dash_as_file ... ok
[INFO] [stdout] test commands::navigation::tests::basename_missing ... ok
[INFO] [stdout] test commands::jq_cmd::tests::runtime_error_exit_code_5 ... ok
[INFO] [stdout] test commands::navigation::tests::basename_simple ... ok
[INFO] [stdout] test commands::navigation::tests::basename_root ... ok
[INFO] [stdout] test commands::jq_cmd::tests::select_filter ... ok
[INFO] [stdout] test commands::navigation::tests::basename_with_suffix ... ok
[INFO] [stdout] test commands::navigation::tests::dirname_missing ... ok
[INFO] [stdout] test commands::jq_cmd::tests::type_filter ... ok
[INFO] [stdout] test commands::navigation::tests::dirname_no_dir ... ok
[INFO] [stdout] test commands::navigation::tests::basename_trailing_slash ... ok
[INFO] [stdout] test commands::navigation::tests::dirname_root ... ok
[INFO] [stdout] test commands::navigation::tests::dirname_simple ... ok
[INFO] [stdout] test commands::navigation::tests::realpath_missing ... ok
[INFO] [stdout] test commands::navigation::tests::tree_basic ... ok
[INFO] [stdout] test commands::navigation::tests::realpath_absolute ... ok
[INFO] [stdout] test commands::navigation::tests::tree_nonexistent ... ok
[INFO] [stdout] test commands::net::tests::data_flag_defaults_method_to_post ... ok
[INFO] [stdout] test commands::navigation::tests::tree_nested ... ok
[INFO] [stdout] test commands::net::tests::is_redirect_codes ... ok
[INFO] [stdout] test commands::net::tests::combined_short_flags_parsed ... ok
[INFO] [stdout] test commands::net::tests::method_not_allowed_returns_error ... ok
[INFO] [stdout] test commands::net::tests::no_url_returns_error ... ok
[INFO] [stdout] test commands::net::tests::network_disabled_returns_error ... ok
[INFO] [stdout] test commands::net::tests::parse_header_no_colon ... ok
[INFO] [stdout] test commands::net::tests::parse_header_valid ... ok
[INFO] [stdout] test commands::net::tests::read_body_limited_allows_within_limit ... ok
[INFO] [stdout] test commands::net::tests::resolve_redirect_absolute ... ok
[INFO] [stdout] test commands::net::tests::read_body_limited_enforces_max_size ... ok
[INFO] [stdout] test commands::net::tests::format_response_headers_basic ... ok
[INFO] [stdout] test commands::net::tests::unknown_option_returns_error ... ok
[INFO] [stdout] test commands::net::tests::resolve_redirect_relative ... ok
[INFO] [stdout] test commands::net::tests::url_not_allowed_returns_error ... ok
[INFO] [stdout] test commands::net::tests::write_out_http_code ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_alternation ... ok
[INFO] [stdout] test commands::net::tests::head_flag_sets_head_method ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_bare_parens_escaped ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_bare_pipe_escaped ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_bracket_with_closing_first ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_character_class_unchanged ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_empty_string ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_escaped_plus_becomes_quantifier ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_groups_to_ere ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_intervals_to_ere ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_mixed_escapes ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_negated_character_class ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_plus_question_literal_by_default ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_regular_escapes_preserved ... ok
[INFO] [stdout] test commands::regex_util::tests::bre_trailing_backslash ... ok
[INFO] [stdout] test commands::sed::tests::append_text ... ok
[INFO] [stdout] test commands::sed::tests::address_range_substitute ... ok
[INFO] [stdout] test commands::sed::tests::append_with_quiet ... ok
[INFO] [stdout] test commands::sed::tests::append_then_substitute ... ok
[INFO] [stdout] test commands::sed::tests::alternate_delimiter ... ok
[INFO] [stdout] test commands::sed::tests::backreferences_bre ... ok
[INFO] [stdout] test commands::sed::tests::branch_join_lines ... ok
[INFO] [stdout] test commands::sed::tests::change_text ... ok
[INFO] [stdout] test commands::sed::tests::branch_if_not_substituted ... ok
[INFO] [stdout] test commands::sed::tests::combined_ne_flag ... ok
[INFO] [stdout] test commands::jq_cmd::tests::sort_keys_output ... ok
[INFO] [stdout] test commands::jq_cmd::tests::to_entries_filter ... ok
[INFO] [stdout] test commands::jq_cmd::tests::test_regex ... ok
[INFO] [stdout] test commands::jq_cmd::tests::values_filter ... ok
[INFO] [stdout] test commands::sed::tests::command_group ... ok
[INFO] [stdout] test commands::sed::tests::delete_line_3 ... ok
[INFO] [stdout] test commands::sed::tests::delete_pattern_match ... ok
[INFO] [stdout] test commands::sed::tests::dollar_in_replacement ... ok
[INFO] [stdout] test commands::sed::tests::empty_input ... ok
[INFO] [stdout] test commands::sed::tests::in_place_edit ... ok
[INFO] [stdout] test commands::sed::tests::multiple_expressions ... ok
[INFO] [stdout] test commands::sed::tests::hold_space_join_lines ... ok
[INFO] [stdout] test commands::sed::tests::multiple_files ... ok
[INFO] [stdout] test commands::sed::tests::negated_address ... ok
[INFO] [stdout] test commands::sed::tests::extended_regex_flag ... ok
[INFO] [stdout] test commands::sed::tests::insert_text ... ok
[INFO] [stdout] test commands::sed::tests::last_line_address ... ok
[INFO] [stdout] test commands::sed::tests::next_append ... ok
[INFO] [stdout] test commands::sed::tests::line_regex_mixed_range ... ok
[INFO] [stdout] test commands::sed::tests::next_line ... ok
[INFO] [stdout] test commands::sed::tests::no_script_error ... ok
[INFO] [stdout] test commands::sed::tests::print_line_number ... ok
[INFO] [stdout] test commands::sed::tests::exchange_hold_pattern ... ok
[INFO] [stdout] test commands::sed::tests::print_lines_1_to_5 ... ok
[INFO] [stdout] test commands::sed::tests::pipeline_stdin ... ok
[INFO] [stdout] test commands::sed::tests::quiet_with_print ... ok
[INFO] [stdout] test commands::sed::tests::quit_after_first_line ... ok
[INFO] [stdout] test commands::sed::tests::regex_address_substitute ... ok
[INFO] [stdout] test commands::sed::tests::stdin_dash_argument ... ok
[INFO] [stdout] test commands::sed::tests::regex_range ... ok
[INFO] [stdout] test commands::sed::tests::step_address_delete_even_lines ... ok
[INFO] [stdout] test commands::sed::tests::step_address ... ok
[INFO] [stdout] test commands::sed::tests::step_address_zero_step ... ok
[INFO] [stdout] test commands::sed::tests::step_address_print_every_third ... ok
[INFO] [stdout] test commands::sed::tests::script_from_file ... ok
[INFO] [stdout] test commands::sed::tests::substitute_with_print_flag ... ok
[INFO] [stdout] test commands::sed::tests::substitute_basic ... ok
[INFO] [stdout] test commands::sed::tests::substitute_no_match_passthrough ... ok
[INFO] [stdout] test commands::sed::tests::substitute_global ... ok
[INFO] [stdout] test commands::sed::tests::translate_replacement_groups ... ok
[INFO] [stdout] test commands::tests::echo_flag_n ... ok
[INFO] [stdout] test commands::sed::tests::transliterate_basic ... ok
[INFO] [stdout] test commands::tests::echo_combined_flags ... ok
[INFO] [stdout] test commands::sed::tests::whole_match_ampersand ... ok
[INFO] [stdout] test commands::tests::echo_no_args ... ok
[INFO] [stdout] test commands::tests::echo_non_flag_dash_arg ... ok
[INFO] [stdout] test commands::sed::tests::substitute_case_insensitive ... ok
[INFO] [stdout] test commands::tests::echo_simple_text ... ok
[INFO] [stdout] test commands::tests::false_fails ... ok
[INFO] [stdout] test commands::text::tests::column_empty_input ... ok
[INFO] [stdout] test commands::tests::true_succeeds ... ok
[INFO] [stdout] test commands::tests::echo_escape_stop_output ... ok
[INFO] [stdout] test commands::text::tests::column_fill_mode ... ok
[INFO] [stdout] test commands::tests::echo_escape_newline ... ok
[INFO] [stdout] test commands::tests::echo_escape_tab ... ok
[INFO] [stdout] test commands::text::tests::comm_suppress_col2 ... ok
[INFO] [stdout] test commands::text::tests::column_table_custom_sep ... ok
[INFO] [stdout] test commands::text::tests::comm_suppress_col3 ... ok
[INFO] [stdout] test commands::text::tests::column_table_custom_output_sep ... ok
[INFO] [stdout] test commands::text::tests::comm_with_empty_file ... ok
[INFO] [stdout] test commands::text::tests::cut_characters ... ok
[INFO] [stdout] test commands::text::tests::cut_fields ... ok
[INFO] [stdout] test commands::text::tests::expand_custom_width ... ok
[INFO] [stdout] test commands::text::tests::cut_missing_spec ... ok
[INFO] [stdout] test commands::text::tests::expand_default ... ok
[INFO] [stdout] test commands::text::tests::column_table_mode ... ok
[INFO] [stdout] test commands::text::tests::comm_basic ... ok
[INFO] [stdout] test commands::text::tests::comm_suppress_col1 ... ok
[INFO] [stdout] test commands::text::tests::expand_mid_line_tab ... ok
[INFO] [stdout] test commands::text::tests::expand_from_file ... ok
[INFO] [stdout] test commands::text::tests::fmt_empty_input ... ok
[INFO] [stdout] test commands::text::tests::fmt_preserves_paragraph_breaks ... ok
[INFO] [stdout] test commands::text::tests::expand_empty_input ... ok
[INFO] [stdout] test commands::text::tests::expand_tab_positions ... ok
[INFO] [stdout] test commands::text::tests::comm_suppress_col12 ... ok
[INFO] [stdout] test commands::text::tests::fmt_split_only ... ok
[INFO] [stdout] test commands::text::tests::fold_default_width ... ok
[INFO] [stdout] test commands::text::tests::fmt_reflow_paragraph ... ok
[INFO] [stdout] test commands::text::tests::fold_custom_width ... ok
[INFO] [stdout] test commands::text::tests::grep_basic_match ... ok
[INFO] [stdout] test commands::text::tests::grep_before_context ... ok
[INFO] [stdout] test commands::text::tests::grep_after_context ... ok
[INFO] [stdout] test commands::text::tests::grep_basic_regexp_bre_translation ... ok
[INFO] [stdout] test commands::text::tests::grep_bre_pipe_literal ... ok
[INFO] [stdout] test commands::text::tests::grep_bre_default_plus_literal ... ok
[INFO] [stdout] test commands::text::tests::grep_context_separator ... ok
[INFO] [stdout] test commands::text::tests::grep_context_both ... ok
[INFO] [stdout] test commands::text::tests::grep_context_long_flag_equals ... ok
[INFO] [stdout] test commands::text::tests::grep_context_with_line_numbers ... ok
[INFO] [stdout] test commands::text::tests::grep_count ... ok
[INFO] [stdout] test commands::text::tests::grep_bre_escaped_plus_is_quantifier ... ok
[INFO] [stdout] test commands::text::tests::grep_empty_pattern_matches_all ... ok
[INFO] [stdout] test commands::text::tests::grep_e_pattern_starting_with_dash ... ok
[INFO] [stdout] test commands::text::tests::grep_end_of_options_separator ... ok
[INFO] [stdout] test commands::text::tests::grep_e_combined_value ... ok
[INFO] [stdout] test commands::text::tests::grep_extended_regexp_alternation ... ok
[INFO] [stdout] test commands::text::tests::grep_extended_regexp_groups ... ok
[INFO] [stdout] test commands::text::tests::grep_files_with_matches ... ok
[INFO] [stdout] test commands::text::tests::grep_files_without_match ... ok
[INFO] [stdout] test commands::text::tests::grep_files_without_match_all_matched ... ok
[INFO] [stdout] test commands::text::tests::grep_combined_short_flags ... ok
[INFO] [stdout] test commands::text::tests::grep_case_insensitive ... ok
[INFO] [stdout] test commands::text::tests::grep_combined_recursive_insensitive_line_numbers ... ok
[INFO] [stdout] test commands::text::tests::grep_files_without_match_partial ... ok
[INFO] [stdout] test commands::text::tests::grep_fixed_string ... ok
[INFO] [stdout] test commands::text::tests::grep_line_regexp ... ok
[INFO] [stdout] test commands::text::tests::grep_max_count ... ok
[INFO] [stdout] test commands::text::tests::grep_max_count_with_context ... ok
[INFO] [stdout] test commands::text::tests::grep_missing_pattern ... ok
[INFO] [stdout] test commands::text::tests::grep_no_filename ... ok
[INFO] [stdout] test commands::text::tests::grep_long_flags ... ok
[INFO] [stdout] test commands::text::tests::grep_invert ... ok
[INFO] [stdout] test commands::text::tests::grep_no_matches_exit_code_1 ... ok
[INFO] [stdout] test commands::text::tests::grep_line_numbers ... ok
[INFO] [stdout] test commands::text::tests::grep_no_match ... ok
[INFO] [stdout] test commands::text::tests::grep_recursive_no_matches_exit_1 ... ok
[INFO] [stdout] test commands::text::tests::grep_recursive_on_explicit_directory ... ok
[INFO] [stdout] test commands::text::tests::grep_patterns_from_file ... ok
[INFO] [stdout] test commands::text::tests::grep_perl_regexp_warns ... ok
[INFO] [stdout] test commands::text::tests::grep_quiet_match ... ok
[INFO] [stdout] test commands::text::tests::grep_multiple_patterns_with_e ... ok
[INFO] [stdout] test commands::text::tests::grep_quiet_no_match ... ok
[INFO] [stdout] test commands::text::tests::grep_recursive_search ... ok
[INFO] [stdout] test commands::text::tests::grep_recursive_with_exclude ... ok
[INFO] [stdout] test commands::text::tests::grep_recursive_with_include ... ok
[INFO] [stdout] test commands::text::tests::grep_with_filename ... ok
[INFO] [stdout] test commands::text::tests::grep_stdin ... ok
[INFO] [stdout] test commands::text::tests::grep_only_matching ... ok
[INFO] [stdout] test commands::text::tests::grep_only_matching_with_filename ... ok
[INFO] [stdout] test commands::text::tests::grep_word_and_line_regexp_combined ... ok
[INFO] [stdout] test commands::text::tests::head_file ... ok
[INFO] [stdout] test commands::text::tests::join_a2_unpairable_file2 ... ok
[INFO] [stdout] test commands::text::tests::head_n3 ... ok
[INFO] [stdout] test commands::text::tests::join_basic ... ok
[INFO] [stdout] test commands::text::tests::join_duplicate_keys_cross_product ... ok
[INFO] [stdout] test commands::text::tests::join_unpairable ... ok
[INFO] [stdout] test commands::text::tests::join_output_format ... ok
[INFO] [stdout] test commands::text::tests::nl_empty_line_not_numbered ... ok
[INFO] [stdout] test commands::text::tests::head_default ... ok
[INFO] [stdout] test commands::text::tests::join_empty_replacement ... ok
[INFO] [stdout] test commands::text::tests::parse_leading_number_cases ... ok
[INFO] [stdout] test commands::text::tests::paste_basic ... ok
[INFO] [stdout] test commands::text::tests::paste_custom_delimiter ... ok
[INFO] [stdout] test commands::text::tests::grep_word_regexp ... ok
[INFO] [stdout] test commands::text::tests::grep_word_regexp_no_partial ... ok
[INFO] [stdout] test commands::text::tests::join_with_separator ... ok
[INFO] [stdout] test commands::text::tests::nl_basic ... ok
[INFO] [stdout] test commands::text::tests::paste_stdin ... ok
[INFO] [stdout] test commands::text::tests::printf_alt_form_octal ... ok
[INFO] [stdout] test commands::text::tests::printf_alt_form_hex ... ok
[INFO] [stdout] test commands::text::tests::printf_int ... ok
[INFO] [stdout] test commands::text::tests::printf_octal ... ok
[INFO] [stdout] test commands::text::tests::printf_left_aligned_string ... ok
[INFO] [stdout] test commands::text::tests::printf_percent ... ok
[INFO] [stdout] test commands::text::tests::printf_percent_c_uses_first_byte_of_utf8_string ... ok
[INFO] [stdout] test commands::text::tests::printf_multiple_args_cycle ... ok
[INFO] [stdout] test commands::text::tests::printf_plus_sign_int ... ok
[INFO] [stdout] test commands::text::tests::printf_no_args ... ok
[INFO] [stdout] test commands::text::tests::printf_plus_sign_negative_int ... ok
[INFO] [stdout] test commands::text::tests::printf_right_aligned_string ... ok
[INFO] [stdout] test commands::text::tests::printf_precision_float ... ok
[INFO] [stdout] test commands::text::tests::printf_string_precision_truncates ... ok
[INFO] [stdout] test commands::text::tests::printf_strftime_looks_only_at_exported_tz ... ok
[INFO] [stdout] test commands::text::tests::printf_char_constant_decodes_invalid_utf8_as_first_byte ... ok
[INFO] [stdout] test commands::text::tests::printf_string ... ok
[INFO] [stdout] test commands::text::tests::printf_unsigned_parsing_matches_bash_overflow_behavior ... ok
[INFO] [stdout] test commands::text::tests::printf_width_and_precision_float ... ok
[INFO] [stdout] test commands::text::tests::sort_basic ... ok
[INFO] [stdout] test commands::text::tests::sort_numeric ... ok
[INFO] [stdout] test commands::text::tests::sort_numeric_with_leading_spaces ... ok
[INFO] [stdout] test commands::text::tests::sort_stdin ... ok
[INFO] [stdout] test commands::text::tests::sort_reverse ... ok
[INFO] [stdout] test commands::text::tests::sort_unique ... ok
[INFO] [stdout] test commands::text::tests::tac_custom_separator ... ok
[INFO] [stdout] test commands::text::tests::printf_zero_padded_int ... ok
[INFO] [stdout] test commands::text::tests::rev_basic ... ok
[INFO] [stdout] test commands::text::tests::printf_char_constant_decodes_too_large_sequence ... ok
[INFO] [stdout] test commands::text::tests::printf_hex ... ok
[INFO] [stdout] test commands::text::tests::printf_star_width ... ok
[INFO] [stdout] test commands::text::tests::tac_empty_input ... ok
[INFO] [stdout] test commands::text::tests::tac_from_file ... ok
[INFO] [stdout] test commands::text::tests::tac_multiple_files ... ok
[INFO] [stdout] test commands::text::tests::tac_reverse_lines ... ok
[INFO] [stdout] test commands::text::tests::tr_missing_operand ... ok
[INFO] [stdout] test commands::text::tests::tac_single_line ... ok
[INFO] [stdout] test commands::text::tests::tail_n2 ... ok
[INFO] [stdout] test commands::text::tests::tr_squeeze ... ok
[INFO] [stdout] test commands::text::tests::tr_translate ... ok
[INFO] [stdout] test commands::text::tests::unexpand_all_spaces ... ok
[INFO] [stdout] test commands::text::tests::unexpand_custom_width ... ok
[INFO] [stdout] test commands::text::tests::tr_delete ... ok
[INFO] [stdout] test commands::text::tests::tail_default ... ok
[INFO] [stdout] test commands::text::tests::unexpand_empty_input ... ok
[INFO] [stdout] test commands::text::tests::uniq_basic ... ok
[INFO] [stdout] test commands::text::tests::uniq_unique_only ... ok
[INFO] [stdout] test commands::text::tests::uniq_count ... ok
[INFO] [stdout] test commands::text::tests::wc_all ... ok
[INFO] [stdout] test commands::text::tests::unexpand_leading_spaces ... ok
[INFO] [stdout] test commands::text::tests::wc_lines_only ... ok
[INFO] [stdout] test commands::text::tests::wc_file ... ok
[INFO] [stdout] test commands::utils::tests::base64_decode ... ok
[INFO] [stdout] test commands::text::tests::unexpand_no_convert_middle_without_a ... ok
[INFO] [stdout] test commands::text::tests::uniq_duplicates_only ... ok
[INFO] [stdout] test commands::utils::tests::base64_encode_file ... ok
[INFO] [stdout] test commands::utils::tests::base64_encode_stdin ... ok
[INFO] [stdout] test commands::utils::tests::date_default ... ok
[INFO] [stdout] test commands::utils::tests::env_assignments_affect_listing ... ok
[INFO] [stdout] test commands::utils::tests::date_epoch ... ok
[INFO] [stdout] test commands::utils::tests::date_invalid_operand ... ok
[INFO] [stdout] test commands::utils::tests::env_executes_subcommand ... ok
[INFO] [stdout] test commands::utils::tests::date_format ... ok
[INFO] [stdout] test commands::utils::tests::env_lists_all ... ok
[INFO] [stdout] test commands::utils::tests::expr_comparison ... ok
[INFO] [stdout] test commands::utils::tests::expr_division_by_zero ... ok
[INFO] [stdout] test commands::utils::tests::expr_modulo ... ok
[INFO] [stdout] test commands::utils::tests::expr_missing_operand ... ok
[INFO] [stdout] test commands::utils::tests::expr_addition ... ok
[INFO] [stdout] test commands::utils::tests::expr_multiplication ... ok
[INFO] [stdout] test commands::utils::tests::expr_length ... ok
[INFO] [stdout] test commands::utils::tests::expr_division ... ok
[INFO] [stdout] test commands::utils::tests::expr_substr ... ok
[INFO] [stdout] test commands::utils::tests::hostname_default ... ok
[INFO] [stdout] test commands::utils::tests::expr_zero_result ... ok
[INFO] [stdout] test commands::utils::tests::md5sum_file ... ok
[INFO] [stdout] test commands::utils::tests::hostname_from_env ... ok
[INFO] [stdout] test commands::utils::tests::md5sum_stdin ... ok
[INFO] [stdout] test commands::utils::tests::printenv_missing ... ok
[INFO] [stdout] test commands::utils::tests::seq_empty ... ok
[INFO] [stdout] test commands::utils::tests::printenv_all ... ok
[INFO] [stdout] test commands::utils::tests::md5sum_nonexistent ... ok
[INFO] [stdout] test commands::utils::tests::seq_range ... ok
[INFO] [stdout] test commands::utils::tests::printenv_specific ... ok
[INFO] [stdout] test commands::utils::tests::seq_single ... ok
[INFO] [stdout] test commands::utils::tests::sha256sum_file ... ok
[INFO] [stdout] test commands::utils::tests::seq_with_increment ... ok
[INFO] [stdout] test commands::utils::tests::sha256sum_stdin ... ok
[INFO] [stdout] test commands::utils::tests::sleep_missing_arg ... ok
[INFO] [stdout] test commands::utils::tests::sleep_zero ... ok
[INFO] [stdout] test commands::utils::tests::uname_default ... ok
[INFO] [stdout] test commands::utils::tests::sleep_invalid_arg ... ok
[INFO] [stdout] test commands::utils::tests::uname_all ... ok
[INFO] [stdout] test commands::utils::tests::uname_machine ... ok
[INFO] [stdout] test commands::utils::tests::which_multi_args_mixed ... ok
[INFO] [stdout] test commands::utils::tests::which_builtin ... ok
[INFO] [stdout] test commands::utils::tests::expr_match ... ok
[INFO] [stdout] test commands::utils::tests::which_no_args ... ok
[INFO] [stdout] test commands::utils::tests::which_registered ... ok
[INFO] [stdout] test commands::utils::tests::whoami_default_root ... ok
[INFO] [stdout] test commands::utils::tests::whoami_from_env ... ok
[INFO] [stdout] test commands::utils::tests::which_not_found ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::bitwise_or ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::bitwise_not ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::bitwise_shift ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::comma_operator ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::comparison_le ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::basic_addition ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::bitwise_and ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::comparison_lt ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::compound_assignment ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::division ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::division_by_zero ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::dollar_brace_variable ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::empty_expression ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::equality ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::comparison_ge ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::exponentiation ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::hex_literal ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::comparison_gt ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::complex_expression ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::logical_and ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::logical_not ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::multiplication ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::modulo ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::modulo_by_zero ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::nested_parens ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::logical_or ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::octal_literal ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::parenthesized ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::post_decrement ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::pre_increment ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::precedence_add_mul ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::post_increment ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::pre_decrement ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::unary_minus ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::unary_plus ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::variable_read ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::ternary ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::undefined_variable_defaults_to_zero ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::variable_assignment ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::bitwise_xor ... ok
[INFO] [stdout] test interpreter::arithmetic::tests::variable_with_dollar ... ok
[INFO] [stdout] test interpreter::brace::tests::backup_idiom ... ok
[INFO] [stdout] test interpreter::brace::tests::char_sequence ... ok
[INFO] [stdout] test interpreter::brace::tests::char_sequence_with_step ... ok
[INFO] [stdout] test interpreter::brace::tests::char_sequence_reverse ... ok
[INFO] [stdout] test interpreter::brace::tests::comma_with_prefix_suffix ... ok
[INFO] [stdout] test interpreter::brace::tests::comma_alternation ... ok
[INFO] [stdout] test interpreter::brace::tests::command_substitution_not_affected ... ok
[INFO] [stdout] test interpreter::brace::tests::command_substitution_with_comma_in_alternatives ... ok
[INFO] [stdout] test interpreter::brace::tests::deeply_nested ... ok
[INFO] [stdout] test interpreter::brace::tests::empty_braces_no_expansion ... ok
[INFO] [stdout] test interpreter::brace::tests::mixed_case_char_range_errors ... ok
[INFO] [stdout] test interpreter::brace::tests::mixed_numeric_char_ranges_are_literal ... ok
[INFO] [stdout] test interpreter::brace::tests::empty_alternative ... ok
[INFO] [stdout] test interpreter::brace::tests::multiple_brace_groups ... ok
[INFO] [stdout] test interpreter::brace::tests::negative_range ... ok
[INFO] [stdout] test interpreter::brace::tests::nested_braces ... ok
[INFO] [stdout] test interpreter::brace::tests::literal_brace_prefix_allows_later_group_expansion ... ok
[INFO] [stdout] test interpreter::brace::tests::non_ascii_content ... ok
[INFO] [stdout] test interpreter::brace::tests::numeric_sequence_with_step ... ok
[INFO] [stdout] test interpreter::brace::tests::numeric_sequence_reverse ... ok
[INFO] [stdout] test interpreter::brace::tests::numeric_zero_padded ... ok
[INFO] [stdout] test interpreter::brace::tests::parameter_expansion_not_affected ... ok
[INFO] [stdout] test interpreter::brace::tests::parameter_expansion_with_braces ... ok
[INFO] [stdout] test interpreter::brace::tests::prefix_and_suffix ... ok
[INFO] [stdout] test commands::utils::tests::yes_default ... ok
[INFO] [stdout] test interpreter::brace::tests::single_item_no_expansion ... ok
[INFO] [stdout] test interpreter::brace::tests::sequence_single_element ... ok
[INFO] [stdout] test interpreter::brace::tests::two_empty_alternatives ... ok
[INFO] [stdout] test interpreter::brace::tests::unmatched_brace_literal ... ok
[INFO] [stdout] test interpreter::brace::tests::zero_step_matches_bash_behavior ... ok
[INFO] [stdout] test interpreter::builtins::tests::all_builtins_have_meta ... ok
[INFO] [stdout] test interpreter::builtins::tests::builtin_names_is_nonempty ... ok
[INFO] [stdout] test interpreter::brace::tests::numeric_sequence ... ok
[INFO] [stdout] test interpreter::builtins::tests::cd_dash ... ok
[INFO] [stdout] test interpreter::builtins::tests::cd_home ... ok
[INFO] [stdout] test interpreter::brace::tests::numeric_sequence_negative_step_ignored ... ok
[INFO] [stdout] test interpreter::builtins::tests::export_and_list ... ok
[INFO] [stdout] test commands::utils::tests::yes_custom_string ... ok
[INFO] [stdout] test interpreter::builtins::tests::cd_nonexistent ... ok
[INFO] [stdout] test interpreter::builtins::tests::cd_to_directory ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_big_n_clears_extra_vars ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_big_n_includes_newlines ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_combined_ra_flags ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_big_n_preserves_backslash ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_big_n_short_read_returns_1 ... ok
[INFO] [stdout] test interpreter::builtins::tests::declare_readonly ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_delimiter ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_delimiter_empty_returns_1 ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_delimiter_empty_reads_until_eof ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_delimiter_not_found_returns_1 ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_eof_returns_1 ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_multiple_vars ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_into_array ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_n_count ... ok
[INFO] [stdout] test interpreter::brace::tests::limit_exceeded ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_n_zero_assigns_empty ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_n_stops_at_newline ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_timeout_stub_no_data ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_timeout_stub_with_data ... ok
[INFO] [stdout] test interpreter::builtins::tests::readonly_variable ... ok
[INFO] [stdout] test interpreter::builtins::tests::resolve_relative_path ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_reply_default ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_silent_flag_accepted ... ok
[INFO] [stdout] test interpreter::builtins::tests::read_single_var ... ok
[INFO] [stdout] test interpreter::builtins::tests::set_errexit ... ok
[INFO] [stdout] test interpreter::builtins::tests::set_positional_params ... ok
[INFO] [stdout] test interpreter::builtins::tests::sh_reads_stdin_when_only_flags_are_given ... ok
[INFO] [stdout] test interpreter::builtins::tests::sh_script_uses_invoked_name_for_dollar_zero ... ok
[INFO] [stdout] test interpreter::builtins::tests::shift_params ... ok
[INFO] [stdout] test interpreter::builtins::tests::shift_too_many ... ok
[INFO] [stdout] test interpreter::builtins::tests::unset_readonly_fails ... ok
[INFO] [stdout] test interpreter::builtins::tests::unset_variable ... ok
[INFO] [stdout] test interpreter::expansion::tests::empty_slice_offset_is_bad_substitution ... ok
[INFO] [stdout] test interpreter::expansion::tests::immutable_positional_slice_negative_length_is_an_error ... ok
[INFO] [stdout] test interpreter::expansion::tests::brace_expansion_precedes_tilde_for_root_home_mix ... ok
[INFO] [stdout] test interpreter::expansion::tests::positional_slice_zero_offset_includes_shell_name ... ok
[INFO] [stdout] test interpreter::expansion::tests::parser_keeps_double_spaces_in_strip_pattern ... ok
[INFO] [stdout] test interpreter::expansion::tests::command_parser_keeps_double_spaces_in_quoted_strip_pattern ... ok
[INFO] [stdout] test interpreter::expansion::tests::strip_pattern_respects_double_space_literals ... ok
[INFO] [stdout] test interpreter::pattern::tests::char_class ... ok
[INFO] [stdout] test interpreter::expansion::tests::slice_respects_nounset ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_at ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_nested ... ok
[INFO] [stdout] test interpreter::expansion::tests::mutable_array_slice_negative_length_reports_length_expr ... ok
[INFO] [stdout] test interpreter::expansion::tests::length_slice_syntax_is_bad_substitution ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_not ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_plus ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_star ... ok
[INFO] [stdout] test interpreter::pattern::tests::first_match_basic ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_with_glob ... ok
[INFO] [stdout] test interpreter::pattern::tests::literal_match ... ok
[INFO] [stdout] test interpreter::pattern::tests::posix_char_class ... ok
[INFO] [stdout] test interpreter::pattern::tests::prefix_removal ... ok
[INFO] [stdout] test interpreter::pattern::tests::question_match ... ok
[INFO] [stdout] test interpreter::pattern::tests::replace_all_basic ... ok
[INFO] [stdout] test interpreter::pattern::tests::extglob_question ... ok
[INFO] [stdout] test interpreter::pattern::tests::star_match ... ok
[INFO] [stdout] test interpreter::pattern::tests::suffix_removal ... ok
[INFO] [stdout] test interpreter::tests::expand_double_quoted_text ... ok
[INFO] [stdout] test interpreter::tests::expand_simple_text ... ok
[INFO] [stdout] test interpreter::tests::expand_escaped_character ... ok
[INFO] [stdout] test interpreter::tests::expand_single_quoted_text ... ok
[INFO] [stdout] test interpreter::tests::parse_error_on_unclosed_quote ... ok
[INFO] [stdout] test interpreter::tests::parse_sequential_commands ... ok
[INFO] [stdout] test interpreter::tests::parse_empty_input ... ok
[INFO] [stdout] test interpreter::tests::parse_and_or ... ok
[INFO] [stdout] test interpreter::tests::parse_simple_command ... ok
[INFO] [stdout] test interpreter::tests::parse_pipeline ... ok
[INFO] [stdout] test mcp::tests::test_initialize_response ... ok
[INFO] [stdout] test mcp::tests::test_handle_message_initialize ... ok
[INFO] [stdout] test mcp::tests::test_handle_message_notification_returns_none ... ok
[INFO] [stdout] test mcp::tests::test_handle_message_missing_method_with_id ... ok
[INFO] [stdout] test mcp::tests::test_tools_list_returns_four_tools ... ok
[INFO] [stdout] test mcp::tests::test_bash_tool_call ... ok
[INFO] [stdout] test mcp::tests::test_tools_list_schemas_have_required_fields ... ok
[INFO] [stdout] test mcp::tests::test_list_directory_tool ... ok
[INFO] [stdout] test mcp::tests::test_truncate_output_short ... ok
[INFO] [stdout] test mcp::tests::test_truncate_output_long ... ok
[INFO] [stdout] test network::tests::default_allows_get_and_post ... ok
[INFO] [stdout] test network::tests::default_is_disabled ... ok
[INFO] [stdout] test mcp::tests::test_handle_message_non_string_method_with_id ... ok
[INFO] [stdout] test network::tests::validate_method_allowed ... ok
[INFO] [stdout] test network::tests::validate_url_invalid_url ... ok
[INFO] [stdout] test network::tests::validate_method_rejected ... ok
[INFO] [stdout] test network::tests::validate_url_no_prefixes_rejects_all ... ok
[INFO] [stdout] test network::tests::validate_url_matches_prefix ... ok
[INFO] [stdout] test network::tests::validate_url_rejects_different_domain ... ok
[INFO] [stdout] test network::tests::validate_url_rejects_different_scheme ... ok
[INFO] [stdout] test network::tests::validate_url_rejects_subdomain_without_trailing_slash ... ok
[INFO] [stdout] test network::tests::validate_url_rejects_userinfo_attack ... ok
[INFO] [stdout] test parser_smoke_tests::parse_pipeline ... ok
[INFO] [stdout] test parser_smoke_tests::parse_compound_commands ... ok
[INFO] [stdout] test parser_smoke_tests::parse_simple_command ... ok
[INFO] [stdout] test parser_smoke_tests::tokenize_simple_command ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_arithmetic_expression ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_command_substitution ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_double_quoted_with_expansion ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_literal ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_parameter_expansion_braced ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_single_quoted ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_tilde ... ok
[INFO] [stdout] test vfs::mountable_tests::append_file_through_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::basic_read_write_through_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::canonicalize_at_root_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::canonicalize_through_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::cross_mount_copy ... ok
[INFO] [stdout] test vfs::mountable_tests::cross_mount_rename ... ok
[INFO] [stdout] test vfs::mountable_tests::cross_mount_rename_directory_returns_error ... ok
[INFO] [stdout] test vfs::mountable_tests::deep_clone_isolation ... ok
[INFO] [stdout] test parser_smoke_tests::word_parse_backtick_substitution ... ok
[INFO] [stdout] test vfs::mountable_tests::directory_listing_deduplicates_mount_with_real_dir ... ok
[INFO] [stdout] test mcp::tests::test_unknown_tool_returns_error ... ok
[INFO] [stdout] test vfs::mountable_tests::directory_listing_shows_mount_points ... ok
[INFO] [stdout] test vfs::mountable_tests::exists_at_mount_ancestor ... ok
[INFO] [stdout] test vfs::mountable_tests::exists_at_mount_point ... ok
[INFO] [stdout] test vfs::mountable_tests::glob_across_mounts ... ok
[INFO] [stdout] test vfs::mountable_tests::glob_relative_pattern ... ok
[INFO] [stdout] test vfs::mountable_tests::hardlink_across_mounts_returns_error ... ok
[INFO] [stdout] test vfs::mountable_tests::deep_clone_with_readwrite_fs_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::hardlink_within_same_mount_works ... ok
[INFO] [stdout] test mcp::tests::test_write_and_read_file_tool ... ok
[INFO] [stdout] test mcp::tests::test_handle_message_unknown_method ... ok
[INFO] [stdout] test vfs::mountable_tests::longest_prefix_matching ... ok
[INFO] [stdout] test vfs::mountable_tests::multiple_mounts_complex_setup ... ok
[INFO] [stdout] test vfs::mountable_tests::mkdir_and_write_through_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::nested_mount_points_in_listing ... ok
[INFO] [stdout] test vfs::mountable_tests::no_mount_returns_not_found ... ok
[INFO] [stdout] test vfs::mountable_tests::readdir_empty_directory_returns_ok ... ok
[INFO] [stdout] test vfs::mountable_tests::readdir_at_synthetic_ancestor ... ok
[INFO] [stdout] test vfs::mountable_tests::readdir_on_unmounted_path_with_child_mounts ... ok
[INFO] [stdout] test vfs::mountable_tests::readdir_nonexistent_path_returns_not_found ... ok
[INFO] [stdout] test vfs::mountable_tests::remove_file_and_dir_through_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::same_mount_copy_delegates_directly ... ok
[INFO] [stdout] test vfs::mountable_tests::same_mount_rename_delegates_directly ... ok
[INFO] [stdout] test vfs::mountable_tests::single_root_mount ... ok
[INFO] [stdout] test vfs::mountable_tests::stat_at_mount_point ... ok
[INFO] [stdout] test vfs::mountable_tests::symlink_absolute_target_at_non_root_mount ... ok
[INFO] [stdout] test mcp::tests::test_bash_error_command_returns_is_error ... ok
[INFO] [stdout] test vfs::overlay_tests::canonicalize_lower_path ... ok
[INFO] [stdout] test vfs::overlay_tests::ancestor_whiteout_hides_descendants ... ok
[INFO] [stdout] test vfs::overlay_tests::append_file_nonexistent_returns_not_found ... ok
[INFO] [stdout] test vfs::overlay_tests::canonicalize_upper_path ... ok
[INFO] [stdout] test vfs::overlay_tests::append_through_symlink_to_lower_file ... ok
[INFO] [stdout] test vfs::overlay_tests::constructor_error_for_nonexistent_lower ... ok
[INFO] [stdout] test vfs::overlay_tests::canonicalize_nonexistent_fails ... ok
[INFO] [stdout] test vfs::overlay_tests::chmod_lower_file_copies_up ... ok
[INFO] [stdout] test vfs::overlay_tests::chmod_lower_preserves_original_permissions ... ok
[INFO] [stdout] test vfs::overlay_tests::copy_from_lower_to_upper ... ok
[INFO] [stdout] test vfs::overlay_tests::chmod_through_symlink ... ok
[INFO] [stdout] test vfs::overlay_tests::deep_clone_whiteout_isolation ... ok
[INFO] [stdout] test vfs::overlay_tests::copy_up_on_append ... ok
[INFO] [stdout] test vfs::overlay_tests::exists_root ... ok
[INFO] [stdout] test vfs::overlay_tests::glob_merging ... ok
[INFO] [stdout] test vfs::overlay_tests::glob_excludes_whiteouts ... ok
[INFO] [stdout] test vfs::overlay_tests::deep_clone_isolation ... ok
[INFO] [stdout] test vfs::mountable_tests::integration_shell_with_mountable_fs ... ok
[INFO] [stdout] test vfs::overlay_tests::hardlink_from_lower ... ok
[INFO] [stdout] test vfs::overlay_tests::lstat_on_lower_file ... ok
[INFO] [stdout] test vfs::overlay_tests::merged_readdir ... ok
[INFO] [stdout] test mcp::tests::test_read_nonexistent_file_returns_error ... ok
[INFO] [stdout] test vfs::overlay_tests::mkdir_under_whiteout_ancestor ... ok
[INFO] [stdout] test vfs::overlay_tests::mkdir_p_through_lower_dirs ... ok
[INFO] [stdout] test vfs::overlay_tests::overwrite_lower_file_does_not_touch_disk ... ok
[INFO] [stdout] test mcp::tests::test_stateful_session ... ok
[INFO] [stdout] test vfs::overlay_tests::mkdir_after_rmdir ... ok
[INFO] [stdout] test vfs::overlay_tests::readdir_excludes_whiteouts ... ok
[INFO] [stdout] test vfs::overlay_tests::readdir_root_merges_both_layers ... ok
[INFO] [stdout] test vfs::overlay_tests::read_through_from_lower ... ok
[INFO] [stdout] test vfs::overlay_tests::remove_dir_empty_upper_dir ... ok
[INFO] [stdout] test vfs::overlay_tests::remove_dir_nonempty_merged_directory ... ok
[INFO] [stdout] test vfs::overlay_tests::mkdir_p_after_remove_dir_all_does_not_resurrect_siblings ... ok
[INFO] [stdout] test vfs::overlay_tests::utimes_lower_file_copies_up ... ok
[INFO] [stdout] test vfs::overlay_tests::utimes_through_symlink ... ok
[INFO] [stdout] test vfs::overlay_tests::remove_file_then_recreate ... ok
[INFO] [stdout] test vfs::overlay_tests::glob_absolute_pattern ... ok
[INFO] [stdout] test vfs::overlay_tests::stat_directory_from_lower ... ok
[INFO] [stdout] test vfs::overlay_tests::stat_follows_through_layers ... ok
[INFO] [stdout] test vfs::overlay_tests::rename_lower_only_file ... ok
[INFO] [stdout] test vfs::overlay_tests::rename_directory_with_mixed_layer_children ... ok
[INFO] [stdout] test vfs::overlay_tests::write_file_under_removed_dir_all_is_visible ... ok
[INFO] [stdout] test vfs::overlay_tests::write_isolation ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::append_nonexistent_file_errors ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::append_file ... ok
[INFO] [stdout] test vfs::overlay_tests::whiteout_hides_lower_file ... ok
[INFO] [stdout] test vfs::overlay_tests::symlink_in_upper ... ok
[INFO] [stdout] test vfs::overlay_tests::write_to_nested_new_dir ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::copy_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::deep_clone_returns_independent_instance ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::canonicalize_within_root ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::chmod_changes_mode ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::dotdot_in_middle_of_path_rejected ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::exists_outside_root_returns_false ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::glob_relative_pattern ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::glob_does_not_escape_root_via_symlink ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::glob_recursive_pattern ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::mkdir_and_readdir ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::path_traversal_attack_rejected ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::read_file_through_symlink_escape_rejected ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::glob_star_pattern ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::read_nonexistent_file_errors ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::mkdir_p_creates_intermediate_dirs ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::lstat_on_symlink_returns_symlink_type ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::readdir_reports_node_types ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::relative_symlink_escape_rejected ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::remove_dir_nonempty_fails ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::remove_dir_empty ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::hardlink_shares_content ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::stat_on_directory ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::stat_on_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::remove_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::rename_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::stat_through_symlink_escape_rejected ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::symlink_escape_rejected ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::unrestricted_writes_real_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::symlink_and_readlink ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::unrestricted_reads_real_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::remove_dir_all ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::operations_within_root_succeed ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::overwrite_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::write_and_read_file ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::utimes_changes_mtime ... ok
[INFO] [stdout] test vfs::tests::binary_file_content ... ok
[INFO] [stdout] test vfs::tests::canonicalize_dotdot ... ok
[INFO] [stdout] test vfs::tests::chmod_changes_mode ... ok
[INFO] [stdout] test vfs::tests::chmod_nonexistent_errors ... ok
[INFO] [stdout] test vfs::tests::canonicalize_resolves_symlinks ... ok
[INFO] [stdout] test vfs::tests::copy_file ... ok
[INFO] [stdout] test vfs::tests::dir_default_mode ... ok
[INFO] [stdout] test vfs::tests::dotdot_at_root_stays_at_root ... ok
[INFO] [stdout] test vfs::tests::exists_dangling_symlink_false ... ok
[INFO] [stdout] test vfs::tests::exists_nonexistent ... ok
[INFO] [stdout] test vfs::tests::exists_root ... ok
[INFO] [stdout] test vfs::readwrite_tests::tests::write_new_file_in_root ... ok
[INFO] [stdout] test vfs::tests::exists_through_symlink ... ok
[INFO] [stdout] test vfs::tests::glob_basic_matching ... ok
[INFO] [stdout] test vfs::tests::file_default_mode ... ok
[INFO] [stdout] test vfs::tests::file_size_in_metadata ... ok
[INFO] [stdout] test vfs::tests::glob_absolute_pattern ... ok
[INFO] [stdout] test vfs::tests::glob_doublestar_skips_hidden ... ok
[INFO] [stdout] test vfs::tests::glob_bracket_pattern ... ok
[INFO] [stdout] test vfs::tests::glob_hidden_files_explicit_dot ... ok
[INFO] [stdout] test vfs::tests::glob_hidden_files_skipped ... ok
[INFO] [stdout] test vfs::tests::glob_no_match_returns_empty ... ok
[INFO] [stdout] test vfs::tests::glob_question_mark_pattern ... ok
[INFO] [stdout] test vfs::tests::append_file ... ok
[INFO] [stdout] test vfs::tests::glob_through_symlink_dir ... ok
[INFO] [stdout] test vfs::tests::append_nonexistent_file_errors ... ok
[INFO] [stdout] test vfs::tests::canonicalize_root ... ok
[INFO] [stdout] test vfs::tests::mkdir_already_exists_errors ... ok
[INFO] [stdout] test vfs::tests::mkdir_and_readdir ... ok
[INFO] [stdout] test vfs::tests::mkdir_p_existing_is_ok ... ok
[INFO] [stdout] test vfs::tests::mkdir_p_creates_parents ... ok
[INFO] [stdout] test vfs::tests::glob_recursive_doublestar ... ok
[INFO] [stdout] test vfs::tests::hardlink_already_exists_errors ... ok
[INFO] [stdout] test vfs::tests::mkdir_p_over_file_errors ... ok
[INFO] [stdout] test vfs::tests::normalize_dot_and_dotdot ... ok
[INFO] [stdout] test vfs::tests::hardlink_creates_copy ... ok
[INFO] [stdout] test vfs::tests::normalize_trailing_slash ... ok
[INFO] [stdout] test vfs::tests::overwrite_file ... ok
[INFO] [stdout] test vfs::tests::read_directory_as_file_errors ... ok
[INFO] [stdout] test vfs::tests::read_nonexistent_file_errors ... ok
[INFO] [stdout] test vfs::tests::readdir_lists_sorted ... ok
[INFO] [stdout] test vfs::tests::readdir_nonexistent_errors ... ok
[INFO] [stdout] test vfs::tests::readdir_on_file_errors ... ok
[INFO] [stdout] test vfs::tests::reject_empty_path ... ok
[INFO] [stdout] test vfs::tests::reject_relative_path ... ok
[INFO] [stdout] test vfs::tests::readlink_on_non_symlink_errors ... ok
[INFO] [stdout] test vfs::tests::remove_dir_all_nonexistent_errors ... ok
[INFO] [stdout] test vfs::tests::remove_dir_all_on_file_errors ... ok
[INFO] [stdout] test vfs::tests::remove_dir_all_recursive ... ok
[INFO] [stdout] test vfs::tests::remove_dir_empty ... ok
[INFO] [stdout] test vfs::tests::remove_dir_not_empty_errors ... ok
[INFO] [stdout] test vfs::tests::remove_dir_on_file_errors ... ok
[INFO] [stdout] test vfs::tests::remove_file ... ok
[INFO] [stdout] test vfs::tests::remove_file_on_directory_errors ... ok
[INFO] [stdout] test vfs::tests::remove_file_removes_symlink_not_target ... ok
[INFO] [stdout] test vfs::tests::remove_nonexistent_file_errors ... ok
[INFO] [stdout] test vfs::tests::rename_directory ... ok
[INFO] [stdout] test vfs::tests::rename_file ... ok
[INFO] [stdout] test vfs::tests::rename_nonexistent_errors ... ok
[INFO] [stdout] test vfs::tests::symlink_already_exists_errors ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rust_bash-af70513cbd932946)
[INFO] [stdout] test vfs::tests::symlink_chain ... ok
[INFO] [stdout] test vfs::tests::symlink_loop_detected ... ok
[INFO] [stdout] test vfs::tests::symlink_lstat_returns_symlink_type ... ok
[INFO] [stdout] test vfs::tests::symlink_read_through ... ok
[INFO] [stdout] test vfs::tests::symlink_readlink ... ok
[INFO] [stdout] test vfs::tests::symlink_stat_returns_target_type ... ok
[INFO] [stdout] test vfs::tests::symlink_to_nonexistent_errors_on_read ... ok
[INFO] [stdout] test vfs::tests::symlink_to_directory ... ok
[INFO] [stdout] test vfs::tests::trait_deep_clone_produces_independent_copy ... ok
[INFO] [stdout] test vfs::tests::utimes_changes_mtime ... ok
[INFO] [stdout] test vfs::tests::write_and_read_file ... ok
[INFO] [stdout] test vfs::tests::write_empty_file ... ok
[INFO] [stdout] test vfs::tests::write_file_in_nested_dir ... ok
[INFO] [stdout] test vfs::tests::write_through_symlink ... ok
[INFO] [stdout] test vfs::tests::write_file_parent_not_found_errors ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1085 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.19s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cli.rs (/opt/rustwide/target/debug/deps/cli-52a58a88811eafc6)
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test c_flag_empty_string_is_noop ... ok
[INFO] [stdout] test c_flag_takes_priority_over_script_arg ... ok
[INFO] [stdout] test c_flag_echo_hello ... ok
[INFO] [stdout] test cwd_nonexistent_auto_creates ... ok
[INFO] [stdout] test c_flag_stderr_redirect ... ok
[INFO] [stdout] test cwd_sets_working_directory ... ok
[INFO] [stdout] test c_flag_takes_priority_over_stdin ... ok
[INFO] [stdout] test double_dash_stops_flag_parsing ... ok
[INFO] [stdout] test empty_stdin_is_noop ... ok
[INFO] [stdout] test c_flag_exit_code ... ok
[INFO] [stdout] test env_single_variable ... ok
[INFO] [stdout] test env_value_with_equals ... ok
[INFO] [stdout] test files_colon_in_host_path ... ok
[INFO] [stdout] test env_override_home ... ok
[INFO] [stdout] test env_multiple_variables ... ok
[INFO] [stdout] test cwd_env_and_files_combined ... ok
[INFO] [stdout] test files_directory_seeded_at_root ... ok
[INFO] [stdout] test files_multiple_flags_combine ... ok
[INFO] [stdout] test invalid_env_format_no_equals ... ok
[INFO] [stdout] test files_nested_subdirectories ... ok
[INFO] [stdout] test files_single_file_mapping ... ok
[INFO] [stdout] test json_stderr_field ... ok
[INFO] [stdout] test newline_only_stdin_is_noop ... ok
[INFO] [stdout] test nonexistent_files_host_path ... ok
[INFO] [stdout] test json_script_file ... ok
[INFO] [stdout] test json_exit_nonzero ... ok
[INFO] [stdout] test nonexistent_script_file ... ok
[INFO] [stdout] test files_directory_with_vfs_prefix ... ok
[INFO] [stdout] test script_dollar_zero ... ok
[INFO] [stdout] test files_binary_content_passthrough ... ok
[INFO] [stdout] test stdin_pipe_execution ... ok
[INFO] [stdout] test multiline_command_string ... ok
[INFO] [stdout] test json_stdin_pipe ... ok
[INFO] [stdout] test script_positional_args ... ok
[INFO] [stdout] test json_echo_hello ... ok
[INFO] [stdout] test script_file_execution ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/comparison.rs (/opt/rustwide/target/debug/deps/comparison-41b9cbc9c10356f8)
[INFO] [stdout] 
[INFO] [stdout] running 35 tests
[INFO] [stderr] --- detection: 4 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (4 total)
[INFO] [stdout] test run_comparison_file::builtins/detection.toml               ... ok
[INFO] [stderr] --- basic_echo: 4 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (4 total)
[INFO] [stdout] test run_comparison_file::basic_echo.toml                       ... ok
[INFO] [stderr] --- input_state: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_comparison_file::builtins/input_state.toml             ... ok
[INFO] [stderr] --- case: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr] --- dirs_aliases: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stderr] --- basic: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stderr]     M6.1: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::control_flow/case.toml                ... ok
[INFO] [stdout] test run_comparison_file::builtins/dirs_aliases.toml            ... ok
[INFO] [stdout] test run_comparison_file::arrays/basic.toml                     ... ok
[INFO] [stderr] --- for_loop: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stdout] test run_comparison_file::control_flow/for_loop.toml            ... ok
[INFO] [stderr] --- pipestatus_bash_rematch: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stderr]     M6.2: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::arrays/pipestatus_bash_rematch.toml   ... ok
[INFO] [stderr] --- logical_operators: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stdout] test run_comparison_file::control_flow/logical_operators.toml   ... ok
[INFO] [stdout] test run_comparison_file::control_flow/while_loop.toml          ... ok
[INFO] [stderr] --- while_loop: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr] --- if_then: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stdout] test run_comparison_file::control_flow/if_then.toml             ... ok
[INFO] [stderr] --- tilde: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_comparison_file::expansion/tilde.toml                  ... ok
[INFO] [stderr] --- attributes: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (10 total)
[INFO] [stderr]     M6.6: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::declare/attributes.toml               ... ok
[INFO] [stderr] --- command_substitution: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stdout] test run_comparison_file::expansion/command_substitution.toml   ... ok
[INFO] [stdout] test run_comparison_file::expansion/brace.toml                  ... ok
[INFO] [stderr] --- brace: 11 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (11 total)
[INFO] [stderr] --- basic_functions: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stdout] test run_comparison_file::functions/basic_functions.toml        ... ok
[INFO] [stderr] --- arithmetic: 14 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (14 total)
[INFO] [stdout] test run_comparison_file::expansion/arithmetic.toml             ... ok
[INFO] [stderr] --- basic_glob: 6 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (6 total)
[INFO] [stdout] test run_comparison_file::globbing/basic_glob.toml              ... ok
[INFO] [stdout] test run_comparison_file::here_documents/heredoc.toml           ... ok
[INFO] [stderr] --- heredoc: 6 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (6 total)
[INFO] [stderr] --- parameter_default: 13 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_comparison_file::expansion/parameter_default.toml      ... ok
[INFO] [stderr] --- parameter_substitution: 16 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_comparison_file::expansion/parameter_substitution.toml ... ok
[INFO] [stderr] --- basic_pipe: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_comparison_file::pipes/basic_pipe.toml                 ... ok
[INFO] [stdout] test run_comparison_file::process_substitution/basic.toml       ... ok
[INFO] [stdout] test run_comparison_file::parameter_transforms/basic.toml       ... ok
[INFO] [stderr] --- basic: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr]     M6.7: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stderr] --- basic: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stderr]     M6.11: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stderr] SKIP redirect_stdin_from_file: VFS uses absolute paths but recording uses relative temp dir
[INFO] [stderr] XFAIL redirect_stderr_to_dev_null [redirect_ordering]: rust-bash processes redirect order differently for >&2 2>/dev/null
[INFO] [stderr] --- path_fidelity: 11 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (11 total)
[INFO] [stdout] test run_comparison_file::paths/path_fidelity.toml              ... ok
[INFO] [stderr] --- basic_redirect: 4 pass, 1 xfail, 1 skip, 0 unexpected-pass, 0 fail (6 total)
[INFO] [stderr]     M6.10: 0 pass, 1 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::redirections/basic_redirect.toml      ... ok
[INFO] [stderr] --- flags: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stderr]     M6.5: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::read/flags.toml                       ... ok
[INFO] [stderr] --- basic: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stderr]     M6.3: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::shopt/basic.toml                      ... ok
[INFO] [stderr] --- read_builtin: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (10 total)
[INFO] [stdout] test run_comparison_file::read_builtin.toml                     ... ok
[INFO] [stderr] --- call_stack: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr]     M6.8: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::special_vars/call_stack.toml          ... ok
[INFO] [stderr] --- basic_quoting: 12 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (12 total)
[INFO] [stdout] test run_comparison_file::quoting/basic_quoting.toml            ... ok
[INFO] [stderr] --- advanced: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (10 total)
[INFO] [stdout] test run_comparison_file::redirections/advanced.toml            ... ok
[INFO] [stderr]     M6.10: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stderr] --- basic: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stderr]     M6.9: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::set_options/basic.toml                ... ok
[INFO] [stderr] --- basic: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stderr]     M6.8: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass
[INFO] [stdout] test run_comparison_file::special_vars/basic.toml               ... ok
[INFO] [stderr] --- ifs: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stdout] test run_comparison_file::word_splitting/ifs.toml               ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.47s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ffi.rs (/opt/rustwide/target/debug/deps/ffi-91ad86c11ec671d8)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/filesystem_backends.rs (/opt/rustwide/target/debug/deps/filesystem_backends-e24a65b8b6e25f6c)
[INFO] [stdout] 
[INFO] [stdout] running 35 tests
[INFO] [stdout] test mountable_deep_clone_is_independent ... ok
[INFO] [stdout] test mountable_env_and_cwd ... ok
[INFO] [stdout] test command_substitution_isolation_overlay ... ok
[INFO] [stdout] test mountable_cross_mount_copy ... ok
[INFO] [stdout] test command_substitution_isolation_mountable ... ok
[INFO] [stdout] test for_loop_with_overlay ... ok
[INFO] [stdout] test builder_files_work_with_overlay ... ok
[INFO] [stdout] test mountable_multiple_backends ... ok
[INFO] [stdout] test overlay_deep_clone_is_independent ... ok
[INFO] [stdout] test if_test_with_overlay_file ... ok
[INFO] [stdout] test mountable_routes_to_correct_backend ... ok
[INFO] [stdout] test mountable_with_builder_files ... ok
[INFO] [stdout] test mountable_readwrite_at_mount_point ... ok
[INFO] [stdout] test mountable_overlay_at_mount_point ... ok
[INFO] [stdout] test overlay_delete_hides_lower_file ... ok
[INFO] [stdout] test builder_files_work_with_readwrite ... ok
[INFO] [stdout] test overlay_append_copies_up_from_lower ... ok
[INFO] [stdout] test overlay_mkdir_and_write_in_new_dir ... ok
[INFO] [stdout] test overlay_new_files_do_not_touch_disk ... ok
[INFO] [stdout] test overlay_ls_merges_layers ... ok
[INFO] [stdout] test overlay_reads_from_real_directory ... ok
[INFO] [stdout] test overlay_pipeline_with_real_files ... ok
[INFO] [stdout] test overlay_writes_stay_in_memory ... ok
[INFO] [stdout] test readwrite_pipeline_with_real_files ... ok
[INFO] [stdout] test readwrite_reads_and_writes_real_files ... ok
[INFO] [stdout] test subshell_deletes_dont_leak_mountable ... ok
[INFO] [stdout] test subshell_new_files_dont_leak_mountable ... ok
[INFO] [stdout] test subshell_writes_dont_leak_inmemoryfs ... ok
[INFO] [stdout] test subshell_isolation_with_mountable_overlay_mount ... ok
[INFO] [stdout] test subshell_deletes_dont_leak_overlay ... ok
[INFO] [stdout] test subshell_new_files_dont_leak_overlay ... ok
[INFO] [stdout] test subshell_writes_dont_leak_mountable ... ok
[INFO] [stdout] test subshell_writes_dont_leak_overlay ... ok
[INFO] [stdout] test readwrite_restricted_root_prevents_escape ... ok
[INFO] [stdout] test readwrite_subshell_writes_are_visible ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 35 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.59s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/help_flag.rs (/opt/rustwide/target/debug/deps/help_flag-3a6304fbee814924)
[INFO] [stdout] 
[INFO] [stdout] running 24 tests
[INFO] [stdout] test cd_help_shows_builtin_help ... ok
[INFO] [stdout] test all_registered_commands_have_meta ... ok
[INFO] [stdout] test awk_help_shows_usage ... ok
[INFO] [stdout] test cat_help_shows_options ... ok
[INFO] [stdout] test alias_help_shows_usage ... ok
[INFO] [stdout] test command_wrapper_help ... ok
[INFO] [stdout] test builtin_wrapper_help ... ok
[INFO] [stdout] test false_help_exits_one_silently ... ok
[INFO] [stdout] test bracket_help_works_as_expression ... ok
[INFO] [stdout] test jq_help_shows_usage ... ok
[INFO] [stdout] test printf_help_works_via_builtin_dispatch ... ok
[INFO] [stdout] test declare_help_shows_usage ... ok
[INFO] [stdout] test grep_help_shows_usage_and_exits_zero ... ok
[INFO] [stdout] test help_does_not_interfere_with_later_args ... ok
[INFO] [stdout] test export_help_shows_usage ... ok
[INFO] [stdout] test ls_help_shows_usage ... ok
[INFO] [stdout] test exec_help_shows_usage ... ok
[INFO] [stdout] test echo_help_prints_literal_help ... ok
[INFO] [stdout] test true_help_exits_zero_silently ... ok
[INFO] [stdout] test read_help_shows_usage ... ok
[INFO] [stdout] test test_help_works_as_expression ... ok
[INFO] [stdout] test shopt_help_shows_usage ... ok
[INFO] [stdout] test sed_help_shows_usage ... ok
[INFO] [stdout] test sort_help_shows_usage ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-dc4ea24dd1e02d33)
[INFO] [stdout] 
[INFO] [stdout] running 675 tests
[INFO] [stdout] test agents_npm_md_documented_builtins_exist ... ok
[INFO] [stdout] test agents_npm_md_documented_commands_exist_in_registry ... ok
[INFO] [stdout] test arith_all_operators ... ok
[INFO] [stdout] test and_or_lists ... ok
[INFO] [stdout] test arith_basic_addition ... ok
[INFO] [stdout] test arith_bitwise ... ok
[INFO] [stdout] test arith_assignment ... ok
[INFO] [stdout] test allexport_marks_variable_exported ... ok
[INFO] [stdout] test arith_command_exit_nonzero ... ok
[INFO] [stdout] test arith_boolean ... ok
[INFO] [stdout] test arith_comparisons ... ok
[INFO] [stdout] test arith_for_loop ... ok
[INFO] [stdout] test arith_for_loop_decrement ... ok
[INFO] [stdout] test agents_npm_md_command_count_matches_registry ... ok
[INFO] [stdout] test arith_division_by_zero ... ok
[INFO] [stdout] test arith_command_exit_zero ... ok
[INFO] [stdout] test arith_compound_assignment ... ok
[INFO] [stdout] test arith_hex_octal ... ok
[INFO] [stdout] test arith_command_basic ... ok
[INFO] [stdout] test arith_nested_parens ... ok
[INFO] [stdout] test arith_for_loop_step ... ok
[INFO] [stdout] test arith_pre_increment ... ok
[INFO] [stdout] test arith_post_increment ... ok
[INFO] [stdout] test arith_ternary ... ok
[INFO] [stdout] test arith_unary ... ok
[INFO] [stdout] test arithmetic_overflow_wraps ... ok
[INFO] [stdout] test arith_variables ... ok
[INFO] [stdout] test arithmetic_assignment_in_expansion ... ok
[INFO] [stdout] test arithmetic_error_in_if_condition_preserves_failure_status ... ok
[INFO] [stdout] test arithmetic_negative_numbers ... ok
[INFO] [stdout] test array_all_elements_at ... ok
[INFO] [stdout] test array_append ... ok
[INFO] [stdout] test arithmetic_nested_parentheses ... ok
[INFO] [stdout] test array_associative_keys ... ok
[INFO] [stdout] test array_arithmetic_compound_assign ... ok
[INFO] [stdout] test array_append_length ... ok
[INFO] [stdout] test array_arithmetic_assignment ... ok
[INFO] [stdout] test array_declare_indexed ... ok
[INFO] [stdout] test array_all_elements_star ... ok
[INFO] [stdout] test array_element_string_length ... ok
[INFO] [stdout] test array_basic_indexed_assignment ... ok
[INFO] [stdout] test array_empty_at_expansion_no_empty_word ... ok
[INFO] [stdout] test array_declare_associative ... ok
[INFO] [stdout] test array_max_elements_limit ... ok
[INFO] [stdout] test array_at_in_double_quotes_word_splitting ... ok
[INFO] [stdout] test array_export_shows_scalar ... ok
[INFO] [stdout] test array_in_arithmetic ... ok
[INFO] [stdout] test array_keys_at ... ok
[INFO] [stdout] test array_length_star ... ok
[INFO] [stdout] test array_element_assignment ... ok
[INFO] [stdout] test array_mixed_auto_and_explicit_indices ... ok
[INFO] [stdout] test array_overwrite_element ... ok
[INFO] [stdout] test array_read_nonexistent_index ... ok
[INFO] [stdout] test array_length ... ok
[INFO] [stdout] test array_no_name_gives_element_zero ... ok
[INFO] [stdout] test array_sparse_values ... ok
[INFO] [stdout] test array_scalar_as_element_zero ... ok
[INFO] [stdout] test array_sparse_indices ... ok
[INFO] [stdout] test array_star_with_ifs ... ok
[INFO] [stdout] test array_unset_preserves_indices ... ok
[INFO] [stdout] test bad_substitution_aborts_before_following_command ... ok
[INFO] [stdout] test bare_assignment_persists_globally ... ok
[INFO] [stdout] test array_with_explicit_indices ... ok
[INFO] [stdout] test base64_encode_and_decode ... ok
[INFO] [stdout] test array_unset_element ... ok
[INFO] [stdout] test bash_lineno_callsite ... ok
[INFO] [stdout] test bash_rematch_all_elements ... ok
[INFO] [stdout] test bash_rematch_array_length ... ok
[INFO] [stdout] test bash_c_executes_string ... ok
[INFO] [stdout] test bash_rematch_array_whole_match ... ok
[INFO] [stdout] test bash_rematch_array_capture_groups ... ok
[INFO] [stdout] test bashopts_contains_extglob_by_default ... ok
[INFO] [stdout] test bash_rematch_scalar_access_returns_index_zero ... ok
[INFO] [stdout] test bash_rematch_persists_across_non_regex_commands ... ok
[INFO] [stdout] test bash_source_empty_at_toplevel ... ok
[INFO] [stdout] test bash_rematch_non_participating_group ... ok
[INFO] [stdout] test bashopts_reflects_shopt_flags ... ok
[INFO] [stdout] test bash_rematch_cleared_on_no_match ... ok
[INFO] [stdout] test basic_echo ... ok
[INFO] [stdout] test bc_basic_arithmetic ... ok
[INFO] [stdout] test bc_exponentiation ... ok
[INFO] [stdout] test bc_multiplication ... ok
[INFO] [stdout] test brace_char_sequence ... ok
[INFO] [stdout] test bashpid_returns_numeric ... ok
[INFO] [stdout] test bc_division_with_scale ... ok
[INFO] [stdout] test brace_char_sequence_reverse ... ok
[INFO] [stdout] test brace_group ... ok
[INFO] [stdout] test brace_combined_with_variable ... ok
[INFO] [stdout] test brace_empty_alternative ... ok
[INFO] [stdout] test brace_group_shares_scope ... ok
[INFO] [stdout] test brace_multiple_groups ... ok
[INFO] [stdout] test brace_comma_alternation ... ok
[INFO] [stdout] test brace_nested ... ok
[INFO] [stdout] test brace_no_interference_with_parameter_expansion ... ok
[INFO] [stdout] test brace_numeric_sequence ... ok
[INFO] [stdout] test brace_numeric_sequence_with_step ... ok
[INFO] [stdout] test brace_pre_and_post ... ok
[INFO] [stdout] test brace_single_item_no_expansion ... ok
[INFO] [stdout] test brace_with_prefix_suffix ... ok
[INFO] [stdout] test break_does_not_abort_script ... ok
[INFO] [stdout] test break_in_until_loop ... ok
[INFO] [stdout] test break_exits_two_levels ... ok
[INFO] [stdout] test break_in_for_loop ... ok
[INFO] [stdout] test break_large_n_exits_all_loops ... ok
[INFO] [stdout] test break_negative_error ... ok
[INFO] [stdout] test break_in_while_loop ... ok
[INFO] [stdout] test break_non_numeric_error ... ok
[INFO] [stdout] test break_outside_loop_error ... ok
[INFO] [stdout] test break_preserves_variable ... ok
[INFO] [stdout] test builder_custom_command_overrides_builtin ... ok
[INFO] [stdout] test builder_files_creates_parent_dirs ... ok
[INFO] [stdout] test break_zero_error ... ok
[INFO] [stdout] test builder_env_variables_accessible ... ok
[INFO] [stdout] test builder_custom_cwd ... ok
[INFO] [stdout] test builder_cwd_sets_initial_directory ... ok
[INFO] [stdout] test case_empty ... ok
[INFO] [stdout] test case_continue_skips_nonmatching ... ok
[INFO] [stdout] test case_empty_body ... ok
[INFO] [stdout] test builder_with_files ... ok
[INFO] [stdout] test case_alternation ... ok
[INFO] [stdout] test case_continue_pattern_testing ... ok
[INFO] [stdout] test case_glob_pattern ... ok
[INFO] [stdout] test case_fall_through ... ok
[INFO] [stdout] test case_char_class ... ok
[INFO] [stdout] test case_with_variable ... ok
[INFO] [stdout] test case_question_mark_glob ... ok
[INFO] [stdout] test case_no_match ... ok
[INFO] [stdout] test case_fall_through_chained ... ok
[INFO] [stdout] test case_wildcard_fallthrough ... ok
[INFO] [stdout] test cat_multiple_files ... ok
[INFO] [stdout] test cat_dash_n_numbers_lines ... ok
[INFO] [stdout] test cd_and_pwd ... ok
[INFO] [stdout] test cmd_subst_backtick_syntax ... ok
[INFO] [stdout] test cmd_subst_basic ... ok
[INFO] [stdout] test cmd_subst_empty ... ok
[INFO] [stdout] test cd_nonexistent_directory_errors_cwd_unchanged ... ok
[INFO] [stdout] test chmod_changes_permissions ... ok
[INFO] [stdout] test cmd_subst_exit_code_reflected ... ok
[INFO] [stdout] test cd_dash_returns_to_oldpwd ... ok
[INFO] [stdout] test cmd_subst_assign_and_use ... ok
[INFO] [stdout] test clear_outputs_ansi_escape ... ok
[INFO] [stdout] test cmd_subst_in_double_quotes_preserves_spaces ... ok
[INFO] [stdout] test cmd_subst_multiple_trailing_newlines_stripped ... ok
[INFO] [stdout] test cmd_subst_in_pipeline ... ok
[INFO] [stdout] test cmd_subst_multiple_in_one_word ... ok
[INFO] [stdout] test cmd_subst_unquoted_ifs_splitting ... ok
[INFO] [stdout] test cmd_subst_trailing_newline_stripping ... ok
[INFO] [stdout] test cmd_subst_nested ... ok
[INFO] [stdout] test command_not_found_exit_127 ... ok
[INFO] [stdout] test command_substitution_strips_trailing_newlines ... ok
[INFO] [stdout] test colon_builtin ... ok
[INFO] [stdout] test builder_with_env ... ok
[INFO] [stdout] test compound_command_with_redirect ... ok
[INFO] [stdout] test continue_does_not_abort_script ... ok
[INFO] [stdout] test comments_stripped ... ok
[INFO] [stdout] test continue_in_for_loop ... ok
[INFO] [stdout] test continue_outside_loop_error ... ok
[INFO] [stdout] test continue_in_while_loop_via_for ... ok
[INFO] [stdout] test continue_zero_error ... ok
[INFO] [stdout] test continue_large_n_resumes_outermost ... ok
[INFO] [stdout] test continue_two_levels ... ok
[INFO] [stdout] test curl_e2e::curl_get_returns_body ... ok
[INFO] [stdout] test curl_e2e::curl_custom_headers_sent ... ok
[INFO] [stdout] test custom_home_preserved ... ok
[INFO] [stdout] test custom_ifs_splitting ... ok
[INFO] [stdout] test curl_e2e::curl_fail_on_http_error ... ok
[INFO] [stdout] test curl_e2e::curl_output_file_writes_to_vfs ... ok
[INFO] [stdout] test cut_fields_with_delimiter ... ok
[INFO] [stdout] test case_exact_match ... ok
[INFO] [stdout] test declare_integer_basic ... ok
[INFO] [stdout] test cmd_subst_subshell_isolation ... ok
[INFO] [stdout] test declare_indexed_array_with_value ... ok
[INFO] [stdout] test declare_array_indexed ... ok
[INFO] [stdout] test declare_integer_array_element ... ok
[INFO] [stdout] test curl_e2e::curl_post_sends_data ... ok
[INFO] [stdout] test declare_array_associative ... ok
[INFO] [stdout] test declare_nameref_chain ... ok
[INFO] [stdout] test declare_integer_readonly_prevents_reassign ... ok
[INFO] [stdout] test declare_lowercase_with_value ... ok
[INFO] [stdout] test declare_lowercase ... ok
[INFO] [stdout] test declare_nameref_write ... ok
[INFO] [stdout] test declare_integer_propagation_append ... ok
[INFO] [stdout] test declare_integer_in_for_loop ... ok
[INFO] [stdout] test declare_print_integer_exported ... ok
[INFO] [stdout] test declare_integer_variable_reference ... ok
[INFO] [stdout] test declare_integer_with_value ... ok
[INFO] [stdout] test declare_nameref_read ... ok
[INFO] [stdout] test declare_print_lowercase ... ok
[INFO] [stdout] test declare_nameref_circular_error ... ok
[INFO] [stdout] test declare_uppercase ... ok
[INFO] [stdout] test default_bash_version ... ok
[INFO] [stdout] test declare_uppercase_with_value ... ok
[INFO] [stdout] test default_env_not_overwritten ... ok
[INFO] [stdout] test declare_print_nonexistent_returns_error ... ok
[INFO] [stdout] test declare_readonly ... ok
[INFO] [stdout] test default_env_home ... ok
[INFO] [stdout] test dev_special_files_exist ... ok
[INFO] [stdout] test default_ifs_collapses_whitespace ... ok
[INFO] [stdout] test default_home_dir_exists ... ok
[INFO] [stdout] test default_env_path ... ok
[INFO] [stdout] test double_dash_stops_flag_parsing ... ok
[INFO] [stdout] test double_quoted_expansion ... ok
[INFO] [stdout] test dollar_bang_is_empty_or_zero ... ok
[INFO] [stdout] test default_dirs_exist ... ok
[INFO] [stdout] test default_shell_var ... ok
[INFO] [stdout] test double_quotes_allow_expansion ... ok
[INFO] [stdout] test double_quotes_preserve_spaces ... ok
[INFO] [stdout] test du_summary ... ok
[INFO] [stdout] test echo_flags ... ok
[INFO] [stdout] test duplicate_redirect_with_multiword_dollar_at_is_ambiguous ... ok
[INFO] [stdout] test empty_and_whitespace_input ... ok
[INFO] [stdout] test err_trap_not_fired_in_and_or_chain ... ok
[INFO] [stdout] test err_trap_fires_on_plain_failure ... ok
[INFO] [stdout] test errexit_negation_exception ... ok
[INFO] [stdout] test errexit_and_left_side_exception ... ok
[INFO] [stdout] test egrep_extended_regex ... ok
[INFO] [stdout] test error_display_execution ... ok
[INFO] [stdout] test errexit_if_condition_exception ... ok
[INFO] [stdout] test error_display_limit_exceeded ... ok
[INFO] [stdout] test error_display_parse ... ok
[INFO] [stdout] test error_display_network ... ok
[INFO] [stdout] test err_trap_not_fired_in_if_condition ... ok
[INFO] [stdout] test error_display_timeout ... ok
[INFO] [stdout] test error_display_vfs ... ok
[INFO] [stdout] test errexit_or_left_side_exception ... ok
[INFO] [stdout] test errexit_stops_on_failure ... ok
[INFO] [stdout] test errexit_pipefail_combined ... ok
[INFO] [stdout] test errexit_while_condition_exception ... ok
[INFO] [stdout] test euid_returns_numeric ... ok
[INFO] [stdout] test errexit_until_condition_exception ... ok
[INFO] [stdout] test eval_cd_persists ... ok
[INFO] [stdout] test eval_executes_dynamically_built_command ... ok
[INFO] [stdout] test eval_no_args_is_noop ... ok
[INFO] [stdout] test eval_multiple_args_concatenated ... ok
[INFO] [stdout] test eval_empty_string_is_noop ... ok
[INFO] [stdout] test eval_with_variable_expansion ... ok
[INFO] [stdout] test eval_simple_echo ... ok
[INFO] [stdout] test execution_limit_command_count ... ok
[INFO] [stdout] test exit_builtin ... ok
[INFO] [stdout] test execution_limit_output_size ... ok
[INFO] [stdout] test exec_callback_available_to_commands ... ok
[INFO] [stdout] test expand_alternative_value_when_set ... ok
[INFO] [stdout] test eval_assignment_persists ... ok
[INFO] [stdout] test expand_alternative_value_when_unset ... ok
[INFO] [stdout] test expand_assign_default_sets_variable ... ok
[INFO] [stdout] test export_and_expand ... ok
[INFO] [stdout] test expand_error_if_unset ... ok
[INFO] [stdout] test expand_case_modification_lowercase ... ok
[INFO] [stdout] test expand_case_modification_uppercase ... ok
[INFO] [stdout] test export_marks_variable ... ok
[INFO] [stdout] test expr_arithmetic ... ok
[INFO] [stdout] test expr_string_length ... ok
[INFO] [stdout] test extended_test_file_test ... ok
[INFO] [stdout] test extended_test_empty_string_z ... ok
[INFO] [stdout] test extended_test_logical_and ... ok
[INFO] [stdout] test extended_test_logical_or ... ok
[INFO] [stdout] test extended_test_logical_not ... ok
[INFO] [stdout] test extended_test_numeric_comparison ... ok
[INFO] [stdout] test extended_test_in_if ... ok
[INFO] [stdout] test extended_test_pattern_match ... ok
[INFO] [stdout] test extended_test_pattern_question_mark ... ok
[INFO] [stdout] test extended_test_regex_match ... ok
[INFO] [stdout] test extended_test_string_equal ... ok
[INFO] [stdout] test extended_test_string_not_equal ... ok
[INFO] [stdout] test extended_test_with_variable ... ok
[INFO] [stdout] test extended_test_combined_and_or ... ok
[INFO] [stdout] test extended_test_pattern_no_match ... ok
[INFO] [stdout] test file_detect_png ... ok
[INFO] [stdout] test extended_test_unary_literal_operand_rewrites_to_runtime_false ... ok
[INFO] [stdout] test find_empty_predicate ... ok
[INFO] [stdout] test extended_test_string_comparison ... ok
[INFO] [stdout] test extended_test_regex_no_match ... ok
[INFO] [stdout] test find_maxdepth_one ... ok
[INFO] [stdout] test file_detect_text ... ok
[INFO] [stdout] test file_detect_directory ... ok
[INFO] [stdout] test file_empty_file ... ok
[INFO] [stdout] test find_mindepth ... ok
[INFO] [stdout] test find_lists_all_files ... ok
[INFO] [stdout] test find_exec_cat ... ok
[INFO] [stdout] test find_not_name ... ok
[INFO] [stdout] test find_nonexistent_path ... ok
[INFO] [stdout] test find_or_predicate ... ok
[INFO] [stdout] test fgrep_fixed_string ... ok
[INFO] [stdout] test format_help_includes_flag_info ... ok
[INFO] [stdout] test format_help_no_flags_section_when_empty ... ok
[INFO] [stdout] test find_type_d ... ok
[INFO] [stdout] test fold_wraps_long_lines ... ok
[INFO] [stdout] test find_pipe_to_xargs ... ok
[INFO] [stdout] test funcname_all_elements ... ok
[INFO] [stdout] test for_loop_basic ... ok
[INFO] [stdout] test for_loop_in_pipeline ... ok
[INFO] [stdout] test funcname_array_keys ... ok
[INFO] [stdout] test flag_info_metadata_accessible ... ok
[INFO] [stdout] test function_call_depth_limit ... ok
[INFO] [stdout] test funcname_array_length ... ok
[INFO] [stdout] test function_define_and_call ... ok
[INFO] [stdout] test funcname_current_function ... ok
[INFO] [stdout] test funcname_nested_calls ... ok
[INFO] [stdout] test function_dollar_hash_inside ... ok
[INFO] [stdout] test find_name_filter ... ok
[INFO] [stdout] test function_dollar_at_inside ... ok
[INFO] [stdout] test function_definitions_persist_across_exec_calls ... ok
[INFO] [stdout] test function_dynamic_scoping ... ok
[INFO] [stdout] test function_keyword_syntax ... ok
[INFO] [stdout] test function_local_variable_scoping ... ok
[INFO] [stdout] test function_local_doesnt_leak ... ok
[INFO] [stdout] test function_local_without_value ... ok
[INFO] [stdout] test function_modify_global_variable ... ok
[INFO] [stdout] test function_name_with_parameter_expansion_is_rejected ... ok
[INFO] [stdout] test function_positional_params ... ok
[INFO] [stdout] test function_nested_calls_with_locals ... ok
[INFO] [stdout] test function_positional_params_restored ... ok
[INFO] [stdout] test function_name_with_command_substitution_is_rejected ... ok
[INFO] [stdout] test function_multiple_locals ... ok
[INFO] [stdout] test function_return_no_args_uses_last_exit_code ... ok
[INFO] [stdout] test function_return_in_loop ... ok
[INFO] [stdout] test function_redefine ... ok
[INFO] [stdout] test function_return_exit_code ... ok
[INFO] [stdout] test function_shadows_command ... ok
[INFO] [stdout] test function_return_value_255 ... ok
[INFO] [stdout] test getopts_internal_state_is_not_exposed_as_shell_variables ... ok
[INFO] [stdout] test glob_absolute_path ... ok
[INFO] [stdout] test function_return_outside_function_error ... ok
[INFO] [stdout] test function_recursive_factorial ... ok
[INFO] [stdout] test glob_doublestar_skips_hidden_dirs ... ok
[INFO] [stdout] test glob_bracket_pattern ... ok
[INFO] [stdout] test glob_no_match_literal ... ok
[INFO] [stdout] test glob_question_mark ... ok
[INFO] [stdout] test glob_hidden_files_explicit_dot ... ok
[INFO] [stdout] test glob_ls_command ... ok
[INFO] [stdout] test glob_hidden_files_skipped ... ok
[INFO] [stdout] test glob_question_mark_utf8 ... ok
[INFO] [stdout] test glob_recursive_doublestar ... ok
[INFO] [stdout] test glob_star_txt ... ok
[INFO] [stdout] test gzip_c_pipe_gunzip_binary_pipeline ... ok
[INFO] [stdout] test glob_single_quoted_no_expand ... ok
[INFO] [stdout] test glob_var_quoted_no_expand ... ok
[INFO] [stdout] test gzip_nonexistent_file_error ... ok
[INFO] [stdout] test gzip_keep_flag ... ok
[INFO] [stdout] test glob_var_expansion_then_glob ... ok
[INFO] [stdout] test help_lists_builtins ... ok
[INFO] [stdout] test help_specific_builtin ... ok
[INFO] [stdout] test here_string_trailing_newline ... ok
[INFO] [stdout] test here_string_unquoted_variable ... ok
[INFO] [stdout] test gzip_compress_and_gunzip_roundtrip_file ... ok
[INFO] [stdout] test gzip_empty_input ... ok
[INFO] [stdout] test heredoc_basic ... ok
[INFO] [stdout] test gzip_redirect_binary_to_file ... ok
[INFO] [stdout] test heredoc_double_quoted_delimiter_no_expansion ... ok
[INFO] [stdout] test gzip_stdin_pipe_gunzip_roundtrip ... ok
[INFO] [stdout] test gzip_decompress_flag ... ok
[INFO] [stdout] test here_string ... ok
[INFO] [stdout] test heredoc_command_substitution ... ok
[INFO] [stdout] test heredoc_empty ... ok
[INFO] [stdout] test heredoc_multiline ... ok
[INFO] [stdout] test heredoc_piped ... ok
[INFO] [stdout] test glob_quoted_no_expand ... ok
[INFO] [stdout] test heredoc_quoted_delimiter_no_expansion ... ok
[INFO] [stdout] test here_string_with_variable ... ok
[INFO] [stdout] test heredoc_tab_stripping ... ok
[INFO] [stdout] test heredoc_tab_stripping_mixed ... ok
[INFO] [stdout] test heredoc_variable_expansion ... ok
[INFO] [stdout] test history_returns_empty ... ok
[INFO] [stdout] test if_else_false_branch ... ok
[INFO] [stdout] test is_input_complete_empty_string ... ok
[INFO] [stdout] test is_input_complete_open_if ... ok
[INFO] [stdout] test is_input_complete_open_heredoc ... ok
[INFO] [stdout] test is_input_complete_syntax_error_is_complete ... ok
[INFO] [stdout] test is_input_complete_unterminated_double_quote ... ok
[INFO] [stdout] test is_input_complete_unterminated_single_quote ... ok
[INFO] [stdout] test hostname_returns_value ... ok
[INFO] [stdout] test is_input_complete_valid_if ... ok
[INFO] [stdout] test heredoc_with_special_chars ... ok
[INFO] [stdout] test hosttype_is_set ... ok
[INFO] [stdout] test if_elif_else ... ok
[INFO] [stdout] test invalid_legacy_ksh_command_substitutions_are_bad_substitution ... ok
[INFO] [stdout] test if_else_true_branch ... ok
[INFO] [stdout] test let_exit_code_nonzero_result ... ok
[INFO] [stdout] test let_builtin_basic ... ok
[INFO] [stdout] test last_exit_code_persists_across_exec_calls ... ok
[INFO] [stdout] test legacy_ksh_command_substitution_captures_stdout ... ok
[INFO] [stdout] test limit_counters_reset_between_exec_calls ... ok
[INFO] [stdout] test legacy_ksh_reply_substitution_reads_reply ... ok
[INFO] [stdout] test limit_eval_increments_call_depth ... ok
[INFO] [stdout] test let_exit_code_zero_result ... ok
[INFO] [stdout] test legacy_ksh_command_substitution_supports_compound_commands ... ok
[INFO] [stdout] test limit_here_string_size_checked ... ok
[INFO] [stdout] test limit_max_glob_results_exceeded ... ok
[INFO] [stdout] test limit_max_call_depth_exceeded_recursive_function ... ok
[INFO] [stdout] test limit_max_heredoc_size_exceeded ... ok
[INFO] [stdout] test limit_max_command_count_exceeded_in_loop ... ok
[INFO] [stdout] test limit_max_string_length_in_read_builtin ... ok
[INFO] [stdout] test limit_max_brace_expansion_exceeded ... ok
[INFO] [stdout] test limit_max_substitution_depth_exceeded ... ok
[INFO] [stdout] test limit_max_string_length_exceeded_in_variable ... ok
[INFO] [stdout] test limit_source_increments_call_depth ... ok
[INFO] [stdout] test limit_max_execution_time_exceeded ... ok
[INFO] [stdout] test lineno_inside_function ... ok
[INFO] [stdout] test lineno_in_arithmetic ... ok
[INFO] [stdout] test lineno_tracks_statement_positions ... ok
[INFO] [stdout] test limit_max_output_size_exceeded_in_pipeline ... ok
[INFO] [stdout] test ls_bin_lists_commands ... ok
[INFO] [stdout] test limit_subshell_command_counts_accumulate ... ok
[INFO] [stdout] test limit_max_loop_iterations_exceeded ... ok
[INFO] [stdout] test ls_one_per_line ... ok
[INFO] [stdout] test machtype_is_set ... ok
[INFO] [stdout] test ls_recursive ... ok
[INFO] [stdout] test ls_shows_created_files ... ok
[INFO] [stdout] test md5sum_produces_hash ... ok
[INFO] [stdout] test nested_if_in_for ... ok
[INFO] [stdout] test multiple_exec_calls_state_persists ... ok
[INFO] [stdout] test mkdir_p_existing_directory_succeeds ... ok
[INFO] [stdout] test mkdir_without_p_fails_on_existing ... ok
[INFO] [stdout] test multi_stage_pipeline ... ok
[INFO] [stdout] test network_disabled_by_default_curl_errors ... ok
[INFO] [stdout] test nested_pipelines ... ok
[INFO] [stdout] test nested_continue_inner_loop ... ok
[INFO] [stdout] test network_method_restriction_rejects_disallowed ... ok
[INFO] [stdout] test noclobber_allows_append ... ok
[INFO] [stdout] test network_url_normalization_attack_rejected ... ok
[INFO] [stdout] test nl_numbers_lines ... ok
[INFO] [stdout] test noclobber_allows_new_file ... ok
[INFO] [stdout] test network_enabled_but_url_not_in_allowlist ... ok
[INFO] [stdout] test noclobber_allows_force_clobber ... ok
[INFO] [stdout] test noexec_suppresses_output ... ok
[INFO] [stdout] test noclobber_allows_append_output_and_error ... ok
[INFO] [stdout] test noexec_blocks_all_after_activation ... ok
[INFO] [stdout] test noclobber_prevents_overwrite ... ok
[INFO] [stdout] test noclobber_blocks_output_and_error_redirect ... ok
[INFO] [stdout] test noglob_can_be_reenabled ... ok
[INFO] [stdout] test nounset_default_value_ok ... ok
[INFO] [stdout] test nounset_special_var_hash_ok ... ok
[INFO] [stdout] test nounset_in_bash_c_exits_127 ... ok
[INFO] [stdout] test nounset_set_var_ok ... ok
[INFO] [stdout] test nounset_special_var_at_ok ... ok
[INFO] [stdout] test paste_joins_lines ... ok
[INFO] [stdout] test pipefail_false_pipe_true ... ok
[INFO] [stdout] test noglob_disables_glob_expansion ... ok
[INFO] [stdout] test parse_error ... ok
[INFO] [stdout] test pipeline_awk_sum_column ... ok
[INFO] [stdout] test nounset_error_on_unset_var ... ok
[INFO] [stdout] test nounset_special_var_question_ok ... ok
[INFO] [stdout] test pipefail_all_true ... ok
[INFO] [stdout] test pipefail_true_false_true ... ok
[INFO] [stdout] test pipeline_awk_sort_join ... ok
[INFO] [stdout] test pipeline_comm_common_lines ... ok
[INFO] [stdout] test pipeline_column_table_formatting ... ok
[INFO] [stdout] test pipeline_comm_only_unique_to_first ... ok
[INFO] [stdout] test pipeline_diff_unified_format ... ok
[INFO] [stdout] test pipeline_diff_identical_files ... ok
[INFO] [stdout] test pipeline_exit_code_last_command ... ok
[INFO] [stdout] test pipeline_expand_unexpand_roundtrip ... ok
[INFO] [stdout] test pipeline_diff_two_files ... ok
[INFO] [stdout] test pipeline_csv_column_frequency ... ok
[INFO] [stdout] test pipeline_echo_cat ... ok
[INFO] [stdout] test pipeline_grep_recursive_wc ... ok
[INFO] [stdout] test pipeline_fmt_wrapping ... ok
[INFO] [stdout] test pipeline_join_custom_field ... ok
[INFO] [stdout] test pipeline_grep_sed_awk_chain ... ok
[INFO] [stdout] test pipeline_jq_sort ... ok
[INFO] [stdout] test pipeline_negation ... ok
[INFO] [stdout] test pipeline_jq_nested_select ... ok
[INFO] [stdout] test pipeline_pipefail_reports_first_failure ... ok
[INFO] [stdout] test pipeline_echo_jq_create_and_filter ... ok
[INFO] [stdout] test pipeline_jq_raw_sort ... ok
[INFO] [stdout] test pipeline_sed_awk_combined ... ok
[INFO] [stdout] test pipeline_tac_reverse_lines ... ok
[INFO] [stdout] test pipeline_sed_grep_count ... ok
[INFO] [stdout] test pipeline_sort_uniq_head ... ok
[INFO] [stdout] test pipeline_sed_in_place_then_cat ... ok
[INFO] [stdout] test pipestatus_length ... ok
[INFO] [stdout] test pipeline_tac_pipe_grep ... ok
[INFO] [stdout] test positional_params ... ok
[INFO] [stdout] test posix_option_accepted ... ok
[INFO] [stdout] test pipestatus_overwritten_by_subsequent_command ... ok
[INFO] [stdout] test pre_command_assignment_visible_in_command_env ... ok
[INFO] [stdout] test pipestatus_pipeline_all_elements ... ok
[INFO] [stdout] test pipestatus_scalar_access_returns_first_code ... ok
[INFO] [stdout] test pipestatus_pipeline_specific_index ... ok
[INFO] [stdout] test pre_command_assignment_not_persisted ... ok
[INFO] [stdout] test ppid_returns_numeric ... ok
[INFO] [stdout] test printf_format_string ... ok
[INFO] [stdout] test printf_zero_padded_width ... ok
[INFO] [stdout] test printf_left_aligned ... ok
[INFO] [stdout] test random_variable_is_numeric_in_range ... ok
[INFO] [stdout] test read_from_file ... ok
[INFO] [stdout] test read_eof_returns_exit_1 ... ok
[INFO] [stdout] test printf_float_precision ... ok
[INFO] [stdout] test quoted_empty_command_exit_127 ... ok
[INFO] [stdout] test pipestatus_simple_command ... ok
[INFO] [stdout] test pipeline_multi_stage_text_processing ... ok
[INFO] [stdout] test readonly_preserves_value ... ok
[INFO] [stdout] test readonly_prevents_reassignment ... ok
[INFO] [stdout] test readlink_f_canonicalize ... ok
[INFO] [stdout] test readlink_symlink ... ok
[INFO] [stdout] test readonly_variable_assignment_error ... ok
[INFO] [stdout] test read_splits_on_ifs ... ok
[INFO] [stdout] test redirect_ampersand_greater_than ... ok
[INFO] [stdout] test redirect_stderr_to_stdout ... ok
[INFO] [stdout] test redirect_to_dev_null ... ok
[INFO] [stdout] test redirect_append ... ok
[INFO] [stdout] test redirect_to_nonexistent_directory_errors ... ok
[INFO] [stdout] test redirect_stderr_and_stdout_combined ... ok
[INFO] [stdout] test rg_case_insensitive ... ok
[INFO] [stdout] test redirect_with_multiword_dollar_at_is_ambiguous ... ok
[INFO] [stdout] test redirect_to_file_and_cat ... ok
[INFO] [stdout] test redirect_no_auto_mkdir ... ok
[INFO] [stdout] test rev_reverses_lines ... ok
[INFO] [stdout] test rg_recursive_search ... ok
[INFO] [stdout] test seconds_assignment_resets_timer ... ok
[INFO] [stdout] test seq_generates_sequence ... ok
[INFO] [stdout] test rmdir_empty_directory ... ok
[INFO] [stdout] test seconds_returns_elapsed_time ... ok
[INFO] [stdout] test set_without_args_lists_variables ... ok
[INFO] [stdout] test rmdir_nonempty_fails ... ok
[INFO] [stdout] test sh_c_isolates_state ... ok
[INFO] [stdout] test seq_with_range_and_step ... ok
[INFO] [stdout] test set_option_names_in_format_output ... ok
[INFO] [stdout] test shell_opts_persist_across_exec_calls ... ok
[INFO] [stdout] test shell_process_does_not_inherit_getopts_cursor_state ... ok
[INFO] [stdout] test sh_c_executes_string ... ok
[INFO] [stdout] test sh_c_positional_params ... ok
[INFO] [stdout] test sha1sum_known_hash ... ok
[INFO] [stdout] test shell_process_started_from_source_does_not_inherit_source_context ... ok
[INFO] [stdout] test sequential_commands ... ok
[INFO] [stdout] test sh_script_file ... ok
[INFO] [stdout] test shellopts_reflects_set_flags ... ok
[INFO] [stdout] test shellopts_empty_by_default ... ok
[INFO] [stdout] test single_quotes_prevent_expansion ... ok
[INFO] [stdout] test source_dot_alias ... ok
[INFO] [stdout] test source_no_args_error ... ok
[INFO] [stdout] test source_multiple_commands_in_file ... ok
[INFO] [stdout] test source_script_can_source_another ... ok
[INFO] [stdout] test snapshot_set_output ... ok
[INFO] [stdout] test snapshot_ls_long ... ok
[INFO] [stdout] test source_runs_in_current_context ... ok
[INFO] [stdout] test snapshot_export_output ... ok
[INFO] [stdout] test source_nonexistent_file_error ... ok
[INFO] [stdout] test snapshot_ls_long_all ... ok
[INFO] [stdout] test split_by_lines ... ok
[INFO] [stdout] test source_script_side_effects_persist ... ok
[INFO] [stdout] test special_variables ... ok
[INFO] [stdout] test state_persists_across_exec_calls ... ok
[INFO] [stdout] test strings_extract_ascii ... ok
[INFO] [stdout] test subshell_isolates_cwd ... ok
[INFO] [stdout] test stat_shows_file_info ... ok
[INFO] [stdout] test tar_create_extract_roundtrip ... ok
[INFO] [stdout] test subshell_isolates_variables ... ok
[INFO] [stdout] test tar_change_directory ... ok
[INFO] [stdout] test symlink_create_and_readlink ... ok
[INFO] [stdout] test tar_directory ... ok
[INFO] [stdout] test subshell_isolates_fs_writes ... ok
[INFO] [stdout] test tar_list_contents ... ok
[INFO] [stdout] test tee_copies_stdin_to_file_and_stdout ... ok
[INFO] [stdout] test test_bracket_missing_close ... ok
[INFO] [stdout] test tar_verbose_output ... ok
[INFO] [stdout] test tar_with_gzip_flag ... ok
[INFO] [stdout] test test_dir_exists ... ok
[INFO] [stdout] test test_dir_not_file ... ok
[INFO] [stdout] test test_exists_file ... ok
[INFO] [stdout] test test_executable_bin ... ok
[INFO] [stdout] test test_logical_and ... ok
[INFO] [stdout] test test_file_exists ... ok
[INFO] [stdout] test test_exists_dir ... ok
[INFO] [stdout] test test_in_if_condition_false ... ok
[INFO] [stdout] test test_no_args_is_false ... ok
[INFO] [stdout] test test_numeric_equal ... ok
[INFO] [stdout] test test_negation_inside_bracket ... ok
[INFO] [stdout] test test_negation_with_bang_pipeline ... ok
[INFO] [stdout] test test_numeric_le ... ok
[INFO] [stdout] test test_numeric_ge ... ok
[INFO] [stdout] test test_numeric_gt ... ok
[INFO] [stdout] test test_numeric_lt ... ok
[INFO] [stdout] test test_in_if_condition ... ok
[INFO] [stdout] test test_logical_or ... ok
[INFO] [stdout] test test_file_not_exists ... ok
[INFO] [stdout] test test_numeric_not_equal ... ok
[INFO] [stdout] test test_single_nonempty_string_is_true ... ok
[INFO] [stdout] test test_size_zero ... ok
[INFO] [stdout] test test_readable_writable_and_executable_bits ... ok
[INFO] [stdout] test test_size_nonzero ... ok
[INFO] [stdout] test test_string_equal ... ok
[INFO] [stdout] test test_string_less_than ... ok
[INFO] [stdout] test test_string_non_zero_length ... ok
[INFO] [stdout] test test_string_not_equal ... ok
[INFO] [stdout] test test_string_greater_than ... ok
[INFO] [stdout] test test_string_equal_double_eq ... ok
[INFO] [stdout] test test_string_zero_length ... ok
[INFO] [stdout] test test_string_zero_nonempty_fails ... ok
[INFO] [stdout] test time_keyword_produces_timing_stderr ... ok
[INFO] [stdout] test trap_empty_ignores_signal ... ok
[INFO] [stdout] test trap_err_does_not_fire_on_success ... ok
[INFO] [stdout] test trap_err_fires_on_false ... ok
[INFO] [stdout] test timeout_command_within_time ... ok
[INFO] [stdout] test trap_cleanup_exit_shows_in_list ... ok
[INFO] [stdout] test test_with_variable_expansion ... ok
[INFO] [stdout] test trap_exit_runs_at_end_of_exec ... ok
[INFO] [stdout] test test_treats_parenthesized_strings_as_binary_comparisons ... ok
[INFO] [stdout] test trap_exit_with_variable ... ok
[INFO] [stdout] test trap_err_no_infinite_recursion ... ok
[INFO] [stdout] test touch_updates_existing_file_mtime ... ok
[INFO] [stdout] test trap_no_args_lists_traps ... ok
[INFO] [stdout] test trap_exit_persists_across_exec_calls ... ok
[INFO] [stdout] test trap_list_signals ... ok
[INFO] [stdout] test trap_multiple_exit_and_err ... ok
[INFO] [stdout] test trap_replace_handler ... ok
[INFO] [stdout] test trap_reset ... ok
[INFO] [stdout] test trap_reset_removes_handler ... ok
[INFO] [stdout] test unknown_option_helper_format ... ok
[INFO] [stdout] test underscore_last_argument ... ok
[INFO] [stdout] test uid_returns_numeric ... ok
[INFO] [stdout] test type_a_special_builtin_only_prints_builtin_once ... ok
[INFO] [stdout] test uname_returns_value ... ok
[INFO] [stdout] test tree_shows_directory_structure ... ok
[INFO] [stdout] test underscore_updates_per_command ... ok
[INFO] [stdout] test unknown_option_head ... ok
[INFO] [stdout] test unknown_option_sort_long ... ok
[INFO] [stdout] test unknown_option_wc_long ... ok
[INFO] [stdout] test unknown_option_sort_short ... ok
[INFO] [stdout] test until_loop ... ok
[INFO] [stdout] test unknown_option_tail ... ok
[INFO] [stdout] test unknown_option_wc_exit_code ... ok
[INFO] [stdout] test utf8_substring_extraction ... ok
[INFO] [stdout] test user_seeded_bin_file_not_clobbered ... ok
[INFO] [stdout] test utf8_substring_no_length ... ok
[INFO] [stdout] test utf8_substring_negative_offset ... ok
[INFO] [stdout] test valid_combined_flags_wc ... ok
[INFO] [stdout] test variable_assignment_and_expansion ... ok
[INFO] [stdout] test valid_flags_still_work_wc ... ok
[INFO] [stdout] test vi_emacs_options_accepted ... ok
[INFO] [stdout] test which_finds_builtin ... ok
[INFO] [stdout] test which_prefers_path_executable_over_builtin ... ok
[INFO] [stdout] test variable_expansion_operators ... ok
[INFO] [stdout] test while_false_never_runs ... ok
[INFO] [stdout] test which_not_found_exits_1 ... ok
[INFO] [stdout] test which_reports_builtin_when_no_path_match ... ok
[INFO] [stdout] test which_resolves_via_path ... ok
[INFO] [stdout] test whoami_returns_value ... ok
[INFO] [stdout] test word_split_adjacent_text_and_expansion ... ok
[INFO] [stdout] test while_loop_simple ... ok
[INFO] [stdout] test word_split_assignment_no_split ... ok
[INFO] [stdout] test vfs_error_display_all_variants ... ok
[INFO] [stdout] test word_split_dollar_at_quoted ... ok
[INFO] [stdout] test word_split_dollar_at_unquoted_with_ifs_chars ... ok
[INFO] [stdout] test word_split_dollar_at_zero_params ... ok
[INFO] [stdout] test word_split_dollar_star_empty_ifs ... ok
[INFO] [stdout] test word_split_dollar_star_quoted_joins_with_ifs ... ok
[INFO] [stdout] test word_split_dollar_at_unquoted ... ok
[INFO] [stdout] test word_split_dollar_at_preserves_spaces ... ok
[INFO] [stdout] test unknown_option_wc_short ... ok
[INFO] [stdout] test word_split_ifs_colon_with_empty_fields ... ok
[INFO] [stdout] test word_split_dollar_star_unquoted ... ok
[INFO] [stdout] test word_split_ifs_override ... ok
[INFO] [stdout] test word_split_multiple_spaces_collapse ... ok
[INFO] [stdout] test word_split_ifs_empty_no_splitting ... ok
[INFO] [stdout] test word_split_empty_variable_no_iterations ... ok
[INFO] [stdout] test word_split_quoted_variable_no_split ... ok
[INFO] [stdout] test word_split_newlines_in_value ... ok
[INFO] [stdout] test word_split_unquoted_in_echo_args ... ok
[INFO] [stdout] test word_split_unquoted_variable ... ok
[INFO] [stdout] test word_split_quoted_preserves_newlines ... ok
[INFO] [stdout] test xargs_with_pipeline_command ... ok
[INFO] [stdout] test xargs_default_echo ... ok
[INFO] [stdout] test word_split_unset_variable_no_iterations ... ok
[INFO] [stdout] test xtrace_emits_trace_on_stderr ... ok
[INFO] [stdout] test word_split_quoted_in_echo_args ... ok
[INFO] [stdout] test xtrace_set_plus_x_is_traced ... ok
[INFO] [stdout] test xargs_no_input ... ok
[INFO] [stdout] test xargs_max_args ... ok
[INFO] [stdout] test xargs_replace_mode ... ok
[INFO] [stdout] test xtrace_uses_ps4_prefix ... ok
[INFO] [stdout] test zcat_outputs_to_stdout ... ok
[INFO] [stdout] test xtrace_bare_assignment ... ok
[INFO] [stdout] test xtrace_per_command_stderr_to_stdout_preserves_trace_order ... ok
[INFO] [stderr]      Running tests/oils_spec.rs (/opt/rustwide/target/debug/deps/oils_spec-4c7cf9469995148f)
[INFO] [stdout] test xtrace_not_emitted_for_set_dash_x_itself ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 675 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.63s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 142 tests
[INFO] [stderr] --- oils_format parser: all 21 unit tests passed
[INFO] [stderr] SKIP file: arg-parse.test
[INFO] [stdout] test run_oils_spec_file::arg-parse.test.sh           ... ok
[INFO] [stderr] XFAIL Indexed LHS with spaces: not in pass-list
[INFO] [stderr] XFAIL Basic alias: not in pass-list
[INFO] [stderr] --- arith-dynamic.test: 4 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (4 total)
[INFO] [stdout] test run_oils_spec_file::arith-dynamic.test.sh       ... ok
[INFO] [stderr] XFAIL set associative array to indexed array literal (very surprising bash behavior): not in pass-list
[INFO] [stderr] XFAIL Nested a[i[0]]=0: not in pass-list
[INFO] [stderr] XFAIL define and use alias on a single line: not in pass-list
[INFO] [stderr] XFAIL Multiple LHS array words: not in pass-list
[INFO] [stderr] --- array-basic.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_oils_spec_file::array-basic.test.sh         ... ok
[INFO] [stderr] XFAIL defining multiple aliases, then unalias: not in pass-list
[INFO] [stderr] XFAIL LHS array is protected with shopt -s eval_unsafe_arith, e.g. 'a[$(echo 2)]': not in pass-list
[INFO] [stderr] XFAIL Tilde expansions in RHS of [k]=v (BashArray): not in pass-list
[INFO] [stderr] XFAIL file named a[ is  not executed: not in pass-list
[INFO] [stderr] XFAIL More fragments like a[  a[5  a[5 +  a[5 + 3]: not in pass-list
[INFO] [stderr] XFAIL Are quotes allowed?: not in pass-list
[INFO] [stderr] XFAIL Tricky parsing - a[ a[0]=1 ]=X  a[ a[0]+=1 ]+=X: not in pass-list
[INFO] [stderr] XFAIL argv.py a[1 + 2]=: not in pass-list
[INFO] [stderr] XFAIL declare builtin doesn't allow spaces: not in pass-list
[INFO] [stderr] --- array-assign.test: 1 pass, 10 xfail, 0 skip, 0 unexpected-pass, 0 fail (11 total)
[INFO] [stdout] test run_oils_spec_file::array-assign.test.sh        ... ok
[INFO] [stderr] XFAIL alias with trailing space causes alias expansion on second word: not in pass-list
[INFO] [stderr] XFAIL Recursive alias expansion of first word: not in pass-list
[INFO] [stderr] XFAIL Recursive alias expansion of SECOND word: not in pass-list
[INFO] [stderr] XFAIL Expansion of alias with variable: not in pass-list
[INFO] [stderr] --- arith-context.test: 16 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_oils_spec_file::arith-context.test.sh       ... ok
[INFO] [stdout] test run_oils_spec_file::array-compat.test.sh        ... ok
[INFO] [stderr] --- array-compat.test: 12 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (12 total)
[INFO] [stderr] SKIP file: assign-deferred.test
[INFO] [stdout] test run_oils_spec_file::assign-deferred.test.sh     ... ok
[INFO] [stderr] SKIP file: assign-dialects.test
[INFO] [stdout] test run_oils_spec_file::assign-dialects.test.sh     ... ok
[INFO] [stderr] XFAIL Alias must be an unquoted word, no expansions allowed: not in pass-list
[INFO] [stderr] XFAIL first and second word are the same alias, but no trailing space: not in pass-list
[INFO] [stderr] XFAIL first and second word are the same alias, with trailing space: not in pass-list
[INFO] [stderr] XFAIL space before ( in array initialization: not in pass-list
[INFO] [stderr] --- append.test: 20 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (20 total)
[INFO] [stdout] test run_oils_spec_file::append.test.sh              ... ok
[INFO] [stderr] XFAIL Syntax error after expansion: not in pass-list
[INFO] [stderr] XFAIL Loop split across alias and arg works: not in pass-list
[INFO] [stderr] XFAIL Loop split across alias in another way: not in pass-list
[INFO] [stderr] XFAIL Slice of associative array doesn't make sense in bash: not in pass-list
[INFO] [stderr] XFAIL Loop split across both iterative and recursive aliases: not in pass-list
[INFO] [stderr] XFAIL Alias with a quote in the middle is a syntax error: not in pass-list
[INFO] [stderr] XFAIL Alias with internal newlines: not in pass-list
[INFO] [stderr] --- array-literal.test: 18 pass, 1 xfail, 0 skip, 0 unexpected-pass, 0 fail (19 total)
[INFO] [stdout] test run_oils_spec_file::array-literal.test.sh       ... ok
[INFO] [stderr] SKIP file: background.test
[INFO] [stdout] test run_oils_spec_file::background.test.sh          ... ok
[INFO] [stderr] SKIP file: ble-features.test
[INFO] [stdout] test run_oils_spec_file::ble-features.test.sh        ... ok
[INFO] [stderr] SKIP file: ble-idioms.test
[INFO] [stdout] test run_oils_spec_file::ble-idioms.test.sh          ... ok
[INFO] [stdout] test run_oils_spec_file::ble-unset.test.sh           ... ok
[INFO] [stderr] SKIP file: ble-unset.test
[INFO] [stdout] test run_oils_spec_file::blog-other1.test.sh         ... ok
[INFO] [stderr] SKIP file: blog-other1.test
[INFO] [stdout] test run_oils_spec_file::blog1.test.sh               ... ok
[INFO] [stderr] SKIP file: blog1.test
[INFO] [stdout] test run_oils_spec_file::blog2.test.sh               ... ok
[INFO] [stderr] SKIP file: blog2.test
[INFO] [stderr] XFAIL Alias trailing newline: not in pass-list
[INFO] [stderr] XFAIL Two aliases in pipeline: not in pass-list
[INFO] [stderr] XFAIL Alias can be defined and used on a single line: not in pass-list
[INFO] [stderr] XFAIL associative array and brace expansion: not in pass-list
[INFO] [stderr] --- bool-parse.test: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stdout] test run_oils_spec_file::bool-parse.test.sh          ... ok
[INFO] [stderr] XFAIL alias with line continuation in the middle: not in pass-list
[INFO] [stderr] XFAIL alias for left brace: not in pass-list
[INFO] [stderr] XFAIL alias for left paren: not in pass-list
[INFO] [stderr] XFAIL ble.sh: eval -- "$(declare -p var arr)": not in pass-list
[INFO] [stderr] XFAIL here doc inside alias: not in pass-list
[INFO] [stderr] XFAIL Alias that is pipeline: not in pass-list
[INFO] [stderr] XFAIL Arrays can't be used as env bindings: not in pass-list
[INFO] [stderr] XFAIL Alias that is && || ;: not in pass-list
[INFO] [stderr] XFAIL Associative arrays can't be used as env bindings either: not in pass-list
[INFO] [stderr] XFAIL BashAssoc ${a[@]@Q}: not in pass-list
[INFO] [stderr] --- array-assoc.test: 38 pass, 4 xfail, 0 skip, 0 unexpected-pass, 0 fail (42 total)
[INFO] [stdout] test run_oils_spec_file::array-assoc.test.sh         ... ok
[INFO] [stderr] XFAIL compgen -F _set_COMPREPLY: not in pass-list
[INFO] [stderr] XFAIL Initializing indexed array with ([index]=value): not in pass-list
[INFO] [stdout] test run_oils_spec_file::array-sparse.test.sh        ... ok
[INFO] [stderr] --- array-sparse.test: 38 pass, 2 xfail, 0 skip, 0 unexpected-pass, 0 fail (40 total)
[INFO] [stderr] XFAIL alias with keywords: not in pass-list
[INFO] [stderr] XFAIL file with NUL byte: not in pass-list
[INFO] [stderr] --- alias.test: 22 pass, 26 xfail, 0 skip, 0 unexpected-pass, 0 fail (48 total)
[INFO] [stdout] test run_oils_spec_file::alias.test.sh               ... ok
[INFO] [stderr] SKIP file: builtin-bind.test
[INFO] [stdout] test run_oils_spec_file::builtin-bind.test.sh        ... ok
[INFO] [stdout] test run_oils_spec_file::assign-extended.test.sh     ... ok
[INFO] [stderr] --- assign-extended.test: 38 pass, 1 xfail, 0 skip, 0 unexpected-pass, 0 fail (39 total)
[INFO] [stderr] XFAIL Multiple subscripts not allowed: not in pass-list
[INFO] [stderr] XFAIL command execution $(echo 42 | tee PWNED) not allowed: not in pass-list
[INFO] [stdout] test run_oils_spec_file::assign.test.sh              ... ok
[INFO] [stderr] --- assign.test: 48 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (48 total)
[INFO] [stderr] XFAIL unset doesn't allow command execution: not in pass-list
[INFO] [stderr] SKIP file: builtin-completion.test
[INFO] [stdout] test run_oils_spec_file::builtin-completion.test.sh  ... ok
[INFO] [stderr] XFAIL pwd with symlink and -P: not in pass-list
[INFO] [stderr] --- builtin-bash.test: 12 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_oils_spec_file::builtin-bash.test.sh        ... ok
[INFO] [stderr] --- arith.test: 74 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (74 total)
[INFO] [stdout] test run_oils_spec_file::arith.test.sh               ... ok
[INFO] [stderr] XFAIL pwd in symlinked dir on shell initialization: not in pass-list
[INFO] [stderr] XFAIL Test the current directory after 'cd ..' involving symlinks: not in pass-list
[INFO] [stderr] XFAIL #2640 Hanging when reading from character devices: not in pass-list
[INFO] [stderr] --- bugs.test: 24 pass, 4 xfail, 1 skip, 0 unexpected-pass, 0 fail (29 total)
[INFO] [stdout] test run_oils_spec_file::bugs.test.sh                ... ok
[INFO] [stdout] test run_oils_spec_file::builtin-fc.test.sh          ... ok
[INFO] [stderr] SKIP file: builtin-fc.test
[INFO] [stderr] XFAIL cd to symlink with -L and -P: not in pass-list
[INFO] [stderr] XFAIL cd to relative path with -L and -P: not in pass-list
[INFO] [stderr] --- builtin-dirs.test: 17 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (18 total)
[INFO] [stdout] test run_oils_spec_file::builtin-dirs.test.sh        ... ok
[INFO] [stderr] SKIP file: builtin-history.test
[INFO] [stdout] test run_oils_spec_file::builtin-history.test.sh     ... ok
[INFO] [stdout] test run_oils_spec_file::builtin-kill.test.sh        ... ok
[INFO] [stderr] SKIP file: builtin-kill.test
[INFO] [stderr] XFAIL Change directory in non-shell parent process (make or Python): not in pass-list
[INFO] [stderr] --- brace-expansion.test: 55 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (55 total)
[INFO] [stdout] test run_oils_spec_file::brace-expansion.test.sh     ... ok
[INFO] [stderr] XFAIL What happens when inherited $PWD and current dir disagree?: not in pass-list
[INFO] [stderr] --- array.test: 74 pass, 4 xfail, 0 skip, 0 unexpected-pass, 0 fail (78 total)
[INFO] [stdout] test run_oils_spec_file::array.test.sh               ... ok
[INFO] [stderr] --- builtin-cd.test: 22 pass, 7 xfail, 1 skip, 0 unexpected-pass, 0 fail (30 total)
[INFO] [stdout] test run_oils_spec_file::builtin-cd.test.sh          ... ok
[INFO] [stderr] --- builtin-eval-source.test: 23 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (23 total)
[INFO] [stdout] test run_oils_spec_file::builtin-eval-source.test.sh ... ok
[INFO] [stderr] SKIP file: builtin-process.test
[INFO] [stdout] test run_oils_spec_file::builtin-process.test.sh     ... ok
[INFO] [stdout] test run_oils_spec_file::builtin-echo.test.sh        ... ok
[INFO] [stderr] --- builtin-echo.test: 27 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (27 total)
[INFO] [stderr] --- builtin-misc.test: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stdout] test run_oils_spec_file::builtin-misc.test.sh        ... ok
[INFO] [stderr] --- builtin-meta-assign.test: 11 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (11 total)
[INFO] [stdout] test run_oils_spec_file::builtin-meta-assign.test.sh ... ok
[INFO] [stderr] SKIP file: builtin-times.test
[INFO] [stdout] test run_oils_spec_file::builtin-times.test.sh       ... ok
[INFO] [stdout] test run_oils_spec_file::builtin-trap-bash.test.sh   ... ok
[INFO] [stderr] SKIP file: builtin-trap-bash.test
[INFO] [stderr] SKIP file: builtin-trap-err.test
[INFO] [stdout] test run_oils_spec_file::builtin-trap-err.test.sh    ... ok
[INFO] [stderr] SKIP file: builtin-trap.test
[INFO] [stdout] test run_oils_spec_file::builtin-trap.test.sh        ... ok
[INFO] [stderr] --- builtin-meta.test: 17 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (18 total)
[INFO] [stdout] test run_oils_spec_file::builtin-meta.test.sh        ... ok
[INFO] [stderr] --- builtin-getopts.test: 31 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (31 total)
[INFO] [stdout] test run_oils_spec_file::builtin-getopts.test.sh     ... ok
[INFO] [stderr] SKIP file: builtin-umask.test
[INFO] [stdout] test run_oils_spec_file::builtin-umask.test.sh       ... ok
[INFO] [stderr] --- builtin-bracket.test: 47 pass, 0 xfail, 5 skip, 0 unexpected-pass, 0 fail (52 total)
[INFO] [stdout] test run_oils_spec_file::builtin-bracket.test.sh     ... ok
[INFO] [stderr] --- builtin-type.test: 6 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (6 total)
[INFO] [stdout] test run_oils_spec_file::builtin-type.test.sh        ... ok
[INFO] [stderr] --- builtin-special.test: 12 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (12 total)
[INFO] [stdout] test run_oils_spec_file::builtin-special.test.sh     ... ok
[INFO] [stdout] test run_oils_spec_file::command-parsing.test.sh     ... ok
[INFO] [stderr] --- command-parsing.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr] XFAIL case in subshell: not in pass-list
[INFO] [stderr] --- command-sub-ksh.test: 4 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (4 total)
[INFO] [stdout] test run_oils_spec_file::command-sub-ksh.test.sh     ... ok
[INFO] [stderr] XFAIL Nested backticks: not in pass-list
[INFO] [stderr] --- builtin-set.test: 24 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (24 total)
[INFO] [stdout] test run_oils_spec_file::builtin-set.test.sh         ... ok
[INFO] [stderr] --- builtin-type-bash.test: 29 pass, 0 xfail, 2 skip, 0 unexpected-pass, 0 fail (31 total)
[INFO] [stdout] test run_oils_spec_file::builtin-type-bash.test.sh   ... ok
[INFO] [stderr] --- comments.test: 2 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (2 total)
[INFO] [stdout] test run_oils_spec_file::comments.test.sh            ... ok
[INFO] [stdout] test run_oils_spec_file::divergence.test.sh          ... ok
[INFO] [stderr] SKIP file: divergence.test
[INFO] [stderr] XFAIL Double Quotes in Command Sub in Double Quotes: not in pass-list
[INFO] [stderr] --- command_.test: 16 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_oils_spec_file::command_.test.sh            ... ok
[INFO] [stderr] XFAIL Escaped quote in [[ ]]: not in pass-list
[INFO] [stderr] XFAIL Quoting $ within ``: not in pass-list
[INFO] [stderr] XFAIL Quoting $ within `` within double quotes: not in pass-list
[INFO] [stderr] --- empty-bodies.test: 3 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (3 total)
[INFO] [stdout] test run_oils_spec_file::empty-bodies.test.sh        ... ok
[INFO] [stderr] SKIP file: errexit-osh.test
[INFO] [stdout] test run_oils_spec_file::errexit-osh.test.sh         ... ok
[INFO] [stdout] test run_oils_spec_file::dparen.test.sh              ... ok
[INFO] [stderr] --- dparen.test: 15 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (15 total)
[INFO] [stderr] XFAIL Quoting \ within ``: not in pass-list
[INFO] [stderr] --- case_.test: 12 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_oils_spec_file::case_.test.sh               ... ok
[INFO] [stderr] XFAIL Quoting \ within `` within double quotes: not in pass-list
[INFO] [stderr] SKIP file: explore-parsing.test
[INFO] [stdout] test run_oils_spec_file::explore-parsing.test.sh     ... ok
[INFO] [stderr] XFAIL Quoting ( within ``: not in pass-list
[INFO] [stderr] XFAIL Quoting ( within `` within double quotes: not in pass-list
[INFO] [stderr] --- builtin-vars.test: 34 pass, 0 xfail, 7 skip, 0 unexpected-pass, 0 fail (41 total)
[INFO] [stdout] test run_oils_spec_file::builtin-vars.test.sh        ... ok
[INFO] [stderr] XFAIL Quoting non-special characters within ``: not in pass-list
[INFO] [stderr] XFAIL Quoting non-special characters within `` within double quotes: not in pass-list
[INFO] [stderr] XFAIL Quoting double quotes within backticks: not in pass-list
[INFO] [stderr] XFAIL More levels of double quotes in backticks: not in pass-list
[INFO] [stderr] XFAIL Syntax errors with double quotes within backticks: not in pass-list
[INFO] [stderr] --- command-sub.test: 15 pass, 15 xfail, 0 skip, 0 unexpected-pass, 0 fail (30 total)
[INFO] [stdout] test run_oils_spec_file::command-sub.test.sh         ... ok
[INFO] [stderr] --- builtin-printf.test: 63 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (63 total)
[INFO] [stdout] test run_oils_spec_file::builtin-printf.test.sh      ... ok
[INFO] [stderr] --- fatal-errors.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_oils_spec_file::fatal-errors.test.sh        ... ok
[INFO] [stderr] --- exit-status.test: 11 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (11 total)
[INFO] [stdout] test run_oils_spec_file::exit-status.test.sh         ... ok
[INFO] [stderr] XFAIL Turning extglob on changes the meaning of [[ !(str) ]] in bash: not in pass-list
[INFO] [stderr] --- extglob-files.test: 23 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (23 total)
[INFO] [stdout] test run_oils_spec_file::extglob-files.test.sh       ... ok
[INFO] [stdout] test run_oils_spec_file::glob-bash.test.sh           ... ok
[INFO] [stderr] --- glob-bash.test: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stderr] --- func-parsing.test: 13 pass, 0 xfail, 2 skip, 0 unexpected-pass, 0 fail (15 total)
[INFO] [stdout] test run_oils_spec_file::func-parsing.test.sh        ... ok
[INFO] [stderr] --- for-expr.test: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stdout] test run_oils_spec_file::for-expr.test.sh            ... ok
[INFO] [stderr] --- dbracket.test: 47 pass, 0 xfail, 2 skip, 0 unexpected-pass, 0 fail (49 total)
[INFO] [stderr] SKIP file: hay-isolation.test
[INFO] [stdout] test run_oils_spec_file::hay-isolation.test.sh       ... ok
[INFO] [stdout] test run_oils_spec_file::dbracket.test.sh            ... ok
[INFO] [stdout] test run_oils_spec_file::hay.test.sh                 ... ok
[INFO] [stderr] SKIP file: hay.test
[INFO] [stderr] SKIP file: hay-meta.test
[INFO] [stdout] test run_oils_spec_file::hay-meta.test.sh            ... ok
[INFO] [stdout] test run_oils_spec_file::extglob-match.test.sh       ... ok
[INFO] [stderr] --- extglob-match.test: 28 pass, 1 xfail, 0 skip, 0 unexpected-pass, 0 fail (29 total)
[INFO] [stdout] test run_oils_spec_file::interactive-parse.test.sh   ... ok
[INFO] [stderr] SKIP file: interactive-parse.test
[INFO] [stdout] test run_oils_spec_file::interactive.test.sh         ... ok
[INFO] [stderr] SKIP file: interactive.test
[INFO] [stderr] XFAIL glob can expand to command and arg: not in pass-list
[INFO] [stderr] XFAIL Ignore dirs dist/*:node_modules/*: not in pass-list
[INFO] [stderr] XFAIL find files in subdirectory but not the ignored pattern: not in pass-list
[INFO] [stderr] XFAIL BASH_SOURCE and BASH_LINENO scalar or array (e.g. for virtualenv): not in pass-list
[INFO] [stderr] --- if_.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr] XFAIL bash atoms [[ (( - redir failure checked: not in pass-list
[INFO] [stderr] SKIP file: known-differences.test
[INFO] [stdout] test run_oils_spec_file::if_.test.sh                 ... ok
[INFO] [stdout] test run_oils_spec_file::known-differences.test.sh   ... ok
[INFO] [stderr] XFAIL Ignore globs with char classes like [[:alnum:]]: not in pass-list
[INFO] [stderr] --- globstar.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_oils_spec_file::globstar.test.sh            ... ok
[INFO] [stderr] --- let.test: 2 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (2 total)
[INFO] [stdout] test run_oils_spec_file::let.test.sh                 ... ok
[INFO] [stderr] XFAIL glob with escaped - in char class: not in pass-list
[INFO] [stderr] --- errexit.test: 34 pass, 1 xfail, 0 skip, 0 unexpected-pass, 0 fail (35 total)
[INFO] [stdout] test run_oils_spec_file::errexit.test.sh             ... ok
[INFO] [stderr] SKIP file: nix-idioms.test
[INFO] [stdout] test run_oils_spec_file::nix-idioms.test.sh          ... ok
[INFO] [stderr] --- introspect.test: 8 pass, 1 xfail, 4 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_oils_spec_file::introspect.test.sh          ... ok
[INFO] [stderr] --- builtin-read.test: 64 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (64 total)
[INFO] [stdout] test run_oils_spec_file::builtin-read.test.sh        ... ok
[INFO] [stderr] SKIP file: osh-bugs.test
[INFO] [stdout] test run_oils_spec_file::osh-bugs.test.sh            ... ok
[INFO] [stderr] XFAIL printf - literal NUL in format string: not in pass-list
[INFO] [stderr] --- nocasematch-match.test: 6 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (6 total)
[INFO] [stdout] test run_oils_spec_file::nocasematch-match.test.sh   ... ok
[INFO] [stderr] XFAIL Long Token - 65535 bytes: not in pass-list
[INFO] [stderr] XFAIL NUL bytes and IFS splitting: not in pass-list
[INFO] [stderr] XFAIL Token that's too long for Oils - 65536 bytes: not in pass-list
[INFO] [stderr] --- globignore.test: 15 pass, 3 xfail, 0 skip, 0 unexpected-pass, 0 fail (18 total)
[INFO] [stdout] test run_oils_spec_file::globignore.test.sh          ... ok
[INFO] [stderr] XFAIL Bad braced var sub -- not allowed: not in pass-list
[INFO] [stderr] --- paren-ambiguity.test: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stderr] SKIP file: posix.test
[INFO] [stdout] test run_oils_spec_file::paren-ambiguity.test.sh     ... ok
[INFO] [stderr] SKIP file: print-source-code.test
[INFO] [stdout] test run_oils_spec_file::posix.test.sh               ... ok
[INFO] [stdout] test run_oils_spec_file::print-source-code.test.sh   ... ok
[INFO] [stderr] XFAIL } on the second line: not in pass-list
[INFO] [stderr] XFAIL Glob ordering respects LC_COLLATE (zsh respects this too): not in pass-list
[INFO] [stderr] XFAIL Compare \x00 byte versus \x01 byte - command sub: not in pass-list
[INFO] [stderr] XFAIL Compare \x00 byte versus \x01 byte - read builtin: not in pass-list
[INFO] [stderr] XFAIL Process sub from shell to stdin: not in pass-list
[INFO] [stderr] XFAIL Compare \x00 byte versus \x01 byte - read -n: not in pass-list
[INFO] [stderr] --- here-doc.test: 36 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (36 total)
[INFO] [stdout] test run_oils_spec_file::here-doc.test.sh            ... ok
[INFO] [stderr] XFAIL Compare \x00 byte versus \x01 byte - mapfile builtin: not in pass-list
[INFO] [stdout] test run_oils_spec_file::prompt.test.sh              ... ok
[INFO] [stderr] SKIP file: prompt.test
[INFO] [stderr] XFAIL Strip ops # ## % %% with NUL bytes: not in pass-list
[INFO] [stderr] XFAIL Issue 2269 Reduction: not in pass-list
[INFO] [stderr] --- glob.test: 36 pass, 3 xfail, 0 skip, 0 unexpected-pass, 0 fail (39 total)
[INFO] [stderr] XFAIL Non-linear pipeline with >(): not in pass-list
[INFO] [stdout] test run_oils_spec_file::glob.test.sh                ... ok
[INFO] [stderr] XFAIL a[expr] in nameref: not in pass-list
[INFO] [stderr] XFAIL interactive parse error (regression): not in pass-list
[INFO] [stderr] XFAIL a[@] in nameref: not in pass-list
[INFO] [stderr] XFAIL Issue 2269 - Do NUL bytes match ? in ${a#?}: not in pass-list
[INFO] [stderr] --- nul-bytes.test: 7 pass, 9 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_oils_spec_file::nul-bytes.test.sh           ... ok
[INFO] [stderr] XFAIL array literal inside array is a parse error: not in pass-list
[INFO] [stderr] XFAIL bad mutation through nameref: ref[0]= where ref is array[0]: not in pass-list
[INFO] [stderr] --- loop.test: 27 pass, 0 xfail, 2 skip, 0 unexpected-pass, 0 fail (29 total)
[INFO] [stdout] test run_oils_spec_file::loop.test.sh                ... ok
[INFO] [stdout] test run_oils_spec_file::redir-order.test.sh         ... ok
[INFO] [stderr] --- redir-order.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stderr] --- nameref.test: 29 pass, 3 xfail, 0 skip, 0 unexpected-pass, 0 fail (32 total)
[INFO] [stdout] test run_oils_spec_file::nameref.test.sh             ... ok
[INFO] [stderr] --- parse-errors.test: 20 pass, 6 xfail, 1 skip, 0 unexpected-pass, 0 fail (27 total)
[INFO] [stdout] test run_oils_spec_file::parse-errors.test.sh        ... ok
[INFO] [stderr] --- process-sub.test: 7 pass, 2 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stdout] test run_oils_spec_file::process-sub.test.sh         ... ok
[INFO] [stderr] --- serialize.test: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (10 total)
[INFO] [stdout] test run_oils_spec_file::serialize.test.sh           ... ok
[INFO] [stderr] XFAIL SIGPIPE causes pipeline to die (regression for issue #295): not in pass-list
[INFO] [stderr] XFAIL : 9> fdleak (OSH regression): not in pass-list
[INFO] [stderr] --- redirect-multi.test: 13 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_oils_spec_file::redirect-multi.test.sh      ... ok
[INFO] [stderr] --- redirect-command.test: 22 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (23 total)
[INFO] [stdout] test run_oils_spec_file::redirect-command.test.sh    ... ok
[INFO] [stderr] --- quote.test: 35 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (35 total)
[INFO] [stdout] test run_oils_spec_file::quote.test.sh               ... ok
[INFO] [stderr] SKIP file: shell-bugs.test
[INFO] [stdout] test run_oils_spec_file::shell-bugs.test.sh          ... ok
[INFO] [stderr] --- sh-func.test: 12 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (12 total)
[INFO] [stdout] test run_oils_spec_file::sh-func.test.sh             ... ok
[INFO] [stderr] --- sh-options-bash.test: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stdout] test run_oils_spec_file::sh-options-bash.test.sh     ... ok
[INFO] [stderr] SKIP file: spec-harness-bug.test
[INFO] [stdout] test run_oils_spec_file::spec-harness-bug.test.sh    ... ok
[INFO] [stderr] --- shell-grammar.test: 5 pass, 0 xfail, 33 skip, 0 unexpected-pass, 0 fail (38 total)
[INFO] [stdout] test run_oils_spec_file::shell-grammar.test.sh       ... ok
[INFO] [stderr] --- pipeline.test: 25 pass, 1 xfail, 0 skip, 0 unexpected-pass, 0 fail (26 total)
[INFO] [stdout] test run_oils_spec_file::pipeline.test.sh            ... ok
[INFO] [stderr] --- subshell.test: 2 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (2 total)
[INFO] [stdout] test run_oils_spec_file::subshell.test.sh            ... ok
[INFO] [stderr] XFAIL Quoted { and +: not in pass-list
[INFO] [stderr] XFAIL <> for read/write named pipes: not in pass-list
[INFO] [stderr] --- temp-binding.test: 4 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (4 total)
[INFO] [stdout] test run_oils_spec_file::temp-binding.test.sh        ... ok
[INFO] [stderr] SKIP file: toysh-posix.test
[INFO] [stdout] test run_oils_spec_file::toysh-posix.test.sh         ... ok
[INFO] [stderr] SKIP file: toysh.test
[INFO] [stdout] test run_oils_spec_file::toysh.test.sh               ... ok
[INFO] [stderr] SKIP file: type-compat.test
[INFO] [stdout] test run_oils_spec_file::type-compat.test.sh         ... ok
[INFO] [stderr] XFAIL Set LC_ALL LC_CTYPE LC_COLLATE LANG - affects glob ?: not in pass-list
[INFO] [stderr] XFAIL LC_CTYPE=invalid: not in pass-list
[INFO] [stderr] XFAIL OSH source code doesn't have to be valid Unicode (like other shells): not in pass-list
[INFO] [stderr] XFAIL Max code point U+10ffff can escaped with $''  printf  echo -e: not in pass-list
[INFO] [stderr] XFAIL $'' does NOT check that 0x110000 is too big at parse time: not in pass-list
[INFO] [stderr] XFAIL $'' does not check for surrogate range at parse time: not in pass-list
[INFO] [stderr] --- strict-options.test: 17 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (17 total)
[INFO] [stdout] test run_oils_spec_file::strict-options.test.sh      ... ok
[INFO] [stderr] XFAIL printf / echo -e do NOT check max code point at runtime: not in pass-list
[INFO] [stderr] XFAIL unquoted (a  b) as pattern, (a  b|c): not in pass-list
[INFO] [stderr] --- tilde.test: 14 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (14 total)
[INFO] [stdout] test run_oils_spec_file::tilde.test.sh               ... ok
[INFO] [stderr] --- sh-usage.test: 20 pass, 2 xfail, 2 skip, 0 unexpected-pass, 0 fail (24 total)
[INFO] [stderr] XFAIL Parsing of x={myvar} and related cases: not in pass-list
[INFO] [stdout] test run_oils_spec_file::sh-usage.test.sh            ... ok
[INFO] [stdout] test run_oils_spec_file::smoke.test.sh               ... ok
[INFO] [stderr] --- smoke.test: 18 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (18 total)
[INFO] [stderr] XFAIL xtrace not affected by redirects: not in pass-list
[INFO] [stderr] --- redirect.test: 36 pass, 4 xfail, 1 skip, 0 unexpected-pass, 0 fail (41 total)
[INFO] [stdout] test run_oils_spec_file::redirect.test.sh            ... ok
[INFO] [stderr] XFAIL printf / echo -e do NOT check surrogates at runtime: not in pass-list
[INFO] [stderr] --- unicode.test: 1 pass, 6 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stdout] test run_oils_spec_file::unicode.test.sh             ... ok
[INFO] [stderr] XFAIL unquoted [a  b] as pattern, [a  b|c]: not in pass-list
[INFO] [stderr] XFAIL Operator chars ; & but not |: not in pass-list
[INFO] [stdout] test run_oils_spec_file::var-num.test.sh             ... ok
[INFO] [stderr] --- var-num.test: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stderr] XFAIL Parse error with 2 words: not in pass-list
[INFO] [stderr] XFAIL make a lisp example: not in pass-list
[INFO] [stderr] XFAIL Operators and space lose meaning inside (): not in pass-list
[INFO] [stderr] --- regex.test: 30 pass, 7 xfail, 0 skip, 0 unexpected-pass, 0 fail (37 total)
[INFO] [stdout] test run_oils_spec_file::regex.test.sh               ... ok
[INFO] [stderr] --- var-op-len.test: 9 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (9 total)
[INFO] [stdout] test run_oils_spec_file::var-op-len.test.sh          ... ok
[INFO] [stderr] XFAIL var ref: 1, @, *: not in pass-list
[INFO] [stderr] XFAIL var ref to special var BASH_SOURCE: not in pass-list
[INFO] [stderr] --- sh-options.test: 37 pass, 0 xfail, 2 skip, 0 unexpected-pass, 0 fail (39 total)
[INFO] [stdout] test run_oils_spec_file::sh-options.test.sh          ... ok
[INFO] [stderr] --- var-op-slice.test: 22 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (22 total)
[INFO] [stdout] test run_oils_spec_file::var-op-slice.test.sh        ... ok
[INFO] [stdout] test run_oils_spec_file::vars-bash.test.sh           ... ok
[INFO] [stderr] --- vars-bash.test: 1 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (1 total)
[INFO] [stderr] --- var-sub.test: 6 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (6 total)
[INFO] [stdout] test run_oils_spec_file::var-sub.test.sh             ... ok
[INFO] [stderr] --- var-op-bash.test: 26 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (27 total)
[INFO] [stdout] test run_oils_spec_file::var-op-bash.test.sh         ... ok
[INFO] [stderr] XFAIL var ref TO array var, with subscripts: not in pass-list
[INFO] [stderr] --- var-op-patsub.test: 28 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (28 total)
[INFO] [stdout] test run_oils_spec_file::var-op-patsub.test.sh       ... ok
[INFO] [stderr] XFAIL var ref TO assoc array a[key]: not in pass-list
[INFO] [stderr] --- whitespace.test: 5 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (5 total)
[INFO] [stdout] test run_oils_spec_file::whitespace.test.sh          ... ok
[INFO] [stderr] XFAIL var ref TO array with arbitrary subscripts: not in pass-list
[INFO] [stderr] XFAIL Bizarre tilde expansion in array index: not in pass-list
[INFO] [stderr] --- word-eval.test: 8 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (8 total)
[INFO] [stdout] test run_oils_spec_file::word-eval.test.sh           ... ok
[INFO] [stdout] test run_oils_spec_file::zsh-assoc.test.sh           ... ok
[INFO] [stderr] SKIP file: zsh-assoc.test
[INFO] [stdout] test run_oils_spec_file::zsh-idioms.test.sh          ... ok
[INFO] [stderr] SKIP file: zsh-idioms.test
[INFO] [stderr] --- var-op-strip.test: 29 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (29 total)
[INFO] [stdout] test run_oils_spec_file::var-op-strip.test.sh        ... ok
[INFO] [stderr] XFAIL Indirect expansion TO fancy expansion features bash disallows: not in pass-list
[INFO] [stderr] XFAIL Var Ref Code Injection $(tee PWNED): not in pass-list
[INFO] [stderr] XFAIL ${!array_ref:-set} and ${!array_ref:=assign}: not in pass-list
[INFO] [stderr] --- var-op-test.test: 36 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (37 total)
[INFO] [stdout] test run_oils_spec_file::var-op-test.test.sh         ... ok
[INFO] [stderr] XFAIL Array indirect expansion with suffix operators: not in pass-list
[INFO] [stderr] XFAIL Array indirect expansion with replacements: not in pass-list
[INFO] [stderr] XFAIL Array indirect expansion with @? conversion: not in pass-list
[INFO] [stderr] --- var-ref.test: 18 pass, 12 xfail, 1 skip, 0 unexpected-pass, 0 fail (31 total)
[INFO] [stdout] test run_oils_spec_file::var-ref.test.sh             ... ok
[INFO] [stderr] --- xtrace.test: 19 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (19 total)
[INFO] [stdout] test run_oils_spec_file::xtrace.test.sh              ... ok
[INFO] [stdout] test run_oils_spec_file::var-sub-quote.test.sh       ... ok
[INFO] [stderr] --- var-sub-quote.test: 41 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (41 total)
[INFO] [stderr] --- vars-special.test: 37 pass, 0 xfail, 5 skip, 0 unexpected-pass, 0 fail (42 total)
[INFO] [stdout] test run_oils_spec_file::vars-special.test.sh        ... ok
[INFO] [stderr] --- word-split.test: 54 pass, 0 xfail, 1 skip, 0 unexpected-pass, 0 fail (55 total)
[INFO] [stdout] test run_oils_spec_file::word-split.test.sh          ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 142 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 17.44s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/spec_tests.rs (/opt/rustwide/target/debug/deps/spec_tests-a25ba6db7fc3db14)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test run_spec_file::basic_commands.toml   ... ok
[INFO] [stderr] --- basic_commands: 7 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (7 total)
[INFO] [stdout] test run_spec_file::grep/basic.toml       ... ok
[INFO] [stderr] --- basic: 12 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (12 total)
[INFO] [stderr] --- patterns: 12 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (12 total)
[INFO] [stdout] test run_spec_file::awk/patterns.toml     ... ok
[INFO] [stderr] --- arithmetic: 16 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_spec_file::awk/arithmetic.toml   ... ok
[INFO] [stderr] --- builtins: 16 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_spec_file::awk/builtins.toml     ... ok
[INFO] [stderr] --- regex: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (10 total)
[INFO] [stdout] test run_spec_file::grep/regex.toml       ... ok
[INFO] [stderr] --- fields: 19 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (19 total)
[INFO] [stdout] test run_spec_file::awk/fields.toml       ... ok
[INFO] [stderr] --- flags: 19 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (19 total)
[INFO] [stdout] test run_spec_file::grep/flags.toml       ... ok
[INFO] [stderr] --- addresses: 10 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (10 total)
[INFO] [stdout] test run_spec_file::sed/addresses.toml    ... ok
[INFO] [stderr] --- basic: 14 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (14 total)
[INFO] [stdout] test run_spec_file::jq/basic.toml         ... ok
[INFO] [stderr] --- commands: 13 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_spec_file::sed/commands.toml     ... ok
[INFO] [stderr] --- substitution: 13 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (13 total)
[INFO] [stdout] test run_spec_file::sed/substitution.toml ... ok
[INFO] [stderr] --- filters: 16 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (16 total)
[INFO] [stdout] test run_spec_file::jq/filters.toml       ... ok
[INFO] [stderr] --- types: 23 pass, 0 xfail, 0 skip, 0 unexpected-pass, 0 fail (23 total)
[INFO] [stdout] test run_spec_file::jq/types.toml         ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.27s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rust_bash
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/vfs/mountable.rs - vfs::mountable::MountableFs (line 37) ... ignored
[INFO] [stdout] test src/vfs/overlay.rs - vfs::overlay::OverlayFs (line 32) ... ignored
[INFO] [stdout] test src/vfs/readwrite.rs - vfs::readwrite::ReadWriteFs (line 32) ... ignored
[INFO] [stdout] test src/lib.rs - (line 9) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 2.34s; merged doctests compilation took 2.25s
[INFO] running `Command { std: "docker" "inspect" "8ae6847326b0e087691053292ce079dadef308f1e73e686a6128ffe27a21f69a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ae6847326b0e087691053292ce079dadef308f1e73e686a6128ffe27a21f69a", kill_on_drop: false }`
[INFO] [stdout] 8ae6847326b0e087691053292ce079dadef308f1e73e686a6128ffe27a21f69a
