[INFO] fetching crate dprint-plugin-dockerfile 0.7.0...
[INFO] testing dprint-plugin-dockerfile-0.7.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate dprint-plugin-dockerfile 0.7.0 into /workspace/builds/worker-5-tc2/source
[INFO] removed /workspace/builds/worker-5-tc2/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate dprint-plugin-dockerfile 0.7.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate dprint-plugin-dockerfile 0.7.0
[INFO] tweaked toml for crates.io crate dprint-plugin-dockerfile 0.7.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate dprint-plugin-dockerfile 0.7.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate dprint-plugin-dockerfile 0.7.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | homepage = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 | repository = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dprint-plugin-dockerfile` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b
[INFO] running `Command { std: "docker" "start" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | homepage = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 | repository = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dprint-plugin-dockerfile` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling unicode-ident v1.0.3
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling monch v0.6.0
[INFO] [stderr]    Compiling bumpalo v3.20.3
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling dprint-core-macros v0.1.0
[INFO] [stderr]    Compiling dprint-core v0.70.0
[INFO] [stderr]    Compiling dprint-plugin-dockerfile v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 17.51s
[INFO] running `Command { std: "docker" "inspect" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | homepage = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 | repository = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dprint-plugin-dockerfile` (manifest) generated 1 warning
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling libc v0.2.103
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling monch v0.6.0
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling deno_terminal v0.2.3
[INFO] [stderr]    Compiling bumpalo v3.20.3
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling console v0.16.3
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling dprint-core v0.70.0
[INFO] [stderr]    Compiling dprint-plugin-dockerfile v0.7.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling file_test_runner v0.12.1
[INFO] [stderr]    Compiling dprint-development v0.12.1
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 05s
[INFO] running `Command { std: "docker" "inspect" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:48:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | homepage = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 | repository = "https://github.com/dprint/dprint-plugin-dockerfile"
[INFO] [stderr]    |              ----------------------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `dprint-plugin-dockerfile` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/dprint-plugin-dockerfile/ca61ee646b1acce9/out/dprint_plugin_dockerfile-ca61ee646b1acce9)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test configuration::builder::tests::use_defaults_when_global_not_set ... ok
[INFO] [stdout] test configuration::builder::tests::check_all_values_set ... ok
[INFO] [stdout] test configuration::builder::tests::override_global_indent_width ... ok
[INFO] [stdout] test ast::test::resolves_line_indexes ... ok
[INFO] [stdout] test ast::test::resolves_line_indexes_in_empty_text ... ok
[INFO] [stdout] test ast::test::resolves_line_indexes_with_carriage_returns ... ok
[INFO] [stdout] test configuration::builder::tests::handle_global_config ... ok
[INFO] [stdout] test format_range::test::clamps_range_past_end_of_file ... ok
[INFO] [stdout] test format_range::test::formats_file_without_nodes_only_when_range_covers_it ... ok
[INFO] [stdout] test format_range::test::clamps_range_start ... ok
[INFO] [stdout] test format_range::test::keeps_bom_outside_range ... ok
[INFO] [stdout] test parser::test::parses_heredoc_body_verbatim ... ok
[INFO] [stdout] test parser::test::parses_without_trailing_newline ... ok
[INFO] [stdout] test format_text::test::indent_width_of_zero_does_not_indent_stages ... ok
[INFO] [stdout] test parser::test::tab_indented_closing_delimiter_for_dash_form ... ok
[INFO] [stdout] test format_range::test::keeps_carriage_return_after_comment ... ok
[INFO] [stdout] test format_range::test::keeps_file_line_endings ... ok
[INFO] [stdout] test format_text::test::indents_stages_with_carriage_returns ... ok
[INFO] [stdout] test parser::test::detects_heredoc_delimiters ... ok
[INFO] [stdout] test format_range::test::returns_none_when_nothing_changes ... ok
[INFO] [stdout] test format_range::test::treats_whitespace_only_lines_as_blank ... ok
[INFO] [stdout] test parser::test::unterminated_heredoc_is_left_unwrapped ... ok
[INFO] [stdout] test format_range::test::formats_last_node_of_file_without_final_newline ... ok
[INFO] [stdout] test parser::test::keeps_comment_after_run_continuation ... ok
[INFO] [stdout] test format_range::test::formats_whole_file_with_lone_carriage_returns ... ok
[INFO] [stdout] test parser::test::unquotes_unicode_escapes ... ok
[INFO] [stdout] test format_range::test::keeps_file_line_endings_between_nodes_and_in_heredocs ... ok
[INFO] [stdout] test format_range::test::offsets_range_by_bom ... ok
[INFO] [stdout] test format_text::test::strips_bom ... ok
[INFO] [stdout] test format_text::test::comment_with_interior_tab_does_not_panic ... ok
[INFO] [stdout] test format_text::test::huge_indent_width_is_capped_instead_of_overflowing_the_printer ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/range_test.rs (/opt/rustwide/target/release/build/dprint-plugin-dockerfile/a087f4f1b3010f81/out/range_test-a087f4f1b3010f81)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/test.rs (/opt/rustwide/target/release/build/dprint-plugin-dockerfile/6dccccbe1f2686ac/out/test-6dccccbe1f2686ac)
[INFO] [stdout] test test_ranges_of_specs ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.25s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Arg
[INFO] [stderr] 
[INFO] [stderr] test specs::Arg::Arg_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Cmd
[INFO] [stderr] 
[INFO] [stderr] test specs::Cmd::Cmd_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Copy
[INFO] [stderr] 
[INFO] [stderr] test specs::Copy::Copy_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr]   should normalize the exec (JSON array) form [0m[1m[32mok[0m
[INFO] [stderr]   should collapse a multi-line copy without comments to a single line [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in copy and align it with the arguments [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment before the destination in copy [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in copy with a flag [0m[1m[32mok[0m
[INFO] [stderr]   should normalize and align a comment in copy regardless of its indentation [0m[1m[32mok[0m
[INFO] [stderr]   should keep multiple comments in copy [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Entrypoint
[INFO] [stderr] 
[INFO] [stderr] test specs::Entrypoint::Entrypoint_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Env
[INFO] [stderr] 
[INFO] [stderr] test specs::Env::Env_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr]   should add an equals sign when missing [0m[1m[32mok[0m
[INFO] [stderr]   should add quotes around env vars values with spaces [0m[1m[32mok[0m
[INFO] [stderr]   should support backslash-escaped spaces in values [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::From
[INFO] [stderr] 
[INFO] [stderr] test specs::From::From_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr]   should format with digest [0m[1m[32mok[0m
[INFO] [stderr]   should parse platform [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::General
[INFO] [stderr] 
[INFO] [stderr] test specs::General::DroppedComments_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   keeps comments in FROM after continuations [0m[1m[32mok[0m
[INFO] [stderr]   keeps a comment before the FROM alias [0m[1m[32mok[0m
[INFO] [stderr]   keeps comments between LABEL pairs [0m[1m[32mok[0m
[INFO] [stderr]   keeps a leading LABEL comment [0m[1m[32mok[0m
[INFO] [stderr]   keeps a comment in ARG [0m[1m[32mok[0m
[INFO] [stderr]   keeps a comment in single-value ENV [0m[1m[32mok[0m
[INFO] [stderr]   keeps a comment in HEALTHCHECK before the command [0m[1m[32mok[0m
[INFO] [stderr]   keeps a comment in ONBUILD [0m[1m[32mok[0m
[INFO] [stderr]   does not treat heredoc body lines starting with hash as droppable comments [0m[1m[32mok[0m
[INFO] [stderr] test specs::General::Instructions_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should respect blank lines [0m[1m[32mok[0m
[INFO] [stderr] test specs::General::Escape_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should honor a backtick escape directive for line continuations [0m[1m[32mok[0m
[INFO] [stderr]   should keep a literal trailing backslash under a backtick escape directive [0m[1m[32mok[0m
[INFO] [stderr]   should honor an escape directive after a syntax directive [0m[1m[32mok[0m
[INFO] [stderr]   should keep a healthcheck continuation under a backtick escape directive [0m[1m[32mok[0m
[INFO] [stderr]   should drop a dangling trailing backslash in run [0m[1m[32mok[0m
[INFO] [stderr]   should not fail on a dangling trailing backslash in arg [0m[1m[32mok[0m
[INFO] [stderr]   should not fail on a dangling trailing backslash in copy [0m[1m[32mok[0m
[INFO] [stderr] test specs::General::Lenient_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should keep an unparseable line verbatim instead of failing the whole file [0m[1m[32mok[0m
[INFO] [stderr]   should keep a bare instruction keyword [0m[1m[32mok[0m
[INFO] [stderr]   should keep a COPY with too few arguments [0m[1m[32mok[0m
[INFO] [stderr]   should keep a FROM with trailing junk [0m[1m[32mok[0m
[INFO] [stderr]   should keep a non-keyword line [0m[1m[32mok[0m
[INFO] [stderr] test specs::General::Comments_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format comment [0m[1m[32mok[0m
[INFO] [stderr]   should format empty comment [0m[1m[32mok[0m
[INFO] [stderr]   should handle leading whitespace before a comment [0m[1m[32mok[0m
[INFO] [stderr]   should get comments in env vars [0m[1m[32mok[0m
[INFO] [stderr]   should handle multiple comment chars [0m[1m[32mok[0m
[INFO] [stderr]   should keep comments aligned in run [0m[1m[32mok[0m
[INFO] [stderr]   should align a trailing comment in run with the previous argument [0m[1m[32mok[0m
[INFO] [stderr]   should align multiple trailing comments in run with the previous argument [0m[1m[32mok[0m
[INFO] [stderr]   should align multiple consecutive comments in run with the following argument [0m[1m[32mok[0m
[INFO] [stderr]   should keep run comments at column zero when arguments are not indented [0m[1m[32mok[0m
[INFO] [stderr]   should align a run comment with the following argument ignoring its own indentation [0m[1m[32mok[0m
[INFO] [stderr]   should align an empty comment in run with the arguments [0m[1m[32mok[0m
[INFO] [stderr]   should normalize comment chars and spacing while keeping run alignment [0m[1m[32mok[0m
[INFO] [stderr]   should align a comment after the first argument in run [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment immediately after a run line continuation [0m[1m[32mok[0m
[INFO] [stderr]   should keep an indented comment immediately after a run line continuation [0m[1m[32mok[0m
[INFO] [stderr]   should keep multiple leading comments after a run line continuation [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Healthcheck
[INFO] [stderr] 
[INFO] [stderr] test specs::Healthcheck::Healthcheck_LineWidth ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should wrap a single-line command that exceeds the line width [0m[1m[32mok[0m
[INFO] [stderr]   should wrap before CMD when there are no options [0m[1m[32mok[0m
[INFO] [stderr]   should keep a command that fits on one line [0m[1m[32mok[0m
[INFO] [stderr] test specs::Healthcheck::Healthcheck_CmdNewLine ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should split CMD onto its own line when there are options [0m[1m[32mok[0m
[INFO] [stderr]   should split before an exec-form command [0m[1m[32mok[0m
[INFO] [stderr]   should not split when there are no options [0m[1m[32mok[0m
[INFO] [stderr]   should not split NONE [0m[1m[32mok[0m
[INFO] [stderr]   should collapse a continuation before NONE [0m[1m[32mok[0m
[INFO] [stderr] test specs::Healthcheck::Healthcheck_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should normalize options and the nested command [0m[1m[32mok[0m
[INFO] [stderr]   should support flags with dashes [0m[1m[32mok[0m
[INFO] [stderr]   should format NONE [0m[1m[32mok[0m
[INFO] [stderr]   should keep a line continuation before CMD [0m[1m[32mok[0m
[INFO] [stderr]   should normalize a preserved continuation to a two-space indent [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation before CMD when there are no options [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation before an exec-form command [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation before CMD and inside the command [0m[1m[32mok[0m
[INFO] [stderr]   should default to a two-space indent when the command is flush left [0m[1m[32mok[0m
[INFO] [stderr]   should collapse a continuation before NONE [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Heredoc
[INFO] [stderr] 
[INFO] [stderr] test specs::Heredoc::Heredoc_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should normalize the instruction line and preserve the body verbatim [0m[1m[32mok[0m
[INFO] [stderr]   should preserve body indentation [0m[1m[32mok[0m
[INFO] [stderr]   should support a heredoc that creates a file with COPY [0m[1m[32mok[0m
[INFO] [stderr]   should support a quoted delimiter [0m[1m[32mok[0m
[INFO] [stderr]   should support multiple heredocs in one instruction [0m[1m[32mok[0m
[INFO] [stderr]   should not treat a shell bit-shift as a heredoc [0m[1m[32mok[0m
[INFO] [stderr]   should handle a heredoc followed by another instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a heredoc nested in ONBUILD [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::IndentStages
[INFO] [stderr] 
[INFO] [stderr] test specs::IndentStages::IndentStages_Disabled ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should ignore the indent width when stages are not indented [0m[1m[32mok[0m
[INFO] [stderr]   should strip the stage indentation by default [0m[1m[32mok[0m
[INFO] [stderr]   should keep the absolute indentation of a continuation line by default [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_HealthcheckCmdNewLine ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should indent both the instruction and the command it forces onto its own line [0m[1m[32mok[0m
[INFO] [stderr]   should collapse a continuation before NONE [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_IndentWidth ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should indent stages by the indent width [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_LineWidth ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should wrap a label that only fits without the stage indentation [0m[1m[32mok[0m
[INFO] [stderr]   should align wrapped label values under the indentation [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_LineWidthDisabled ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should keep a label that fits without the stage indentation on one line [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_Tabs ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should re-indent a tab indented stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a tab indented continuation line relative to its instruction [0m[1m[32mok[0m
[INFO] [stderr]   should count a tab as one column when the indentation is mixed [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_Comments ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should keep the comments before the first stage at the outer level [0m[1m[32mok[0m
[INFO] [stderr]   should indent the comments in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a comment at the end of the file after a blank line [0m[1m[32mok[0m
[INFO] [stderr]   should normalize the indentation of a comment in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent an empty comment and multiple comment chars in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should un-indent an indented comment directly above a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep only the attached comment block at the outer level [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment between two stages at the outer level [0m[1m[32mok[0m
[INFO] [stderr]   should indent a stage that only has comments [0m[1m[32mok[0m
[INFO] [stderr]   should keep run comments aligned with the arguments in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep run comments aligned when re-indenting a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a trailing run comment aligned with the previous argument in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep run comments at the stage indentation when arguments are not indented [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment immediately after a run line continuation in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep an indented comment immediately after a run line continuation in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment between label pairs in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment between env vars in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in copy aligned with the arguments in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should recover a dropped comment in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should recover a dropped comment in a from at the outer level [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in onbuild in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in healthcheck in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should not treat heredoc body comments as comments in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep everything at the outer level when there is no stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep an escape directive at the outer level and align its comments [0m[1m[32mok[0m
[INFO] [stderr]   should leave a file of only comments alone [0m[1m[32mok[0m
[INFO] [stderr] test specs::IndentStages::IndentStages_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should indent the instructions in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep the instructions before the first stage at the outer level [0m[1m[32mok[0m
[INFO] [stderr]   should re-indent an over indented stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep the relative indentation of continuation lines [0m[1m[32mok[0m
[INFO] [stderr]   should keep the relative indentation of continuation lines when re-indenting [0m[1m[32mok[0m
[INFO] [stderr]   should indent a comment within a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment directly above a stage at the outer level [0m[1m[32mok[0m
[INFO] [stderr]   should indent a comment separated from the next stage by a blank line [0m[1m[32mok[0m
[INFO] [stderr]   should indent a comment within a continued instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep a heredoc body verbatim [0m[1m[32mok[0m
[INFO] [stderr]   should indent a continued HEALTHCHECK [0m[1m[32mok[0m
[INFO] [stderr]   should indent an ONBUILD instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation line within a quote unchanged [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation line within a quote at column zero unchanged [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation line after an apostrophe unchanged [0m[1m[32mok[0m
[INFO] [stderr]   should resume indenting after the quote closes [0m[1m[32mok[0m
[INFO] [stderr]   should indent a continuation of a quote that opens and closes on one line [0m[1m[32mok[0m
[INFO] [stderr]   should not indent the terminator of an empty heredoc [0m[1m[32mok[0m
[INFO] [stderr]   should not indent anything when there is no stage [0m[1m[32mok[0m
[INFO] [stderr]   should not indent between consecutive stages [0m[1m[32mok[0m
[INFO] [stderr]   should handle a stage with nothing after it [0m[1m[32mok[0m
[INFO] [stderr]   should not treat a heredoc body from as a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent an ARG that follows a stage [0m[1m[32mok[0m
[INFO] [stderr]   should keep a heredoc verbatim when it ends a stage [0m[1m[32mok[0m
[INFO] [stderr]   should re-indent an over indented heredoc instruction [0m[1m[32mok[0m
[INFO] [stderr]   should indent an ONBUILD with a multi-line nested instruction [0m[1m[32mok[0m
[INFO] [stderr]   should indent under a backtick escape directive [0m[1m[32mok[0m
[INFO] [stderr]   should re-indent an over indented backtick continuation [0m[1m[32mok[0m
[INFO] [stderr]   should keep the continuation of a quoted value where the author put it [0m[1m[32mok[0m
[INFO] [stderr]   should keep a continuation within a nested healthcheck command at its own indentation [0m[1m[32mok[0m
[INFO] [stderr]   should indent a whitespace only continuation line [0m[1m[32mok[0m
[INFO] [stderr]   should dedent a continuation before the first stage [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Issues
[INFO] [stderr] 
[INFO] [stderr] test specs::Issues::Issue0004 ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should be stable [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Label
[INFO] [stderr] 
[INFO] [stderr] test specs::Label::Label_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a single label [0m[1m[32mok[0m
[INFO] [stderr]   should format multiple labels on multiple lines when exceeding width [0m[1m[32mok[0m
[INFO] [stderr]   should keep on multiple lines when could collapse [0m[1m[32mok[0m
[INFO] [stderr]   should format with quotes [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Misc
[INFO] [stderr] 
[INFO] [stderr] test specs::Misc::Misc_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format the different kinds of instructions [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Onbuild
[INFO] [stderr] 
[INFO] [stderr] test specs::Onbuild::Onbuild_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should normalize the nested instruction [0m[1m[32mok[0m
[INFO] [stderr]   should normalize a nested exec form [0m[1m[32mok[0m
[INFO] [stdout] test test_specs ... ok
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Range
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] test specs::Range::Range_Cmd ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched cmd instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched exec form cmd instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched cmd instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Arg ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched arg instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched arg instruction with a value [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched arg instruction with a quoted value [0m[1m[32mok[0m
[INFO] [stderr]   should drop a dangling line continuation of a touched arg instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched arg instruction with a single quoted value [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Entrypoint ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched entrypoint instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched exec form entrypoint instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched entrypoint instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in a touched entrypoint instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Copy ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched copy instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched copy instruction with flags [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched exec form copy instruction [0m[1m[32mok[0m
[INFO] [stderr]   should collapse a touched copy instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in a touched copy instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep multiple comments in a touched copy instruction with a flag [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Comments ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched comment [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched comment with leading whitespace [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched empty comment [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched comment with multiple comment chars [0m[1m[32mok[0m
[INFO] [stderr]   should format several touched comments [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched comment along with a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should not format the comments around a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should not format the instructions around a touched comment [0m[1m[32mok[0m
[INFO] [stderr]   should format the comments within a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when a comment within it is touched [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when a comment at the end of it is touched [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when a comment right after its line continuation is touched [0m[1m[32mok[0m
[INFO] [stderr]   should move a comment out of a touched arg instruction [0m[1m[32mok[0m
[INFO] [stderr]   should move the comments out of a touched from instruction [0m[1m[32mok[0m
[INFO] [stderr]   should only format the comment above an instruction when it's the one touched [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched comment at the end of the file [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched comment at the start of the file [0m[1m[32mok[0m
[INFO] [stderr]   should format the whole file when touching its only comment [0m[1m[32mok[0m
[INFO] [stderr]   should format the comment following a touched instruction on its last line [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when the comment following it on its line is touched [0m[1m[32mok[0m
[INFO] [stderr]   should format the comment following a touched exec form instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format the comments following each of the touched instructions [0m[1m[32mok[0m
[INFO] [stderr]   should keep a hash following a touched run instruction as part of the command [0m[1m[32mok[0m
[INFO] [stderr]   should keep a tab in a touched comment [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Escape ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should use the escape character of the file in a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should use the escape character of the file in a touched env instruction [0m[1m[32mok[0m
[INFO] [stderr]   should use the escape character of the file in a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep a trailing backslash in a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should not change a touched escape directive [0m[1m[32mok[0m
[INFO] [stderr]   should format the whole file when touching the escape directive and the last instruction [0m[1m[32mok[0m
[INFO] [stderr]   should use the escape character of a file with a syntax directive [0m[1m[32mok[0m
[INFO] [stderr]   should only format a touched escape directive [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Env ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched env instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched env instruction with several vars [0m[1m[32mok[0m
[INFO] [stderr]   should add an equals sign to a touched env instruction [0m[1m[32mok[0m
[INFO] [stderr]   should add quotes to a touched env instruction [0m[1m[32mok[0m
[INFO] [stderr]   should break a touched env instruction exceeding the line width [0m[1m[32mok[0m
[INFO] [stderr]   should keep a touched env instruction on multiple lines [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment between the vars of a touched env instruction [0m[1m[32mok[0m
[INFO] [stderr]   should move a comment out of a touched single value env instruction [0m[1m[32mok[0m
[INFO] [stderr]   should quote the escaped spaces of a touched env instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_From ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched from instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched from instruction with a tag and alias [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched from instruction with a flag [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched from instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched from instruction with a digest [0m[1m[32mok[0m
[INFO] [stderr]   should move a comment before the alias out of a touched from instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Healthcheck_CmdNewLine ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should split the cmd of a touched healthcheck instruction onto its own line [0m[1m[32mok[0m
[INFO] [stderr]   should not split a touched healthcheck instruction without options [0m[1m[32mok[0m
[INFO] [stderr]   should not split the healthcheck instructions that aren't touched [0m[1m[32mok[0m
[INFO] [stderr]   should not split a touched healthcheck none instruction [0m[1m[32mok[0m
[INFO] [stderr]   should split the exec form cmd of a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Healthcheck_LineWidth ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should wrap a touched healthcheck instruction exceeding the line width [0m[1m[32mok[0m
[INFO] [stderr]   should keep a touched healthcheck instruction that fits on one line [0m[1m[32mok[0m
[INFO] [stderr]   should not wrap the healthcheck instructions that aren't touched [0m[1m[32mok[0m
[INFO] [stderr]   should wrap before the cmd of a touched healthcheck instruction without options [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Healthcheck ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched healthcheck instruction with an exec form [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched healthcheck none instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep the line continuation of a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a healthcheck instruction touched on its first line [0m[1m[32mok[0m
[INFO] [stderr]   should move a comment out of a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep the continuation inside the command of a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should collapse the continuation before none in a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep the continuation of a touched healthcheck instruction without options [0m[1m[32mok[0m
[INFO] [stderr]   should keep the continuation before the exec form of a touched healthcheck instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched healthcheck instruction with a dash in a flag [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_IndentStages_HealthcheckCmdNewLine ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should indent the command split from a touched healthcheck instruction in a stage [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_IndentStages_IndentWidth ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should indent a touched instruction in a stage by the indent width [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Heredoc ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should keep the heredoc body of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when its heredoc body is touched [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when its heredoc delimiter is touched [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when a blank line of its heredoc body is touched [0m[1m[32mok[0m
[INFO] [stderr]   should not format an instruction after a touched heredoc [0m[1m[32mok[0m
[INFO] [stderr]   should not format a heredoc before a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched copy instruction with a heredoc [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched instruction with multiple heredocs [0m[1m[32mok[0m
[INFO] [stderr]   should not treat the comment lines of a touched heredoc body as comments [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched instruction with a quoted heredoc delimiter [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched heredoc nested in an onbuild instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched copy heredoc nested in an onbuild instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep the tabs of a touched heredoc that strips them [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched instruction with an empty heredoc [0m[1m[32mok[0m
[INFO] [stderr]   should format the command around the heredoc of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched heredoc along with the instruction after it [0m[1m[32mok[0m
[INFO] [stderr]   should only format the touched line of a heredoc that isn't terminated [0m[1m[32mok[0m
[INFO] [stderr]   should not treat a bit shift in a touched instruction as a heredoc [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_IndentStages_LineWidth ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should wrap a touched label that only fits without the stage indentation [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Label ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched label instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched label instruction with several labels [0m[1m[32mok[0m
[INFO] [stderr]   should break a touched label instruction exceeding the line width [0m[1m[32mok[0m
[INFO] [stderr]   should keep a touched label instruction on multiple lines [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment between the labels of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched label instruction without an equals sign [0m[1m[32mok[0m
[INFO] [stderr]   should move a leading comment out of a touched label instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_IndentStages ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should indent a touched instruction in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should re-indent a touched instruction in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when the touched instruction in a stage is already formatted [0m[1m[32mok[0m
[INFO] [stderr]   should indent the continuation lines of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should re-indent the continuation lines of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should indent several touched instructions in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched env instruction in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched healthcheck instruction in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a comment moved out of a touched instruction in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should not indent the heredoc body of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched comment in a stage [0m[1m[32mok[0m
[INFO] [stderr]   should not indent a touched comment directly above a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched comment separated from the stage below it by a blank line [0m[1m[32mok[0m
[INFO] [stderr]   should not indent a touched stage [0m[1m[32mok[0m
[INFO] [stderr]   should not indent a touched instruction before the first stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched instruction in a tab indented stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent the touched instructions on both sides of a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched instruction in a later stage [0m[1m[32mok[0m
[INFO] [stderr]   should not indent the line continued within a quote of a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched onbuild instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr]   should re-indent a touched heredoc instruction without its body [0m[1m[32mok[0m
[INFO] [stderr]   should not treat a from in a touched heredoc body as a stage [0m[1m[32mok[0m
[INFO] [stderr]   should indent a comment within a touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should indent the comment following a touched instruction on its line [0m[1m[32mok[0m
[INFO] [stderr]   should indent a touched instruction under a backtick escape directive [0m[1m[32mok[0m
[INFO] [stderr]   should indent the last instruction of a stage without the ones before it [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Misc ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched expose instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched maintainer instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep the case of a touched user instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched volume instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched workdir instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched stopsignal instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched add instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched misc instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr]   should keep a comment in a touched misc instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Onbuild ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched onbuild instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched onbuild instruction with an exec form [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched onbuild instruction with a misc instruction [0m[1m[32mok[0m
[INFO] [stderr]   should move a comment out of a touched onbuild instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched onbuild instruction that can't be parsed further [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched onbuild instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched onbuild instruction with a healthcheck [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Lines ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format only the touched instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction the cursor is in [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction with the cursor at the start of its line [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction with the cursor at the end of its line [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction with the cursor in its indentation [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when only its indentation is selected [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when only its trailing whitespace is selected [0m[1m[32mok[0m
[INFO] [stderr]   should format several touched instructions [0m[1m[32mok[0m
[INFO] [stderr]   should format the blank lines between the touched instructions [0m[1m[32mok[0m
[INFO] [stderr]   should keep a single blank line between the touched instructions [0m[1m[32mok[0m
[INFO] [stderr]   should not format the instruction on the line after a range ending at a line break [0m[1m[32mok[0m
[INFO] [stderr]   should not format the instruction on the line before a range starting at a line break [0m[1m[32mok[0m
[INFO] [stderr]   should format both instructions when the range holds more than the line break between them [0m[1m[32mok[0m
[INFO] [stderr]   should format all the lines of an instruction touched on its first line [0m[1m[32mok[0m
[INFO] [stderr]   should format all the lines of an instruction touched on a continuation line [0m[1m[32mok[0m
[INFO] [stderr]   should format all the lines of an instruction touched on its last line [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when the touched instruction is already formatted [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when only touching the blank lines between instructions [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when selecting the blank lines between instructions [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when only touching the blank lines at the start of the file [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when only touching the blank lines at the end of the file [0m[1m[32mok[0m
[INFO] [stderr]   should format the first instruction without the blank lines before it [0m[1m[32mok[0m
[INFO] [stderr]   should format the last instruction without the blank lines after it [0m[1m[32mok[0m
[INFO] [stderr]   should format the whole file when touching the first and last instructions [0m[1m[32mok[0m
[INFO] [stderr]   should format the whole file when touching its only instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format the whole file when the range covers it [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing in a file without instructions [0m[1m[32mok[0m
[INFO] [stderr]   should format nothing when only selecting the line break between two instructions [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction when only the whitespace after its last argument is selected [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction with the cursor after the whitespace following its last argument [0m[1m[32mok[0m
[INFO] [stderr]   should format the exec form instruction with the cursor after its trailing whitespace [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction with the cursor after its dangling line continuation [0m[1m[32mok[0m
[INFO] [stderr]   should keep the blank lines around a touched instruction when they are selected too [0m[1m[32mok[0m
[INFO] [stderr]   should format the first instruction with the cursor at the start of the file [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched instruction after multi-byte characters [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Run ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched lowercase run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched exec form run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should not collapse the spaces inside quotes of a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep the continuation indentation of a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should keep a quote continued across the lines of a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should drop a dangling line continuation of a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched run instruction with a flag [0m[1m[32mok[0m
[INFO] [stderr]   should keep a single quote continued across the lines of a touched run instruction [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Shell ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format a touched shell instruction [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched shell form shell instruction [0m[1m[32mok[0m
[INFO] [stderr]   should collapse a touched exec form shell instruction spanning lines [0m[1m[32mok[0m
[INFO] [stderr] test specs::Range::Range_Lenient ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should keep a touched line that can't be parsed [0m[1m[32mok[0m
[INFO] [stderr]   should trim a touched line that can't be parsed [0m[1m[32mok[0m
[INFO] [stderr]   should format the instruction around the lines that can't be parsed [0m[1m[32mok[0m
[INFO] [stderr]   should format a touched instruction along with a line that can't be parsed [0m[1m[32mok[0m
[INFO] [stderr]   should not trim the lines that can't be parsed around a touched instruction [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Run
[INFO] [stderr] 
[INFO] [stderr] test specs::Run::Run_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should format [0m[1m[32mok[0m
[INFO] [stderr]   should collapse extra spaces in shell commands [0m[1m[32mok[0m
[INFO] [stderr]   should not collapse spaces inside quotes or after an escape [0m[1m[32mok[0m
[INFO] [stderr]   should collapse internal spaces but keep continuation indentation [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr]      [0m[1m[32mRunning[0m specs::Shell
[INFO] [stderr] 
[INFO] [stderr] test specs::Shell::Shell_All ... [0m[38;5;245m(0ms)[0m
[INFO] [stderr]   should normalize the exec array [0m[1m[32mok[0m
[INFO] [stderr]   should keep a single element [0m[1m[32mok[0m
[INFO] [stderr] 
[INFO] [stderr] 52 tests passed
[INFO] [stderr] 
[INFO] [stderr]    Doc-tests dprint_plugin_dockerfile
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/configuration/builder.rs - configuration::builder::ConfigurationBuilder (line 12) ... ok
[INFO] [stdout] test src/configuration/resolve_config.rs - configuration::resolve_config::resolve_config (line 8) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 3.90s; merged doctests compilation took 3.88s
[INFO] running `Command { std: "docker" "inspect" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b", kill_on_drop: false }`
[INFO] [stdout] fc71e2d449a01129a45cd33f84f4f280d2212cf40e2f4ae6ae3e4a6bd880455b
