diff --git a/.config/treefmt.nix b/.config/treefmt.nix deleted file mode 100644 index 482c20217..000000000 --- a/.config/treefmt.nix +++ /dev/null @@ -1,28 +0,0 @@ -# SPDX-FileCopyrightText: 2024 Christina Sørensen -# SPDX-License-Identifier: EUPL-1.2 -{ - projectRootFile = "Cargo.toml"; - programs = { - nixfmt.enable = true; # nix - statix.enable = true; # nix static analysis - deadnix.enable = true; # find dead nix code - # TODO https://github.com/numtide/treefmt-nix/issues/343 - #rustfmt.enable = true; # rust - shellcheck.enable = true; # bash/shell - taplo.enable = true; # toml - yamlfmt.enable = true; # yaml - }; - settings = { - formatter = { - shellcheck = { - includes = [ - "*.sh" - "./completions/bash/eza" - ]; - excludes = [ ".envrc" ]; - }; - taplo.excludes = [ "tests/ptests/*.toml" ]; - yamlfmt.excludes = [ "./powertest.yaml" ]; - }; - }; -} diff --git a/.envrc b/.envrc deleted file mode 100644 index e6b69f766..000000000 --- a/.envrc +++ /dev/null @@ -1,3 +0,0 @@ -if has nix; then - use flake . -fi diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 174f0dea9..a9a25adf8 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -7,13 +7,16 @@ on: pull_request: branches: [main] workflow_dispatch: + concurrency: group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} cancel-in-progress: true + env: CARGO_TERM_COLOR: always RUSTFLAGS: --deny warnings msrv: '1.90' + jobs: security_audit: runs-on: ubuntu-latest @@ -22,6 +25,7 @@ jobs: - uses: taiki-e/install-action@cargo-deny - name: Scan for vulnerabilities run: cargo deny check + check_if_pr: runs-on: ubuntu-latest outputs: @@ -35,6 +39,7 @@ jobs: else echo "is_pr=false" >> $GITHUB_OUTPUT fi + no-merge-commits: needs: check_if_pr if: needs.check_if_pr.outputs.is_pr == 'true' @@ -46,6 +51,7 @@ jobs: uses: NexusPHP/no-merge-commits@v2.2.1 with: token: ${{ secrets.GITHUB_TOKEN }} + conventional: needs: [check_if_pr, no-merge-commits] name: Conventional Commits @@ -53,14 +59,14 @@ jobs: steps: - uses: actions/checkout@v6 - uses: webiny/action-conventional-commits@v1.3.0 + unit-tests: - needs: conventional runs-on: ${{ matrix.os }} continue-on-error: ${{ matrix.rust == 'nightly' }} strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] - rust: [msrv, stable, beta, nightly] + rust: [msrv, stable] steps: - name: Checkout repository uses: actions/checkout@v6 @@ -78,15 +84,15 @@ jobs: if: ${{ matrix.os != 'windows-latest' }} run: cargo clippy -- -D warnings - name: Run unit tests - run: cargo hack test + run: cargo hack test -- --skip cli_tests + unit-tests-freebsd: - needs: conventional - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 20 continue-on-error: ${{ matrix.rust == 'nightly' }} strategy: matrix: - rust: [msrv, stable, beta, nightly] + rust: [msrv, stable] steps: - uses: actions/checkout@v6 with: @@ -109,15 +115,15 @@ jobs: export RUSTFLAGS="--deny warnings" cargo fmt --check cargo clippy -- -D warnings - cargo hack test + cargo hack test -- --skip cli_tests + unit-tests-netbsd: - needs: conventional - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 20 continue-on-error: ${{ matrix.rust == 'nightly' }} strategy: matrix: - rust: [msrv, stable, beta, nightly] + rust: [msrv, stable] steps: - uses: actions/checkout@v6 with: @@ -143,10 +149,10 @@ jobs: export RUSTFLAGS="--deny warnings" cargo fmt --check cargo clippy -- -D warnings - cargo hack test + cargo hack test -- --skip cli_tests + unit-tests-openbsd: - needs: conventional - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 20 steps: - uses: actions/checkout@v6 @@ -170,36 +176,17 @@ jobs: # export RUSTFLAGS="--deny warnings" cargo fmt --check # cargo clippy -- -D warnings - cargo hack test - flake-check: - needs: conventional - name: Check Nix Flake - runs-on: ubuntu-latest - strategy: - matrix: - checks: [build, formatting, lint, pre-commit-check, test, trycmd] - target: [x86_64-linux] - steps: - - uses: actions/checkout@v6 - - name: Install Nix - uses: DeterminateSystems/nix-installer-action@v17 - - name: Nix Flake Check - run: nix build .#checks.${{ matrix.target }}.${{ matrix.checks }} -L - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - flake-build: - needs: conventional - name: Build Nix package - # if cross compilation is desired add 'aarch64-linux', 'x86_64-darwin' and 'aarch64-darwin' and fix the flake to support cross compilation. - strategy: - matrix: - target: [x86_64-linux] - runs-on: ubuntu-latest + cargo hack test -- --skip cli_tests + + integration-tests-unix: + runs-on: ubuntu-22.04 + timeout-minutes: 20 steps: - - uses: actions/checkout@v6 - - name: Install Nix - uses: DeterminateSystems/nix-installer-action@v17 - - name: Nix Build - run: nix build .#packages.${{ matrix.target }}.default -L - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Install test dependencies + uses: extractions/setup-just@v4 + + - name: Run integration tests + run: just integration-tests diff --git a/.gitignore b/.gitignore index 52509262e..b859e165c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,27 +1,15 @@ # SPDX-FileCopyrightText: 2024 Christina Sørensen # SPDX-License-Identifier: EUPL-1.2 -# Nix Flake stuff -result - -# Generated by nix-pre-commit-hooks -/.pre-commit-config.yaml - -# Direnv -.direnv - # Rust stuff -target +/target -# Vagrant stuff -.vagrant -*.log +## Dynamically generated test data +/tests/data # Compiled artifacts # (see devtools/*-package-for-*.sh) -/eza-linux-x86_64 -/eza-linux-x86_64-*.zip -/eza-macos-x86_64 -/eza-macos-x86_64-*.zip +/eza-*-x86_64 +/eza-*-x86_64-*.zip /eza_*.deb /MD5SUMS /SHA1SUMS @@ -31,13 +19,3 @@ parts prime stage *.snap - -# VHS testing stuff -out.gif -tests/tmp - -## Dynamically generated -tests/test_dir - -# Miscenallous -.idea diff --git a/.pre-commit-config-non-nix.yaml b/.pre-commit-config.yaml similarity index 100% rename from .pre-commit-config-non-nix.yaml rename to .pre-commit-config.yaml diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d291b2f2..6abee1188 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,7 @@ SPDX-License-Identifier: EUPL-1.2 ### Documentation -- Corrected "user_executable_file" option +- Corrected "user_executable_file" option ### Features @@ -2682,7 +2682,7 @@ SPDX-License-Identifier: EUPL-1.2 - Add selinux contexts support - Add -o shorcut to --octal-permissions - Hyperlink flag -- Update Cargo.toml to optimise binaries for size +- Update Cargo.toml to optimise binaries for size - Add git-status-.* completions - Zsh add git-status-.* completions - Add git-status-.* completions @@ -2818,5 +2818,3 @@ SPDX-License-Identifier: EUPL-1.2 ### Vagrant - Update apt before installing - - diff --git a/Cargo.lock b/Cargo.lock index 73b66cb3a..27abec70f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,39 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "addr2line" -version = "0.25.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" - -[[package]] -name = "aho-corasick" -version = "1.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" -dependencies = [ - "memchr", -] - -[[package]] -name = "alloca" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7d05ea6aea7e9e64d25b9156ba2fee3fdd659e34e41063cd2fc7cd020d7f4" -dependencies = [ - "cc", -] - [[package]] name = "android_system_properties" version = "0.1.5" @@ -44,12 +11,6 @@ dependencies = [ "libc", ] -[[package]] -name = "anes" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" - [[package]] name = "ansi-width" version = "0.1.0" @@ -66,7 +27,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" dependencies = [ "anstyle", - "anstyle-parse", + "anstyle-parse 0.2.7", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstream" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" +dependencies = [ + "anstyle", + "anstyle-parse 1.0.0", "anstyle-query", "anstyle-wincon", "colorchoice", @@ -76,9 +52,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" @@ -89,6 +65,15 @@ dependencies = [ "utf8parse", ] +[[package]] +name = "anstyle-parse" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" +dependencies = [ + "utf8parse", +] + [[package]] name = "anstyle-query" version = "1.1.5" @@ -141,21 +126,6 @@ dependencies = [ "syn", ] -[[package]] -name = "backtrace" -version = "0.3.76" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" -dependencies = [ - "addr2line", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", - "windows-link", -] - [[package]] name = "base64" version = "0.22.1" @@ -180,12 +150,6 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06" -[[package]] -name = "cast" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" - [[package]] name = "cc" version = "1.2.56" @@ -215,33 +179,6 @@ dependencies = [ "windows-link", ] -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] - [[package]] name = "clap" version = "4.5.59" @@ -258,7 +195,7 @@ version = "4.5.59" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "370daa45065b80218950227371916a1633217ae42b2715b2287b606dcd618e24" dependencies = [ - "anstream", + "anstream 0.6.21", "anstyle", "clap_lex", "strsim", @@ -303,41 +240,6 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" -[[package]] -name = "criterion" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "950046b2aa2492f9a536f5f4f9a3de7b9e2476e575e05bd6c333371add4d98f3" -dependencies = [ - "alloca", - "anes", - "cast", - "ciborium", - "clap", - "criterion-plot", - "itertools", - "num-traits", - "oorandom", - "page_size", - "plotters", - "rayon", - "regex", - "serde", - "serde_json", - "tinytemplate", - "walkdir", -] - -[[package]] -name = "criterion-plot" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8d80a2f4f5b554395e47b5d8305bc3d27813bacb73493eb1001e8f76dae29ea" -dependencies = [ - "cast", - "itertools", -] - [[package]] name = "crossbeam-deque" version = "0.8.6" @@ -363,12 +265,6 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" -[[package]] -name = "crunchy" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" - [[package]] name = "deranged" version = "0.5.6" @@ -443,10 +339,8 @@ name = "eza" version = "0.23.4" dependencies = [ "ansi-width", - "backtrace", "chrono", "clap", - "criterion", "dirs", "git2", "glob", @@ -554,12 +448,6 @@ dependencies = [ "wasip3", ] -[[package]] -name = "gimli" -version = "0.32.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" - [[package]] name = "git2" version = "0.20.4" @@ -580,17 +468,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" -[[package]] -name = "half" -version = "2.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" -dependencies = [ - "cfg-if", - "crunchy", - "zerocopy", -] - [[package]] name = "hashbrown" version = "0.15.5" @@ -778,15 +655,6 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" -[[package]] -name = "itertools" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "1.0.17" @@ -821,9 +689,9 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "libc" -version = "0.2.182" +version = "0.2.185" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" +checksum = "52ff2c0fe9bc6cb6b14a0592c2ff4fa9ceb83eea9db979b0487cd054946a2b8f" [[package]] name = "libgit2-sys" @@ -863,9 +731,9 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" @@ -894,15 +762,6 @@ version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" -[[package]] -name = "miniz_oxide" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" -dependencies = [ - "adler2", -] - [[package]] name = "natord-plus-plus" version = "2.0.0" @@ -940,15 +799,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "object" -version = "0.37.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" -dependencies = [ - "memchr", -] - [[package]] name = "once_cell" version = "1.21.3" @@ -961,12 +811,6 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" -[[package]] -name = "oorandom" -version = "11.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" - [[package]] name = "openssl-src" version = "300.5.5+3.5.5" @@ -1005,16 +849,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "page_size" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "palette" version = "0.7.5" @@ -1120,34 +954,6 @@ dependencies = [ "time", ] -[[package]] -name = "plotters" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" -dependencies = [ - "num-traits", - "plotters-backend", - "plotters-svg", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "plotters-backend" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" - -[[package]] -name = "plotters-svg" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" -dependencies = [ - "plotters-backend", -] - [[package]] name = "potential_utf" version = "0.1.4" @@ -1255,46 +1061,11 @@ dependencies = [ "thiserror 2.0.18", ] -[[package]] -name = "regex" -version = "1.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c" - -[[package]] -name = "rustc-demangle" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d" - [[package]] name = "rustix" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ "bitflags", "errno", @@ -1388,9 +1159,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "1.0.4" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8bbf91e5a4d6315eee45e704372590b30e260ee83af6639d64557f51b067776" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" dependencies = [ "serde_core", ] @@ -1421,11 +1192,11 @@ checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" [[package]] name = "snapbox" -version = "1.0.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71d70a71b68054cbe88708f77abfc4bd2daf75028f8f55f4f1cff63565df89ea" +checksum = "f92ac911648d788a6435401d9b4803959039d4de9919fdabdb415a8bebd027be" dependencies = [ - "anstream", + "anstream 1.0.0", "anstyle", "content_inspector", "dunce", @@ -1438,16 +1209,16 @@ dependencies = [ "tempfile", "wait-timeout", "walkdir", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] name = "snapbox-macros" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d248cef42e1456ab2f7149c0376985351b7d849ea9ad2a957bf15ddfebf1fdf9" +checksum = "ed4a172e483585ebbc7c7f7d1705ca7e3f94f606ed78caa14805673189fd5455" dependencies = [ - "anstream", + "anstream 1.0.0", ] [[package]] @@ -1486,9 +1257,9 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.25.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", "getrandom 0.4.1", @@ -1594,30 +1365,20 @@ dependencies = [ "zerovec", ] -[[package]] -name = "tinytemplate" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" -dependencies = [ - "serde", - "serde_json", -] - [[package]] name = "toml_datetime" -version = "0.7.5+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.23.10+spec-1.0.0" +version = "0.25.11+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" +checksum = "0b59c4d22ed448339746c59b905d24568fcbb3ab65a500494f7b8c3e97739f2b" dependencies = [ "indexmap", "serde_core", @@ -1630,26 +1391,26 @@ dependencies = [ [[package]] name = "toml_parser" -version = "1.0.9+spec-1.1.0" +version = "1.1.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "702d4415e08923e7e1ef96cd5727c0dfed80b4d2fa25db9647fe5eb6f7c5a4c4" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" dependencies = [ "winnow", ] [[package]] name = "toml_writer" -version = "1.0.6+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" +checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" [[package]] name = "trycmd" -version = "1.0.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1e34125a48d61da3907f391dffc3aa91cad42e8e2dc94a2dc03ec76fe707ced" +checksum = "218889993f76bda9b2ef57c12c3cab0eef4fd54ec7b36d1704849867f69e7bb4" dependencies = [ - "anstream", + "anstream 1.0.0", "automod", "glob", "humantime", @@ -1868,32 +1629,6 @@ dependencies = [ "semver", ] -[[package]] -name = "web-sys" -version = "0.3.85" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "312e32e551d92129218ea9a2452120f4aabc03529ef03e4d0d82fb2780608598" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - [[package]] name = "winapi-util" version = "0.1.11" @@ -1903,12 +1638,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - [[package]] name = "windows-core" version = "0.62.2" @@ -2053,9 +1782,9 @@ checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winnow" -version = "0.7.14" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" +checksum = "2ee1708bef14716a11bae175f579062d4554d95be2c6829f518df847b7b3fdd0" dependencies = [ "memchr", ] @@ -2177,26 +1906,6 @@ dependencies = [ "synstructure", ] -[[package]] -name = "zerocopy" -version = "0.8.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.8.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "zerofrom" version = "0.1.6" diff --git a/Cargo.toml b/Cargo.toml index 5d7bbad9b..8221ab706 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -110,7 +110,6 @@ ansi-width = "0.1.0" serde = { version = "1.0.219", features = ["derive"] } dirs = "6.0.0" serde_norway = "0.9" -backtrace = "0.3" clap = { version = "4.5.38", features = ["cargo", "derive"] } [dependencies.git2] @@ -134,22 +133,13 @@ windows-sys = { version = "0.61.2", features = [ chrono = { version = "0.4.40", default-features = false, features = ["clock"] } [dev-dependencies] -criterion = { version = "0.8.2", features = ["html_reports"] } -trycmd = "1.0" +trycmd = { version = "1.2.0" } [features] default = ["git"] git = ["git2"] vendored-openssl = ["git2/vendored-openssl"] vendored-libgit2 = ["git2/vendored-libgit2"] -# Should only be used inside of flake.nix -nix = [] -# Should only be used inside of flake.nix locally (not on CI) -nix-local = [] -# Should only be used inside of flake.nix -# Shouldn't ever be used in CI (slow!) -powertest = [] -nix-generated = [] # use LTO for smaller binaries (that take longer to build) [profile.release] @@ -158,7 +148,3 @@ strip = true opt-level = 3 codegen-units = 1 panic = 'abort' - -[[bench]] -name = "my_benchmark" -harness = false diff --git a/TESTING.md b/TESTING.md index db0faa5af..ef34e512a 100644 --- a/TESTING.md +++ b/TESTING.md @@ -6,29 +6,56 @@ SPDX-License-Identifier: EUPL-1.2 --> # Testing eza -## Running tests +## Testing environment In order to run the tests in eza you need: - [just](https://github.com/casey/just) -- [nix](https://nixos.org) +- [docker](https://docs.docker.com/desktop/), including [docker-compose](https://docs.docker.com/compose/install) and optionally [docker-buildx](https://github.com/docker/buildx) -then either run: -- `just itest` -- `nix build -L trycmd-local` +## Running the tests + +- `just integration-tests` to run the integration tests in docker +- `just unit-tests` to run the unit tests +- or `just test` to run the two commands at once. ## Modifying tests -In order to test your changes on eza, you will need to do one or multiple things in different cases. -You will need the additional tool -- [powertest](https://github.com/eza-community/powertest) +The integration tests are defined in the `tests` directory. + +The `TestDirectory` struct in the `cli_tests_helpers` module provides helper functions to setup a testing environement. Then the crate [trycmd](https://docs.rs/trycmd/) is used to run eza and assert the outputs. + +The tests assertions are defined in the `tests/cmd` directory, with the structure `cmd/{platform}/{group}/{test}.toml`. + - `{platform}` is one of `any` for tests that are not platform specific or `unix` for Unix specific tests. + - `{group}` represent a group of tests using the same testing environment. + +### Regenerating the tests assertions + +When changing the behaviour of eza or when adding options, it is necessary to regerate the tests assertions using `just integration-test-regen`. + +### Debugging tests + +Running the integration tests manually: +``` +docker compose run --rm tests cargo test -- --test cli_tests --test-threads 1 +``` -You will also need to modify the `devtools/dir-generator.sh` file if you want to add some test cases +Forcing the container image to be rebuilt: +``` +docker compose run --build --rm tests cargo test -- --test cli_tests --test-threads 1 +``` -### You added/modified an option -Please run `just regen` to regenerate powertesting. Then look into `tests/gen` or `tests/cmd` for any tests not passing +Setting `RUST_BACKTRACE`: +``` +docker compose run --rm -e RUST_BACKTRACE=1 tests cargo test -- --test cli_tests --test-threads 1 +``` -### You changed the output of eza +Lauching a shell in the testing environment: +``` +docker compose run --rm tests bash +``` -Please run `nix build -L trydump` or `just idump` -And lookout for any test no longer passing +Clearing all caches (build, cargo, test data): +``` +docker compose down --volumes +``` diff --git a/benches/my_benchmark.rs b/benches/my_benchmark.rs deleted file mode 100644 index 62b21e1e3..000000000 --- a/benches/my_benchmark.rs +++ /dev/null @@ -1,20 +0,0 @@ -// SPDX-FileCopyrightText: 2024 Christina Sørensen -// SPDX-License-Identifier: EUPL-1.2 -// -// SPDX-FileCopyrightText: 2023-2024 Christina Sørensen, eza contributors -// SPDX-FileCopyrightText: 2014 Benjamin Sago -// SPDX-License-Identifier: MIT -use std::hint::black_box; - -use criterion::{Criterion, criterion_group, criterion_main}; - -pub fn criterion_benchmark(c: &mut Criterion) { - c.bench_function("logger", |b| { - b.iter(|| { - eza::logger::configure(black_box(std::env::var_os(eza::options::vars::EZA_DEBUG))); - }); - }); -} - -criterion_group!(benches, criterion_benchmark); -criterion_main!(benches); diff --git a/devtools/Dockerfile.tests b/devtools/Dockerfile.tests new file mode 100644 index 000000000..c9d3aab78 --- /dev/null +++ b/devtools/Dockerfile.tests @@ -0,0 +1,41 @@ +FROM ubuntu:24.04 + +# Install dependencies +RUN apt-get update && \ + apt-get -y install curl sudo gcc \ + # We need these tools for specific tests + attr git locales tzdata + +COPY --from=ghcr.io/casey/just:latest /just /usr/local/bin/ + +# Generate locales +RUN sed -i '/fr_FR.UTF-8/s/^# //g' /etc/locale.gen && \ + sed -i '/ja_JP.UTF-8/s/^# //g' /etc/locale.gen && \ + locale-gen + +# Configure test user +RUN groupadd -g 5677 eza_test && \ + groupadd -g 5678 eza_group && \ + groupadd -g 5679 eza_group2 && \ + useradd -G sudo,eza_test,eza_group2 -g eza_group -m -u 1234 eza_test && \ + sed -i 's/^%sudo.*$/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/' /etc/sudoers + +# Create working directories and volumes moint points +RUN mkdir -p /workspace/target && \ + mkdir -p /workspace/tests/data && \ + mkdir -p /home/eza_test/.cargo/registry && \ + chown -R eza_test: /workspace && \ + chown -R eza_test: /home/eza_test + +USER eza_test + +# Install Rust +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y + +# Configure git +RUN git config --global user.email "eza@eza.test" && \ + git config --global user.name "eza" + +ENV PATH=/home/eza_test/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + +WORKDIR /workspace diff --git a/devtools/dir-generator.sh b/devtools/dir-generator.sh deleted file mode 100644 index 1aa6b7898..000000000 --- a/devtools/dir-generator.sh +++ /dev/null @@ -1,149 +0,0 @@ -#!/usr/bin/env bash - -if [ -z "$1" ]; then - echo "Usage: $0 "; - exit 1; -fi - -rm "$1" -rf; -mkdir -p "$1"; -cd "$1" || exit; - -sudo groupadd -f eza_test - -# BEGIN grid -mkdir -p grid -cd grid || exit - -mkdir $(seq -w 001 1000); -seq 0001 1000 | split -l 1 -a 3 -d - file_ - -# Set time to unix epoch -touch --date=@0 ./*; - -cd .. || exit - -# END grid - -# BEGIN git - -mkdir -p git -cd git || exit - -mkdir $(seq -w 001 10); -for f in ./* -do - cd "$f" || exit - git init - seq 01 10 | split -l 1 -a 3 -d - file_ - cd .. || exit -done - -cd .. - -# END git - -# BEGIN test_root - -sudo mkdir root -sudo chmod 777 root -sudo mkdir root/empty - -# END test_root - -# BEGIN mknod - -mkdir -p specials - -sudo mknod specials/block-device b 3 60 -sudo mknod specials/char-device c 14 40 -sudo mknod specials/named-pipe p - -# END test_root - -# BEGIN test_symlinks - -mkdir -p symlinks -touch symlinks/file --date=@0 -ln -s file symlinks/symlink -ln -s symlink symlinks/symlink2 -mkdir -p symlinks/dir -ln -s dir symlinks/symlink3 -ln -s pipitek symlinks/symlink4 -touch "symlinks/ lorem ipsum" --date=@0 -ln -s "lorem ipsum" "symlinks/ lorem ipsum" - -# END test_symlinks - -# BEGIN test_perms - -mkdir -p perms -touch perms/file --date=@0 -touch perms/file2 --date=@0 -chmod 777 perms/file -chmod 001 perms/file2 - -# END test_perms - -# BEGIN test_group -mkdir -p group -touch group/file --date=@0 -sudo chgrp eza_test group/file -# END test_group - -# BEGIN test_size -mkdir -p size -touch size/1M --date=@0 -dd if=/dev/zero of=size/1M bs=1 count=0 seek=1M -touch size/1K --date=@0 -dd if=/dev/zero of=size/1K bs=1 count=0 seek=1K -touch size/1B --date=@0 -dd if=/dev/zero of=size/1B bs=1 count=0 seek=1 -touch size/1337 --date=@0 -dd if=/dev/zero of=size/1337 bs=1 count=0 seek=1337 -# END test_size - -# BEGIN test_time -mkdir -p time -touch time/epoch --date=@0 -touch time/1s --date=@1 -touch time/1m --date=@60 -touch time/1h --date=@3600 -touch time/1d --date=@86400 -touch time/1y --date=@31536000 -# END test_time - -# BEGIN test_icons -mkdir -p icons -touch icons/file --date=@0 -touch icons/go.go --date=@0 -touch icons/rust.rs --date=@0 -touch icons/c.c --date=@0 -touch icons/c++.cpp --date=@0 -touch icons/python.py --date=@0 -touch icons/java.java --date=@0 -touch icons/javascript.js --date=@0 -touch icons/html.html --date=@0 -touch icons/css.css --date=@0 -touch icons/php.php --date=@0 -touch icons/ruby.rb --date=@0 -touch icons/shell.sh --date=@0 -touch icons/unknown.unknown --date=@0 -touch icons/man.1 --date=@0 -touch icons/marked.md --date=@0 -# END test_icons - -# BEGIN test_dirs-ext -mkdir -p dirs-ext -mkdir dirs-ext/test -mkdir dirs-ext/abc -mkdir dirs-ext/01.city -mkdir dirs-ext/02.apple -touch dirs-ext/a.txt --date=@0 -touch dirs-ext/abc.mp3 --date=@0 -touch dirs-ext/ab --date=@0 -# END test_dirs_ext - -# BEGIN set date -touch --date=@0 ./*; -# END set date diff --git a/devtools/generate-timestamp-test-dir.sh b/devtools/generate-timestamp-test-dir.sh deleted file mode 100644 index 336f9ad24..000000000 --- a/devtools/generate-timestamp-test-dir.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash - -if [ -z "$1" ]; then - echo "Usage: $0 "; - exit 1; -fi - -rm "$1" -rf; -mkdir -p "$1"; -cd "$1" || exit; - -# generate files of various age -# TODO: some are commented out due to undeterministic behavior, see: -# https://github.com/eza-community/eza/issues/574 - -touch --date="13 month ago" ./13_month -#touch --date="11 month ago" ./11_month -#touch --date="7 month ago" ./07_month -#touch --date="5 month ago" ./05_month -touch --date="now" ./now -#touch --date="next hour" ./next_hour -#touch --date="next month" ./next_month -#touch --date="next year" ./next_year diff --git a/devtools/generate-trycmd-test.sh b/devtools/generate-trycmd-test.sh deleted file mode 100755 index 396d8ae4b..000000000 --- a/devtools/generate-trycmd-test.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash - -# Generate test data for the program - -if [ $# -le 1 ]; then - echo "Usage: $0 " - exit 1 -fi - -test_name=$1 -shift - -# Clean up previous test data - -if [ -f tests/cmd/"$test_name".toml ]; then - rm tests/cmd/"$test_name".toml -fi - -if [ -f tests/cmd/"$test_name".stdout ]; then - rm tests/cmd/"$test_name".stdout -fi - -if [ -f tests/cmd/"$test_name".stderr ]; then - rm tests/cmd/"$test_name".stderr -fi - -# Generate test data - -touch tests/cmd/"$test_name".toml - -echo 'bin.name = "eza"' >> tests/cmd/"$test_name".toml -echo 'args = "'"$*"'"' >> tests/cmd/"$test_name".toml - -# Generate expected output - -if [ -f target/debug/eza ]; then - target/debug/eza "$@" > tests/cmd/"$test_name".stdout 2> tests/cmd/"$test_name".stderr - returncode=$? - if [ $returncode -ne 0 ]; then - echo -e 'status.code = '$returncode'' >> tests/cmd/"$test_name".toml - exit 0 - fi -else - echo "Please build the program first" - exit 1 -fi diff --git a/devtools/regen.sh b/devtools/regen.sh new file mode 100644 index 000000000..23bf44817 --- /dev/null +++ b/devtools/regen.sh @@ -0,0 +1,11 @@ +uid=$(stat -c '%u' tests/cmd) +gid=$(stat -c '%g' tests/cmd) + +export TRYCMD=overwrite + +sudo chown -R $(whoami): tests/cmd + +cargo --locked test -- --test cli_tests --test-threads 1 +cargo --locked test --no-default-features -- --test cli_tests_any_no_git --test-threads 1 + +sudo chown -R $uid:$gid tests/cmd diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 000000000..c6531be7c --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,19 @@ +services: + tests: + image: eza-test-env:local + pull_policy: never + build: + context: ./devtools + dockerfile: Dockerfile.tests + volumes: + - ./:/workspace + - build_cache:/workspace/target + - rustup_cache:/home/eza_test/.rustup + - cargo_cache:/home/eza_test/.cargo/registry + - test_data:/workspace/tests/data + +volumes: + build_cache: + rustup_cache: + cargo_cache: + test_data: diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 269e91dd2..000000000 --- a/flake.lock +++ /dev/null @@ -1,277 +0,0 @@ -{ - "nodes": { - "advisory-db": { - "flake": false, - "locked": { - "lastModified": 1771416826, - "narHash": "sha256-H3aCNsQtKCHFnAk1c61ZayPki47NNiKwJhEFX6hWAWE=", - "owner": "rustsec", - "repo": "advisory-db", - "rev": "93090f9566b6702340d13a7dc3c206b5b5c4559e", - "type": "github" - }, - "original": { - "owner": "rustsec", - "repo": "advisory-db", - "type": "github" - } - }, - "fenix": { - "inputs": { - "nixpkgs": [ - "naersk", - "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src" - }, - "locked": { - "lastModified": 1752475459, - "narHash": "sha256-z6QEu4ZFuHiqdOPbYss4/Q8B0BFhacR8ts6jO/F/aOU=", - "owner": "nix-community", - "repo": "fenix", - "rev": "bf0d6f70f4c9a9cf8845f992105652173f4b617f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "fenix", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1767039857, - "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", - "owner": "NixOS", - "repo": "flake-compat", - "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-utils": { - "inputs": { - "systems": [ - "systems" - ] - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "pre-commit-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "naersk": { - "inputs": { - "fenix": "fenix", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1769799857, - "narHash": "sha256-88IFXZ7Sa1vxbz5pty0Io5qEaMQMMUPMonLa3Ls/ss4=", - "owner": "nix-community", - "repo": "naersk", - "rev": "9d4ed44d8b8cecdceb1d6fd76e74123d90ae6339", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "naersk", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1771177547, - "narHash": "sha256-trTtk3WTOHz7hSw89xIIvahkgoFJYQ0G43IlqprFoMA=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ac055f38c798b0d87695240c7b761b82fc7e5bc2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "powertest": { - "inputs": { - "flake-utils": [ - "flake-utils" - ], - "naersk": [ - "naersk" - ], - "nixpkgs": [ - "nixpkgs" - ], - "rust-overlay": [ - "rust-overlay" - ], - "treefmt-nix": [ - "treefmt-nix" - ] - }, - "locked": { - "lastModified": 1700124898, - "narHash": "sha256-+5jKG/KmYOopvHwBAGu5iPVFqoug16Bkyk/InwB40tc=", - "owner": "eza-community", - "repo": "powertest", - "rev": "c7b7d3038036d24dd5c77286e69a3d4b119bae81", - "type": "github" - }, - "original": { - "owner": "eza-community", - "repo": "powertest", - "type": "github" - } - }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1770726378, - "narHash": "sha256-kck+vIbGOaM/dHea7aTBxdFYpeUl/jHOy5W3eyRvVx8=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "5eaaedde414f6eb1aea8b8525c466dc37bba95ae", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "type": "github" - } - }, - "root": { - "inputs": { - "advisory-db": "advisory-db", - "flake-utils": "flake-utils", - "naersk": "naersk", - "nixpkgs": "nixpkgs", - "powertest": "powertest", - "pre-commit-hooks": "pre-commit-hooks", - "rust-overlay": "rust-overlay", - "systems": "systems", - "treefmt-nix": "treefmt-nix" - } - }, - "rust-analyzer-src": { - "flake": false, - "locked": { - "lastModified": 1752428706, - "narHash": "sha256-EJcdxw3aXfP8Ex1Nm3s0awyH9egQvB2Gu+QEnJn2Sfg=", - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "591e3b7624be97e4443ea7b5542c191311aa141d", - "type": "github" - }, - "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", - "type": "github" - } - }, - "rust-overlay": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1771384185, - "narHash": "sha256-KvmjUeA7uODwzbcQoN/B8DCZIbhT/Q/uErF1BBMcYnw=", - "owner": "oxalica", - "repo": "rust-overlay", - "rev": "23dd7fa91602a68bd04847ac41bc10af1e6e2fd2", - "type": "github" - }, - "original": { - "owner": "oxalica", - "repo": "rust-overlay", - "type": "github" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1770228511, - "narHash": "sha256-wQ6NJSuFqAEmIg2VMnLdCnUc0b7vslUohqqGGD+Fyxk=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "337a4fe074be1042a35086f15481d763b8ddc0e7", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 64c329073..000000000 --- a/flake.nix +++ /dev/null @@ -1,194 +0,0 @@ -# SPDX-FileCopyrightText: 2024 Christina Sørensen -# SPDX-License-Identifier: EUPL-1.2 -# -# SPDX-FileCopyrightText: 2014-2024 Christina Sørensen, eza contributors -# SPDX-License-Identifier: MIT -{ - description = "eza: a modern, maintained replacement for ls"; - - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - systems.url = "github:nix-systems/default"; - - flake-utils = { - url = "github:numtide/flake-utils"; - inputs = { - systems.follows = "systems"; - }; - }; - - naersk = { - url = "github:nix-community/naersk"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - rust-overlay = { - url = "github:oxalica/rust-overlay"; - inputs = { - nixpkgs.follows = "nixpkgs"; - }; - }; - - treefmt-nix = { - url = "github:numtide/treefmt-nix"; - inputs = { - nixpkgs.follows = "nixpkgs"; - }; - }; - - powertest = { - url = "github:eza-community/powertest"; - inputs = { - nixpkgs.follows = "nixpkgs"; - flake-utils.follows = "flake-utils"; - naersk.follows = "naersk"; - treefmt-nix.follows = "treefmt-nix"; - rust-overlay.follows = "rust-overlay"; - }; - }; - - pre-commit-hooks = { - url = "github:cachix/pre-commit-hooks.nix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - - advisory-db = { - url = "github:rustsec/advisory-db"; - flake = false; - }; - }; - outputs = - { - self, - flake-utils, - naersk, - nixpkgs, - treefmt-nix, - rust-overlay, - powertest, - pre-commit-hooks, - ... - }: - flake-utils.lib.eachDefaultSystem ( - system: - let - overlays = [ (import rust-overlay) ]; - - pkgs = (import nixpkgs) { - inherit system overlays; - }; - - toolchain = pkgs.rust-bin.fromRustupToolchainFile ./rust-toolchain.toml; - - naersk' = pkgs.callPackage naersk { - cargo = toolchain; - rustc = toolchain; - clippy = toolchain; - }; - - treefmtEval = treefmt-nix.lib.evalModule pkgs .config/treefmt.nix; - - darwinBuildInputs = pkgs.lib.optionals pkgs.stdenv.isDarwin [ - pkgs.libiconv - pkgs.darwin.apple_sdk.frameworks.Security - ]; - - buildInputs = [ pkgs.zlib ] ++ darwinBuildInputs; - in - rec { - # For `nix fmt` - formatter = treefmtEval.config.build.wrapper; - - packages = { - default = import ./nix/eza.nix { inherit pkgs naersk' buildInputs; }; - - check = naersk'.buildPackage { - inherit buildInputs; - src = ./.; - mode = "check"; - }; - - test = naersk'.buildPackage { - inherit buildInputs; - src = ./.; - mode = "test"; - }; - - clippy = naersk'.buildPackage { - inherit buildInputs; - src = ./.; - mode = "clippy"; - }; - } - // (import ./nix/trycmd.nix { inherit pkgs naersk' buildInputs; }); - - devShells.default = pkgs.mkShell { - inherit (self.checks.${system}.pre-commit-check) shellHook; - nativeBuildInputs = - with pkgs; - [ - # cargo - # clippy - rustup - toolchain - just - pandoc - convco - zip - reuse - - # For releases - b3sum - cargo-bump - - # For generating demo - vhs - - powertest.packages.${pkgs.system}.default - - cargo-hack - cargo-udeps - cargo-outdated - ] - ++ darwinBuildInputs; - }; - - checks = { - pre-commit-check = - let - toFilter = [ - "yamlfmt" - "nixfmt" - "taplo" - "shellcheck" # this doesn't respect our excludes:w - ]; - filterFn = n: _v: (!builtins.elem n toFilter); - treefmtFormatters = pkgs.lib.mapAttrs (_n: v: { inherit (v) enable; }) ( - pkgs.lib.filterAttrs filterFn (import .config/treefmt.nix).programs - ); - in - pre-commit-hooks.lib.${system}.run { - src = ./.; - hooks = treefmtFormatters // { - nixfmt-rfc-style.enable = true; - convco.enable = true; - reuse = { - enable = true; - name = "reuse"; - entry = with pkgs; "${reuse}/bin/reuse lint"; - pass_filenames = false; - }; - }; - }; - formatting = treefmtEval.config.build.check self; - build = packages.check; - inherit (packages) - default - test - trycmd - ; - lint = packages.clippy; - }; - } - ); -} diff --git a/justfile b/justfile index ecf864cb0..59b28cfdc 100644 --- a/justfile +++ b/justfile @@ -44,7 +44,23 @@ genDemo: # run unit tests [group('testing')] @test: - cargo test --workspace -- --quiet + just unit-tests + just integration-tests + +[group('testing')] +@unit-tests: + cargo --locked test --workspace -- --skip cli_tests --quiet + +[group('testing')] +@integration-tests: + docker compose run --build --rm tests sh -c \ + "cargo --locked test -- --test cli_tests --test-threads 1; \ + cargo --locked test --no-default-features -- --test cli_tests --test-threads 1" + +[group('testing')] +integration-tests-regen: + docker compose run --build --rm tests bash devtools/regen.sh + # run unit tests (in release mode) [group('testing')] @@ -351,4 +367,3 @@ gen_test_dir: powertest nix build -L ./#trydump find result/dump -type f \( -name "*.stdout" -o -name "*.stderr" \) -exec sh -c 'base=$(basename {}); if [ -e "tests/ptests/${base%.*}.toml" ]; then cp {} tests/ptests/; fi' \; - diff --git a/nix/eza.nix b/nix/eza.nix deleted file mode 100644 index 4fa0d447b..000000000 --- a/nix/eza.nix +++ /dev/null @@ -1,55 +0,0 @@ -# SPDX-FileCopyrightText: 2024 Christina Sørensen -# SPDX-License-Identifier: EUPL-1.2 -{ - pkgs, - naersk', - buildInputs, - ... -}: - -naersk'.buildPackage rec { - pname = "eza"; - version = "git"; - - src = ../.; - doCheck = true; - - inherit buildInputs; - nativeBuildInputs = with pkgs; [ - cmake - pkg-config - installShellFiles - pandoc - ]; - - buildNoDefaultFeatures = true; - buildFeatures = "git"; - - postInstall = '' - for page in eza.1 eza_colors.5 eza_colors-explanation.5; do - sed "s/\$version/${version}/g" "man/$page.md" | - pandoc --standalone -f markdown -t man >"man/$page" - done - installManPage man/eza.1 man/eza_colors.5 man/eza_colors-explanation.5 - installShellCompletion \ - --bash completions/bash/eza \ - --fish completions/fish/eza.fish \ - --zsh completions/zsh/_eza - ''; - - meta = with pkgs.lib; { - description = "A modern, maintained replacement for ls"; - longDescription = '' - eza is a modern replacement for ls. It uses colours for information by - default, helping you distinguish between many types of files, such as - whether you are the owner, or in the owning group. It also has extra - features not present in the original ls, such as viewing the Git status - for a directory, or recursing into directories with a tree view. eza is - written in Rust, so it’s small, fast, and portable. - ''; - homepage = "https://github.com/eza-community/eza"; - license = licenses.mit; - mainProgram = "eza"; - maintainers = with maintainers; [ cafkafk ]; - }; -} diff --git a/nix/trycmd.nix b/nix/trycmd.nix deleted file mode 100644 index b164e06a8..000000000 --- a/nix/trycmd.nix +++ /dev/null @@ -1,109 +0,0 @@ -# SPDX-FileCopyrightText: 2024 Christina Sørensen -# SPDX-License-Identifier: EUPL-1.2 -{ - pkgs, - naersk', - buildInputs, - ... -}: - -{ - trycmd = naersk'.buildPackage { - src = ../.; - mode = "test"; - doCheck = true; - # No reason to wait for release build - release = false; - # buildPhase files differ between dep and main phase - singleStep = true; - # generate testing files - buildPhase = '' - bash devtools/dir-generator.sh tests/test_dir && echo "Dir generated" - bash devtools/generate-timestamp-test-dir.sh tests/timestamp_test_dir - ''; - cargoTestOptions = - opts: - opts - ++ [ - "--features nix" - "--features nix-local" - "--features powertest" - ]; - inherit buildInputs; - nativeBuildInputs = with pkgs; [ git ]; - }; - - # TODO: add conditionally to checks. - # Run `nix build .#trycmd` to run integration tests - trycmd-local = naersk'.buildPackage { - src = ../.; - mode = "test"; - doCheck = true; - # No reason to wait for release build - release = false; - # buildPhase files differ between dep and main phase - singleStep = true; - # set itests files creation date to unix epoch - buildPhase = '' - bash devtools/dir-generator.sh tests/test_dir - bash devtools/generate-timestamp-test-dir.sh tests/timestamp_test_dir - touch --date=@0 tests/itest/* - touch --date=@0 tests/ptests/*; - fd -e stdout -e stderr -H -t file -X sed -i 's/[CWD]\//\/build\/source\//g' - ''; - cargoTestOptions = - opts: - opts - ++ [ - "--features nix" - "--features nix-local" - "--features powertest" - ]; - inherit buildInputs; - nativeBuildInputs = with pkgs; [ git ]; - }; - - # Run `nix build .#trydump` to dump testing files - trydump = naersk'.buildPackage { - src = ../.; - mode = "test"; - doCheck = true; - # No reason to wait for release build - release = false; - # buildPhase files differ between dep and main phase - singleStep = true; - # set itests files creation date to unix epoch - buildPhase = '' - bash devtools/dir-generator.sh tests/test_dir - bash devtools/generate-timestamp-test-dir.sh tests/timestamp_test_dir - touch --date=@0 tests/itest/*; - rm tests/cmd/*.stdout || echo; - rm tests/cmd/*.stderr || echo; - - touch --date=@0 tests/ptests/*; - rm tests/ptests/*.stdout || echo; - rm tests/ptests/*.stderr || echo; - ''; - cargoTestOptions = - opts: - opts - ++ [ - "--features nix" - "--features nix-local" - "--features powertest" - #"-F trycmd/debug" - ]; - TRYCMD = "dump"; - postInstall = '' - fd -e stdout -e stderr -H -t file -X sed -i 's/\/build\/source\//[CWD]\//g' - - cp dump $out -r - ''; - inherit buildInputs; - nativeBuildInputs = with pkgs; [ - fd - gnused - git - ]; - }; -} diff --git a/powertest.yaml b/powertest.yaml deleted file mode 100644 index b9401c655..000000000 --- a/powertest.yaml +++ /dev/null @@ -1,253 +0,0 @@ -# SPDX-FileCopyrightText: 2024 Christina Sørensen -# SPDX-License-Identifier: EUPL-1.2 -dump_dir: tests/ptests -depth: 1 -binary: eza -gen_binary: target/debug/eza -args: tests/test_dir -commands: - ? - null # Meta options - - --help - : - ? - -v - - --version - : - ? - -1 # Display Options - - --oneline - : - ? - -l - - --long - : - ? - -G - - --grid - : - ? - -x - - --across - : - ? - -R - - --recurse - : - ? - -T - - --tree - : - ? - -X - - --dereference - : - ? - -F - - --classify - : - ? - -F - - --classify - : values: - - auto - - always - - never - ? - null - - --color - : values: - - auto - - always - - never - ? - null - - --colour - : values: - - auto - - always - - never - ? - null - - --icons - : - ? - null - - --icons - : values: - - auto - - always - - never - ? - null - - --no-quotes - : - ? - null - - --hyperlink - : - ? - null - - --hyperlink - : values: - - auto - - always - - never - ? - null - - --absolute - : values: - - on - - follow - - off - ? - -w - - --width - : values: - - 15 - - 30 - - 200 - ? - null - - --smart-group - : - ? - -a # Filtering and Sorting Options - - --all - : - ? - -A - - --almost-all - : - ? - -d - - --treat-dirs-as-files - : - ? - null - - --treat-dirs-as-files - : - ? - -L # Hidden alias - - --level - : prefix: -T - values: - - 0 - - 1 - - 2 - - 3 - - 4 - - 5 - ? - -r - - --reverse - : - ? - -s - - --sort - : short: -s - long: time-style - prefix: -l - values: # non-deterministic results with our setup (tests/test_dir) are commented out - # - accessed - # - age - # - changed - # - created - # - date - - Ext - - ext - - Extension - - extension - - Filename - - filename - # - inode - # - modified - - Name - - name - # - newest - # - none - # - oldest - # - size - # - time - - type - ? - null - - --group-directories-first - : - ? - null - - --group-directories-last - : - ? - -D - - --only-dirs - : - ? - -f - - --only-files - : - ? - -f - - --only-files - : - ? - -I # TODO: add more globs - - --ignore-glob - : prefix: -l - values: - - "*.toml" - ? - null - - --git-ignore - : - ? - -b # Long View Options - - --binary - : - ? - -B - - --bytes - : - ? - -g - - --group - : - ? - -h - - --header - : - ? - -H - - --links - : - ? - -i - - --inode - : - ? - -m - - --modified - : - ? - -M - - --mounts - : - ? - -n - - --numeric - : - ? - -S - - --blocksize - : - ? - -t - - --time - : prefix: -l - values: - - modified - #- accessed BROKEN - #- changed - #- created - ? - -u - - --accessed - : - ? - -U - - --created - : - ? - null - - --changed - : - ? - null - - --time-style - : long: time-style - values: - - default - - iso - - long-iso - - full-iso - - relative - ? - null - - --total-size - : - ? - null - - --no-permissions - : - ? - -o - - --octal-permissions - : - ? - null - - --no-filesize - : - ? - null - - --no-user - : - ? - null - - --git - : - ? - null - - --no-git - : - ? - null - - --git-repos - : - ? - -@ - - --extended - : - ? - -Z - - --context - : diff --git a/src/options/stdin.rs b/src/options/stdin.rs index a73f8370b..7067aaaf2 100644 --- a/src/options/stdin.rs +++ b/src/options/stdin.rs @@ -10,7 +10,6 @@ use crate::options::Vars; use crate::options::vars::EZA_STDIN_SEPARATOR; use std::ffi::OsString; use std::io; -use std::io::IsTerminal; #[derive(Debug, PartialEq)] pub enum FilesInput { @@ -18,9 +17,30 @@ pub enum FilesInput { Args, } +/// Returns true only when stdin is a pipe or FIFO — not a terminal, not /dev/null +/// or other character devices. This prevents eza from blocking or silently +/// producing no output when stdin is redirected to /dev/null in sandboxed +/// environments (bubblewrap, Docker, etc.). +#[cfg(unix)] +fn stdin_is_pipe() -> bool { + use std::os::unix::io::AsRawFd; + let mut stat: libc::stat = unsafe { std::mem::zeroed() }; + unsafe { + libc::fstat(io::stdin().as_raw_fd(), &mut stat) == 0 + && (stat.st_mode & libc::S_IFMT) == libc::S_IFIFO + } +} + +#[cfg(not(unix))] +fn stdin_is_pipe() -> bool { + use std::io::IsTerminal; + + !io::stdin().is_terminal() +} + impl FilesInput { pub fn deduce(matches: &ArgMatches, vars: &V) -> Self { - if matches.get_flag("stdin") || !io::stdin().is_terminal() { + if matches.get_flag("stdin") || stdin_is_pipe() { let separator = vars .get(EZA_STDIN_SEPARATOR) .unwrap_or(OsString::from("\n")); diff --git a/tests/cli_tests.rs b/tests/cli_tests.rs deleted file mode 100644 index 8fa1965f5..000000000 --- a/tests/cli_tests.rs +++ /dev/null @@ -1,34 +0,0 @@ -#[test] -fn cli_all_tests() { - trycmd::TestCases::new().case("tests/cmd/*_all.toml"); -} - -#[test] -#[cfg(unix)] -fn cli_unix_tests() { - trycmd::TestCases::new().case("tests/cmd/*_unix.toml"); -} - -#[test] -#[cfg(windows)] -fn cli_windows_tests() { - trycmd::TestCases::new().case("tests/cmd/*_windows.toml"); -} - -#[test] -#[cfg(feature = "nix-local")] -fn cli_nix_local_tests() { - trycmd::TestCases::new().case("tests/cmd/*_nix_local.toml"); -} - -#[test] -#[cfg(feature = "powertest")] -fn cli_powertest_tests() { - trycmd::TestCases::new().case("tests/ptests/*.toml"); -} - -#[test] -#[cfg(feature = "nix")] -fn cli_nix_generated_tests() { - trycmd::TestCases::new().case("tests/gen/*.toml"); -} diff --git a/tests/cli_tests_any.rs b/tests/cli_tests_any.rs new file mode 100644 index 000000000..65b988631 --- /dev/null +++ b/tests/cli_tests_any.rs @@ -0,0 +1,92 @@ +mod cli_tests_helpers; + +use cli_tests_helpers::{AllocateFileSize, TestDirectory}; + +#[test] +fn cli_tests_any_basic() { + let test_dir = TestDirectory::new("any", "basic"); + + test_dir.create_files(&["file.txt"]); + test_dir.create_dirs(&["dir"]); + + test_dir.run_tests(); +} + +#[test] +fn cli_tests_any_dotfiles() { + let test_dir = TestDirectory::new("any", "dotfiles"); + + test_dir.create_files(&[".file"]); + test_dir.create_dirs(&[".dir"]); + + test_dir.run_tests(); +} + +#[test] +fn cli_tests_any_file_exts() { + let test_dir = TestDirectory::new("any", "file_exts"); + + test_dir.create_files(&[ + "Makefile", + "IMAGE.PNG", + "image.svg", + "VIDEO.AVI", + "video.wmv", + "music.mp3", + "MUSIC.OGG", + "lossless.flac", + "lossless.wav", + "crypto.asc", + "crypto.signature", + "document.pdf", + "DOCUMENT.XLSX", + "COMPRESSED.ZIP", + "compressed.tar.gz", + "compressed.tgz", + "compressed.tar.xz", + "compressed.txz", + "compressed.deb", + "backup~", + "#SAVEFILE#", + "file.tmp", + "compiled.class", + "compiled.o", + "compiled.js", + "compiled.coffee", + ]); + + test_dir.run_tests(); +} + +#[test] +fn cli_tests_any_files_and_dirs() { + let test_dir = TestDirectory::new("any", "files_and_dirs"); + + test_dir.create_files(&["a.txt", "abc.mp3", "ab"]); + test_dir.create_dirs(&["test", "abc", "01.city", "02.apple"]); + + test_dir.run_tests(); +} + +#[test] +#[cfg(not(feature = "git"))] +fn cli_tests_any_no_git() { + let test_dir = TestDirectory::new("any", "no_git"); + test_dir.run_tests(); +} + +#[test] +fn cli_tests_any_size() { + let test_dir = TestDirectory::new("any", "size"); + + for i in 1..13 { + let mut f = test_dir.create_file(format!("{}_bytes", i)); + f.write_sized(i); + let mut f = test_dir.create_file(format!("{}_Kib", i)); + f.write_sized(i * 1024); + let mut f = test_dir.create_file(format!("{}_MiB", i)); + f.write_sized(i * 1024 * 1024); + } + + test_dir.run_tests(); +} diff --git a/tests/cli_tests_helpers.rs b/tests/cli_tests_helpers.rs new file mode 100644 index 000000000..2c3c5a4ab --- /dev/null +++ b/tests/cli_tests_helpers.rs @@ -0,0 +1,129 @@ +#![allow(dead_code)] + +use std::env; +use std::fs::{self, File, FileTimes}; +use std::io::Write; +#[cfg(unix)] +use std::os::unix::fs as unix_fs; +use std::path::{self, Path, PathBuf}; +use std::process::Command; +use std::time::SystemTime; + +pub struct TestDirectory { + data_path: PathBuf, + spec_path: PathBuf, + initial_dir_path: PathBuf, +} + +const TEST_DATA_DIR: &str = "tests/data"; +const TEST_SPEC_DIR: &str = "tests/cmd"; + +impl TestDirectory { + pub fn new(platform: &str, group: &str) -> Self { + let data_path_str = format!("{TEST_DATA_DIR}/{platform}/{group}"); + let spec_path_str = format!("{TEST_SPEC_DIR}/{platform}/{group}"); + + let data_path = path::absolute(&data_path_str).unwrap(); + let spec_path = path::absolute(&spec_path_str).unwrap(); + + let _ = fs::remove_dir_all(&data_path_str); + fs::create_dir_all(&data_path).unwrap(); + + TestDirectory { + data_path, + spec_path, + initial_dir_path: env::current_dir().unwrap(), + } + } + + pub fn create_file>(&self, file_name: P) -> File { + let mut file = File::create(self.data_path.join(file_name)).unwrap(); + Self::set_time_to_epoch(&mut file); + file + } + + pub fn create_files>(&self, files: &[P]) { + for file_name in files { + self.create_file(file_name); + } + } + + pub fn create_dirs>(&self, dirs: &[P]) { + for dir_name in dirs { + fs::create_dir(self.data_path.join(dir_name)).unwrap(); + let mut dir = File::open(self.data_path.join(dir_name)).unwrap(); + Self::set_time_to_epoch(&mut dir); + } + } + + fn set_time_to_epoch(f: &mut File) { + let times = FileTimes::new() + .set_accessed(SystemTime::UNIX_EPOCH) + .set_modified(SystemTime::UNIX_EPOCH); + f.set_times(times).unwrap(); + } + + // Not currently used on Windows + pub fn run(&self, command: &str, args: &[&str]) { + Command::new(command) + .args(args) + .current_dir(&self.data_path) + .output() + .unwrap(); + } + + #[cfg(unix)] + pub fn symlink, Q: AsRef>(&self, source: P, target: Q) { + unix_fs::symlink(source, self.data_path.join(target)).unwrap(); + } + + #[cfg(unix)] + pub fn chown>(&self, dir: P, uid: Option, gid: Option) { + unix_fs::chown(self.data_path.join(dir), uid, gid).unwrap(); + } + + pub fn run_tests(&self) { + let spec_path = self.spec_path.to_str().unwrap(); + + // This is not thread safe!!! + // This will change the CWD of the whole process, + // so the tests must be run in single thread mode. + env::set_current_dir(&self.data_path).unwrap(); + trycmd::TestCases::new() + .case(format!("{spec_path}/*.toml")) + .default_bin_name("eza") + .run(); + } +} + +impl Drop for TestDirectory { + fn drop(&mut self) { + env::set_current_dir(&self.initial_dir_path).unwrap(); + } +} + +impl AsRef for TestDirectory { + fn as_ref(&self) -> &Path { + &self.data_path + } +} + +impl std::ops::Deref for TestDirectory { + type Target = PathBuf; + + fn deref(&self) -> &PathBuf { + &self.data_path + } +} + +pub trait AllocateFileSize { + fn write_sized(&mut self, size: usize); +} + +impl AllocateFileSize for File { + fn write_sized(&mut self, size: usize) { + // Naive implementation, works fine for small files + let buf = vec![0; size]; + self.write(buf.as_slice()).unwrap(); + } +} diff --git a/tests/cli_tests_linux.rs b/tests/cli_tests_linux.rs new file mode 100644 index 000000000..f404cb402 --- /dev/null +++ b/tests/cli_tests_linux.rs @@ -0,0 +1,134 @@ +#![cfg(target_os = "linux")] + +mod cli_tests_helpers; + +use cli_tests_helpers::TestDirectory; + +#[test] +// This test needs locales en_US, fr_FR and ja_JP. +fn cli_tests_linux_date_current_year() { + use std::fs::FileTimes; + use std::time::SystemTime; + + use chrono::{Datelike, Local, TimeZone}; + + let test_dir = TestDirectory::new("linux", "date_current_year"); + + let current_year = Local::now().year(); + + let old_date: SystemTime = Local + .with_ymd_and_hms(current_year, 3, 3, 0, 0, 0) + .unwrap() + .into(); + let med_date: SystemTime = Local + .with_ymd_and_hms(current_year, 6, 15, 23, 14, 29) + .unwrap() + .into(); + let new_date: SystemTime = Local + .with_ymd_and_hms(current_year, 12, 22, 10, 38, 53) + .unwrap() + .into(); + + // Sleep between each create as we can not modified the created time + let peach = test_dir.create_file("peach"); + let peach_times = FileTimes::new().set_modified(med_date); + peach.set_times(peach_times).unwrap(); + + let plum = test_dir.create_file("plum"); + let plum_times = FileTimes::new().set_modified(new_date); + plum.set_times(plum_times).unwrap(); + + let pear = test_dir.create_file("pear"); + let pear_times = FileTimes::new().set_modified(old_date); + pear.set_times(pear_times).unwrap(); + + test_dir.run_tests(); +} + +#[test] +#[cfg(target_os = "linux")] +// This test needs locales en_US, fr_FR and ja_JP. +fn cli_tests_linux_date_locale() { + use std::fs::FileTimes; + use std::thread; + use std::time::{Duration, SystemTime}; + + use chrono::{Local, TimeZone}; + + let test_dir = TestDirectory::new("linux", "date_locale"); + + let old_date: SystemTime = Local.with_ymd_and_hms(2003, 3, 3, 0, 0, 0).unwrap().into(); + let med_date: SystemTime = Local + .with_ymd_and_hms(2006, 6, 15, 23, 14, 29) + .unwrap() + .into(); + let new_date: SystemTime = Local + .with_ymd_and_hms(2009, 12, 22, 10, 38, 53) + .unwrap() + .into(); + + // Sleep between each create as we can not modified the created time + let peach = test_dir.create_file("peach"); + thread::sleep(Duration::from_millis(100)); + let peach_times = FileTimes::new() + .set_modified(med_date) + .set_accessed(new_date); + peach.set_times(peach_times).unwrap(); + + let plum = test_dir.create_file("plum"); + thread::sleep(Duration::from_millis(100)); + let plum_times = FileTimes::new() + .set_modified(new_date) + .set_accessed(old_date); + plum.set_times(plum_times).unwrap(); + + let pear = test_dir.create_file("pear"); + let pear_times = FileTimes::new() + .set_modified(old_date) + .set_accessed(med_date); + pear.set_times(pear_times).unwrap(); + + test_dir.run_tests(); +} + +#[test] +fn cli_tests_linux_groups() { + let test_dir = TestDirectory::new("linux", "groups"); + + test_dir.create_files(&["eza_test", "eza_group", "eza_group2"]); + + test_dir.chown("eza_test", None, Some(5677)); + test_dir.chown("eza_group", None, Some(5678)); + test_dir.chown("eza_group2", None, Some(5679)); + + test_dir.run_tests(); +} + +#[test] +fn cli_tests_linux_xattr() { + let test_dir = TestDirectory::new("linux", "xattr"); + + test_dir.create_files(&["file_no_attributes", "file_attributes"]); + test_dir.create_dirs(&["dir_no_attributes", "dir_attributes"]); + + // command from package `attr` + test_dir.run( + "setfattr", + &[ + "--name=user.xdg.tags", + "--value=foo,bar,baz", + "file_attributes", + ], + ); + + test_dir.run( + "setfattr", + &[ + "--name=user.xdg.tags", + "--value=foo,bar,baz", + "dir_attributes", + ], + ); + + test_dir.run_tests(); +} diff --git a/tests/cli_tests_unix_git.rs b/tests/cli_tests_unix_git.rs new file mode 100644 index 000000000..aa99cdf97 --- /dev/null +++ b/tests/cli_tests_unix_git.rs @@ -0,0 +1,139 @@ +#![cfg(unix)] +#![cfg(feature = "git")] + +mod cli_tests_helpers; + +use cli_tests_helpers::TestDirectory; + +#[test] +fn cli_tests_unix_git_repos() { + let test_dir = TestDirectory::new("unix", "git_repos"); + test_dir.create_dirs(&["dir-git-repo1", "dir-git-repo2", "dir-git-repo3"]); + + // dir-git-repo1 + test_dir.run("git", &["init", "dir-git-repo1"]); + + // dir-git-repo2 + test_dir.run( + "git", + &["init", "dir-git-repo2", "--initial-branch", "main"], + ); + test_dir.run( + "git", + &[ + "-C", + "dir-git-repo2", + "commit", + "--message=\"initial commit\"", + "--allow-empty", + ], + ); + + // dir-git-repo3 + test_dir.run( + "git", + &["init", "dir-git-repo3", "--initial-branch", "add-bépo"], + ); + test_dir.run( + "git", + &[ + "-C", + "dir-git-repo3", + "commit", + "--message=\"initial commit\"", + "--allow-empty", + ], + ); + + test_dir.run_tests(); +} + +#[test] +fn cli_tests_unix_git_status() { + use std::io::Write; + + let test_dir = TestDirectory::new("unix", "git_status"); + test_dir.run("git", &["init", "."]); + test_dir.create_dirs(&[ + "dir-empty", + "dir-ignored", + "dir-ignored-with-file-unmodified", + "dir-modified", + "dir-modified-staged", + "dir-new", + "dir-new-staged", + "dir-new-staged-new", + ]); + + test_dir.create_files(&[ + "dir-ignored/file_new", + "dir-ignored-with-file-unmodified/file-unmodified", + "dir-new-staged-new/file-new-staged", + "dir-new/file-ignored", + "dir-new/file-new", + "file-ignored", + "file-new", + "file-new-staged", + ]); + let mut dir_modified = test_dir.create_file("dir-modified/file-modified"); + let mut dir_modified_staged = test_dir.create_file("dir-modified-staged/file-modified-staged"); + let mut modified = test_dir.create_file("file-modified"); + let mut modified_staged = test_dir.create_file("file-modified-staged"); + let mut modified_staged_modified = test_dir.create_file("file-modified-staged-modified"); + let mut new_staged_modified = test_dir.create_file("file-new-staged-modified"); + + test_dir.symlink("file-modified", "symlink-new"); + test_dir.symlink("file-non-existing", "symlink-broken"); + + let mut gitignore = test_dir.create_file(".gitignore"); + gitignore.write_all(b"dir-ignored*\nfile-ignored*").unwrap(); + + test_dir.run( + "git", + &[ + "add", + "dir-modified", + "dir-modified-staged", + "file-modified", + "file-modified-staged", + "file-modified-staged-modified", + ], + ); + test_dir.run( + "git", + &[ + "add", + "-f", + "dir-ignored-with-file-unmodified/file-unmodified", + ], + ); + test_dir.run("git", &["commit", "-m", "initial commit"]); + + modified.write_all(b"a").unwrap(); + modified_staged.write_all(b"a").unwrap(); + modified_staged_modified.write_all(b"a").unwrap(); + dir_modified.write_all(b"a").unwrap(); + dir_modified_staged.write_all(b"a").unwrap(); + + test_dir.run( + "git", + &[ + "add", + "dir-modified-staged", + "dir-new-staged", + "dir-new-staged-new", + "file-modified-staged", + "file-modified-staged-modified", + "file-new-staged", + "file-new-staged-modified", + "dir-new-staged-new/file-new-staged", + ], + ); + + test_dir.create_file("dir-new-staged-new/file-new"); + + new_staged_modified.write_all(b"a").unwrap(); + modified_staged_modified.write_all(b"a").unwrap(); + + test_dir.run_tests(); +} diff --git a/tests/cli_tests_unix_not_macos.rs b/tests/cli_tests_unix_not_macos.rs new file mode 100644 index 000000000..4276839f8 --- /dev/null +++ b/tests/cli_tests_unix_not_macos.rs @@ -0,0 +1,57 @@ +#![cfg(all(unix, not(target_os = "macos")))] + +mod cli_tests_helpers; + +use cli_tests_helpers::TestDirectory; + +#[test] +fn cli_tests_any_weird_filenames() { + use std::ffi::OsStr; + + use nu_ansi_term::Color; + + let test_dir = TestDirectory::new("unix", "weird_filenames"); + + test_dir.create_dirs(&["new-line-dir: [\n]"]); + + let mut ansi_string = "ansi: ".to_owned(); + ansi_string.push_str(Color::Blue.paint("blue").as_str()); + + test_dir.create_files(&[ + "ascii: hello", + "emoji: [🆒]", + "utf-8: pâté", + "bell: \u{07}", + "backspace: \u{08}", + "tab: \t", + "vertical tab: \u{0b}", + "form-feed: \u{0c}", + "carriage return: \r", + "escape: \u{1b}", + "new-line: [\n]", + &ansi_string, + ]); + + test_dir.symlink("new-line: [\n]", "new-line: [\n]-symlink"); + test_dir.symlink("broken-target: [\n]", "broken-target: [\n]-symlink"); + + let mut invalid_utf8_1 = "invalid-utf8-1: ".as_bytes().to_vec(); + invalid_utf8_1.extend_from_slice(&[0xff]); + let mut invalid_utf8_2 = "invalid-utf8-2: ".as_bytes().to_vec(); + invalid_utf8_2.extend_from_slice(&[0xc3, 0x28]); + let mut invalid_utf8_3 = "invalid-utf8-3: ".as_bytes().to_vec(); + invalid_utf8_3.extend_from_slice(&[0xe2, 0x82, 0x28]); + let mut invalid_utf8_4 = "invalid-utf8-4: ".as_bytes().to_vec(); + invalid_utf8_4.extend_from_slice(&[0xf0, 0x28, 0x8c, 0x28]); + + unsafe { + test_dir.create_files(&[ + OsStr::from_encoded_bytes_unchecked(&invalid_utf8_1), + OsStr::from_encoded_bytes_unchecked(&invalid_utf8_2), + OsStr::from_encoded_bytes_unchecked(&invalid_utf8_3), + OsStr::from_encoded_bytes_unchecked(&invalid_utf8_4), + ]); + } + + test_dir.run_tests(); +} diff --git a/tests/cmd/absolute_file_all.stderr b/tests/cmd/absolute_file_all.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/absolute_file_all.stdout b/tests/cmd/absolute_file_all.stdout deleted file mode 100644 index 3bbe5cbbc..000000000 --- a/tests/cmd/absolute_file_all.stdout +++ /dev/null @@ -1 +0,0 @@ -[CWD]/tests/itest/index.svg diff --git a/tests/cmd/absolute_file_all.toml b/tests/cmd/absolute_file_all.toml deleted file mode 100644 index 4666e76df..000000000 --- a/tests/cmd/absolute_file_all.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest/index.svg --absolute" diff --git a/tests/cmd/absolute_recurse_unix.stderr b/tests/cmd/absolute_recurse_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/absolute_recurse_unix.stdout b/tests/cmd/absolute_recurse_unix.stdout deleted file mode 100644 index 44233b948..000000000 --- a/tests/cmd/absolute_recurse_unix.stdout +++ /dev/null @@ -1,50 +0,0 @@ -[CWD]/tests/itest/a -[CWD]/tests/itest/b -[CWD]/tests/itest/c -[CWD]/tests/itest/d -[CWD]/tests/itest/dir-symlink -> vagrant/debug -[CWD]/tests/itest/e -[CWD]/tests/itest/exa -[CWD]/tests/itest/f -[CWD]/tests/itest/g -[CWD]/tests/itest/h -[CWD]/tests/itest/i -[CWD]/tests/itest/image.jpg.img.c.rs.log.png -[CWD]/tests/itest/index.svg -[CWD]/tests/itest/j -[CWD]/tests/itest/k -[CWD]/tests/itest/l -[CWD]/tests/itest/m -[CWD]/tests/itest/n -[CWD]/tests/itest/o -[CWD]/tests/itest/p -[CWD]/tests/itest/q -[CWD]/tests/itest/vagrant - -tests/itest/exa: -[CWD]/tests/itest/exa/file.c -> djihisudjuhfius -[CWD]/tests/itest/exa/sssssssssssssssssssssssssggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss - -tests/itest/exa/sssssssssssssssssssssssssggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss: -[CWD]/tests/itest/exa/sssssssssssssssssssssssssggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss/Makefile - -tests/itest/vagrant: -[CWD]/tests/itest/vagrant/debug -[CWD]/tests/itest/vagrant/dev -[CWD]/tests/itest/vagrant/log - -tests/itest/vagrant/debug: -[CWD]/tests/itest/vagrant/debug/a -[CWD]/tests/itest/vagrant/debug/symlink -> a -[CWD]/tests/itest/vagrant/debug/symlink-broken -> ./b - -tests/itest/vagrant/dev: -[CWD]/tests/itest/vagrant/dev/main.bf - -tests/itest/vagrant/log: -[CWD]/tests/itest/vagrant/log/file.png -[CWD]/tests/itest/vagrant/log/run - -tests/itest/vagrant/log/run: -[CWD]/tests/itest/vagrant/log/run/run.log.text -[CWD]/tests/itest/vagrant/log/run/sps.log.text diff --git a/tests/cmd/absolute_recurse_unix.toml b/tests/cmd/absolute_recurse_unix.toml deleted file mode 100644 index 9b941618f..000000000 --- a/tests/cmd/absolute_recurse_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --absolute -R" diff --git a/tests/cmd/absolute_unix.stderr b/tests/cmd/absolute_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/absolute_unix.stdout b/tests/cmd/absolute_unix.stdout deleted file mode 100644 index 64ff7ae26..000000000 --- a/tests/cmd/absolute_unix.stdout +++ /dev/null @@ -1,22 +0,0 @@ -[CWD]/tests/itest/a -[CWD]/tests/itest/b -[CWD]/tests/itest/c -[CWD]/tests/itest/d -[CWD]/tests/itest/dir-symlink -> vagrant/debug -[CWD]/tests/itest/e -[CWD]/tests/itest/exa -[CWD]/tests/itest/f -[CWD]/tests/itest/g -[CWD]/tests/itest/h -[CWD]/tests/itest/i -[CWD]/tests/itest/image.jpg.img.c.rs.log.png -[CWD]/tests/itest/index.svg -[CWD]/tests/itest/j -[CWD]/tests/itest/k -[CWD]/tests/itest/l -[CWD]/tests/itest/m -[CWD]/tests/itest/n -[CWD]/tests/itest/o -[CWD]/tests/itest/p -[CWD]/tests/itest/q -[CWD]/tests/itest/vagrant diff --git a/tests/cmd/absolute_unix.toml b/tests/cmd/absolute_unix.toml deleted file mode 100644 index d1442b947..000000000 --- a/tests/cmd/absolute_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --absolute" diff --git a/tests/cmd/any/basic/header.toml b/tests/cmd/any/basic/header.toml new file mode 100644 index 000000000..8a5b1f001 --- /dev/null +++ b/tests/cmd/any/basic/header.toml @@ -0,0 +1,7 @@ +args = ["-l", "--header", "."] +stdout = """ +Permissions Size User Date Modified Name +drwxr-xr-x - eza_test 1 Jan 1970 dir +.rw-r--r-- 0 eza_test 1 Jan 1970 file.txt +""" +stderr = "" diff --git a/tests/cmd/any/basic/header_color.toml b/tests/cmd/any/basic/header_color.toml new file mode 100644 index 000000000..af98e7741 --- /dev/null +++ b/tests/cmd/any/basic/header_color.toml @@ -0,0 +1,7 @@ +args = ["-l", "--header", "--color=always", "."] +stdout = """ +\u001B[4mPermissions\u001B[0m \u001B[4mSize\u001B[0m \u001B[4mUser\u001B[0m \u001B[4mDate Modified\u001B[0m \u001B[4mName\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[1;34mdir\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m file.txt +""" +stderr = "" diff --git a/tests/ptests/ptest_2439b7d68089135b.stdout b/tests/cmd/any/basic/help.toml similarity index 99% rename from tests/ptests/ptest_2439b7d68089135b.stdout rename to tests/cmd/any/basic/help.toml index 5bd9aa127..0e877c5e1 100644 --- a/tests/ptests/ptest_2439b7d68089135b.stdout +++ b/tests/cmd/any/basic/help.toml @@ -1,3 +1,5 @@ +args = ["--help"] +stdout = """ A modern replacement for ls Usage: eza [OPTIONS] [FILE]... @@ -81,3 +83,5 @@ LONG VIEW OPTIONS: --no-user suppress the user field --no-time suppress the time field --no-git suppress Git fields (overrides --git, --git-repos, --git-repos-no-status) +""" +stderr = "" diff --git a/tests/cmd/any/basic/no-flag.toml b/tests/cmd/any/basic/no-flag.toml new file mode 100644 index 000000000..25ef7b50b --- /dev/null +++ b/tests/cmd/any/basic/no-flag.toml @@ -0,0 +1,6 @@ +args = ["."] +stdout = """ +dir +file.txt +""" +stderr = "" diff --git a/tests/cmd/any/basic/no-flag_color.toml b/tests/cmd/any/basic/no-flag_color.toml new file mode 100644 index 000000000..5ead521bd --- /dev/null +++ b/tests/cmd/any/basic/no-flag_color.toml @@ -0,0 +1,6 @@ +args = ["--color=always", "."] +stdout = """ +\u001B[1;34mdir\u001B[0m +file.txt +""" +stderr = "" diff --git a/tests/cmd/any/basic/no-flag_non-existent-dir.toml b/tests/cmd/any/basic/no-flag_non-existent-dir.toml new file mode 100644 index 000000000..6bc571ab3 --- /dev/null +++ b/tests/cmd/any/basic/no-flag_non-existent-dir.toml @@ -0,0 +1,6 @@ +args = "non-existent-dir" +status.code = 2 +stdout = "" +stderr = """ +"non-existent-dir": No such file or directory (os error 2) +""" diff --git a/tests/cmd/any/dates/long_env-time-en.toml b/tests/cmd/any/dates/long_env-time-en.toml new file mode 100644 index 000000000..a12591d2d --- /dev/null +++ b/tests/cmd/any/dates/long_env-time-en.toml @@ -0,0 +1,11 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 ubuntu 15 Jun 2006 peach +.rw-r--r-- 0 ubuntu 3 Mar 2003 pear +.rw-r--r-- 0 ubuntu 22 Dec 2009 plum +""" +stderr = "" + +[env.add] +LC_TIME = "en_US.UTF-8" +LANG = "en_US.UTF-8" diff --git a/tests/cmd/any/dates/long_env-time-fr.toml b/tests/cmd/any/dates/long_env-time-fr.toml new file mode 100644 index 000000000..c6fd40ba7 --- /dev/null +++ b/tests/cmd/any/dates/long_env-time-fr.toml @@ -0,0 +1,11 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 ubuntu 15 juin 2006 peach +.rw-r--r-- 0 ubuntu 3 mars 2003 pear +.rw-r--r-- 0 ubuntu 22 déc. 2009 plum +""" +stderr = "" + +[env.add] +LC_TIME = "fr_FR.UTF-8" +LANG = "fr_FR.UTF-8" diff --git a/tests/cmd/any/dates/long_env-time-jp.toml b/tests/cmd/any/dates/long_env-time-jp.toml new file mode 100644 index 000000000..e49499625 --- /dev/null +++ b/tests/cmd/any/dates/long_env-time-jp.toml @@ -0,0 +1,10 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 ubuntu 15 6月 2006 peach +.rw-r--r-- 0 ubuntu 3 3月 2003 pear +.rw-r--r-- 0 ubuntu 22 12月 2009 plum +""" + +[env.add] +LC_TIME = "ja_JP.UTF-8" +LANG = "ja_JP.UTF-8" diff --git a/tests/cmd/any/dotfiles/all.toml b/tests/cmd/any/dotfiles/all.toml new file mode 100644 index 000000000..9f68b165d --- /dev/null +++ b/tests/cmd/any/dotfiles/all.toml @@ -0,0 +1,6 @@ +args = ["-a", "."] +stdout = """ +.dir +.file +""" +stderr = "" diff --git a/tests/cmd/any/dotfiles/all_all.toml b/tests/cmd/any/dotfiles/all_all.toml new file mode 100644 index 000000000..96ed7ffbb --- /dev/null +++ b/tests/cmd/any/dotfiles/all_all.toml @@ -0,0 +1,8 @@ +args = ["-aa", "."] +stdout = """ +. +.. +.dir +.file +""" +stderr = "" diff --git a/tests/cmd/any/dotfiles/no-flag.toml b/tests/cmd/any/dotfiles/no-flag.toml new file mode 100644 index 000000000..778e94083 --- /dev/null +++ b/tests/cmd/any/dotfiles/no-flag.toml @@ -0,0 +1,3 @@ +args = ["."] +stdout = "" +stderr = "" diff --git a/tests/cmd/any/file_exts/color.toml b/tests/cmd/any/file_exts/color.toml new file mode 100644 index 000000000..22b5a4fad --- /dev/null +++ b/tests/cmd/any/file_exts/color.toml @@ -0,0 +1,30 @@ +args = ["--color=always", "."] +stdout = """ +\u001B[2m#SAVEFILE#\u001B[0m +\u001B[2mbackup~\u001B[0m +\u001B[33mcompiled.class\u001B[0m +compiled.coffee +\u001B[1;33mcompiled.js\u001B[0m +\u001B[33mcompiled.o\u001B[0m +\u001B[31mcompressed.deb\u001B[0m +\u001B[31mcompressed.tar.gz\u001B[0m +\u001B[31mcompressed.tar.xz\u001B[0m +\u001B[31mcompressed.tgz\u001B[0m +\u001B[31mcompressed.txz\u001B[0m +\u001B[31mCOMPRESSED.ZIP\u001B[0m +\u001B[1;32mcrypto.asc\u001B[0m +\u001B[1;32mcrypto.signature\u001B[0m +\u001B[32mdocument.pdf\u001B[0m +\u001B[32mDOCUMENT.XLSX\u001B[0m +\u001B[2mfile.tmp\u001B[0m +\u001B[35mIMAGE.PNG\u001B[0m +\u001B[35mimage.svg\u001B[0m +\u001B[1;36mlossless.flac\u001B[0m +\u001B[1;36mlossless.wav\u001B[0m +\u001B[1;4;33mMakefile\u001B[0m +\u001B[36mmusic.mp3\u001B[0m +\u001B[36mMUSIC.OGG\u001B[0m +\u001B[1;35mVIDEO.AVI\u001B[0m +\u001B[1;35mvideo.wmv\u001B[0m +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/icons.toml b/tests/cmd/any/file_exts/icons.toml new file mode 100644 index 000000000..898a9b8cd --- /dev/null +++ b/tests/cmd/any/file_exts/icons.toml @@ -0,0 +1,30 @@ +args = ["--icons=always", "."] +stdout = """ +󰡯 #SAVEFILE# +󰡯 backup~ + compiled.class + compiled.coffee + compiled.js + compiled.o + compressed.deb + compressed.tar.gz + compressed.tar.xz + compressed.tgz + compressed.txz + COMPRESSED.ZIP +󰦝 crypto.asc +󱧃 crypto.signature + document.pdf + DOCUMENT.XLSX + file.tmp + IMAGE.PNG +󰕙 image.svg + lossless.flac + lossless.wav + Makefile + music.mp3 + MUSIC.OGG + VIDEO.AVI + video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/ignore-glob.toml b/tests/cmd/any/file_exts/ignore-glob.toml new file mode 100644 index 000000000..5136537ea --- /dev/null +++ b/tests/cmd/any/file_exts/ignore-glob.toml @@ -0,0 +1,29 @@ +args = ["--ignore-glob=*.OGG", "."] +stdout = """ +#SAVEFILE# +backup~ +compiled.class +compiled.coffee +compiled.js +compiled.o +compressed.deb +compressed.tar.gz +compressed.tar.xz +compressed.tgz +compressed.txz +COMPRESSED.ZIP +crypto.asc +crypto.signature +document.pdf +DOCUMENT.XLSX +file.tmp +IMAGE.PNG +image.svg +lossless.flac +lossless.wav +Makefile +music.mp3 +VIDEO.AVI +video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/ignore-glob_multi.toml b/tests/cmd/any/file_exts/ignore-glob_multi.toml new file mode 100644 index 000000000..fed612ab3 --- /dev/null +++ b/tests/cmd/any/file_exts/ignore-glob_multi.toml @@ -0,0 +1,28 @@ +args = ["--ignore-glob=*.OGG|*.mp3", "."] +stdout = """ +#SAVEFILE# +backup~ +compiled.class +compiled.coffee +compiled.js +compiled.o +compressed.deb +compressed.tar.gz +compressed.tar.xz +compressed.tgz +compressed.txz +COMPRESSED.ZIP +crypto.asc +crypto.signature +document.pdf +DOCUMENT.XLSX +file.tmp +IMAGE.PNG +image.svg +lossless.flac +lossless.wav +Makefile +VIDEO.AVI +video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/long_icons.toml b/tests/cmd/any/file_exts/long_icons.toml new file mode 100644 index 000000000..e508a8da2 --- /dev/null +++ b/tests/cmd/any/file_exts/long_icons.toml @@ -0,0 +1,30 @@ +args = ["-l", "--icons=always", "."] +stdout = """ +.rw-r--r-- 0 eza_test 1 Jan 1970 󰡯 #SAVEFILE# +.rw-r--r-- 0 eza_test 1 Jan 1970 󰡯 backup~ +.rw-r--r-- 0 eza_test 1 Jan 1970  compiled.class +.rw-r--r-- 0 eza_test 1 Jan 1970  compiled.coffee +.rw-r--r-- 0 eza_test 1 Jan 1970  compiled.js +.rw-r--r-- 0 eza_test 1 Jan 1970  compiled.o +.rw-r--r-- 0 eza_test 1 Jan 1970  compressed.deb +.rw-r--r-- 0 eza_test 1 Jan 1970  compressed.tar.gz +.rw-r--r-- 0 eza_test 1 Jan 1970  compressed.tar.xz +.rw-r--r-- 0 eza_test 1 Jan 1970  compressed.tgz +.rw-r--r-- 0 eza_test 1 Jan 1970  compressed.txz +.rw-r--r-- 0 eza_test 1 Jan 1970  COMPRESSED.ZIP +.rw-r--r-- 0 eza_test 1 Jan 1970 󰦝 crypto.asc +.rw-r--r-- 0 eza_test 1 Jan 1970 󱧃 crypto.signature +.rw-r--r-- 0 eza_test 1 Jan 1970  document.pdf +.rw-r--r-- 0 eza_test 1 Jan 1970  DOCUMENT.XLSX +.rw-r--r-- 0 eza_test 1 Jan 1970  file.tmp +.rw-r--r-- 0 eza_test 1 Jan 1970  IMAGE.PNG +.rw-r--r-- 0 eza_test 1 Jan 1970 󰕙 image.svg +.rw-r--r-- 0 eza_test 1 Jan 1970  lossless.flac +.rw-r--r-- 0 eza_test 1 Jan 1970  lossless.wav +.rw-r--r-- 0 eza_test 1 Jan 1970  Makefile +.rw-r--r-- 0 eza_test 1 Jan 1970  music.mp3 +.rw-r--r-- 0 eza_test 1 Jan 1970  MUSIC.OGG +.rw-r--r-- 0 eza_test 1 Jan 1970  VIDEO.AVI +.rw-r--r-- 0 eza_test 1 Jan 1970  video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/long_icons_color.toml b/tests/cmd/any/file_exts/long_icons_color.toml new file mode 100644 index 000000000..5cec377c7 --- /dev/null +++ b/tests/cmd/any/file_exts/long_icons_color.toml @@ -0,0 +1,30 @@ +args = ["-l", "--icons=always", "--color=always", "."] +stdout = """ +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m 󰡯 \u001B[2m#SAVEFILE#\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m 󰡯 \u001B[2mbackup~\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[33m compiled.class\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m  compiled.coffee +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[33m \u001B[1mcompiled.js\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[33m compiled.o\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[31m compressed.deb\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[31m compressed.tar.gz\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[31m compressed.tar.xz\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[31m compressed.tgz\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[31m compressed.txz\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[31m COMPRESSED.ZIP\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[32m󰦝 \u001B[1mcrypto.asc\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[32m󱧃 \u001B[1mcrypto.signature\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[32m document.pdf\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[32m DOCUMENT.XLSX\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m  \u001B[2mfile.tmp\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[35m IMAGE.PNG\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[35m󰕙 image.svg\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[36m \u001B[1mlossless.flac\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[36m \u001B[1mlossless.wav\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[33m \u001B[1;4mMakefile\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[36m music.mp3\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[36m MUSIC.OGG\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[35m \u001B[1mVIDEO.AVI\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[34m 1 Jan 1970\u001B[0m \u001B[35m \u001B[1mvideo.wmv\u001B[0m +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/sort-extensions-case.toml b/tests/cmd/any/file_exts/sort-extensions-case.toml new file mode 100644 index 000000000..f7e1826a1 --- /dev/null +++ b/tests/cmd/any/file_exts/sort-extensions-case.toml @@ -0,0 +1,30 @@ +args = ["--sort=Extension", "."] +stdout = """ +#SAVEFILE# +Makefile +backup~ +crypto.asc +VIDEO.AVI +compiled.class +compiled.coffee +compressed.deb +lossless.flac +compressed.tar.gz +compiled.js +music.mp3 +compiled.o +MUSIC.OGG +document.pdf +IMAGE.PNG +crypto.signature +image.svg +compressed.tgz +file.tmp +compressed.txz +lossless.wav +video.wmv +DOCUMENT.XLSX +compressed.tar.xz +COMPRESSED.ZIP +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/sort-extensions.toml b/tests/cmd/any/file_exts/sort-extensions.toml new file mode 100644 index 000000000..01dc314e2 --- /dev/null +++ b/tests/cmd/any/file_exts/sort-extensions.toml @@ -0,0 +1,30 @@ +args = ["--sort=extension", "."] +stdout = """ +#SAVEFILE# +backup~ +Makefile +crypto.asc +VIDEO.AVI +compiled.class +compiled.coffee +compressed.deb +lossless.flac +compressed.tar.gz +compiled.js +music.mp3 +compiled.o +MUSIC.OGG +document.pdf +IMAGE.PNG +crypto.signature +image.svg +compressed.tgz +file.tmp +compressed.txz +lossless.wav +video.wmv +DOCUMENT.XLSX +compressed.tar.xz +COMPRESSED.ZIP +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/sort-name-case.toml b/tests/cmd/any/file_exts/sort-name-case.toml new file mode 100644 index 000000000..b7a918de9 --- /dev/null +++ b/tests/cmd/any/file_exts/sort-name-case.toml @@ -0,0 +1,30 @@ +args = ["--sort=Name", "."] +stdout = """ +#SAVEFILE# +COMPRESSED.ZIP +DOCUMENT.XLSX +IMAGE.PNG +MUSIC.OGG +Makefile +VIDEO.AVI +backup~ +compiled.class +compiled.coffee +compiled.js +compiled.o +compressed.deb +compressed.tar.gz +compressed.tar.xz +compressed.tgz +compressed.txz +crypto.asc +crypto.signature +document.pdf +file.tmp +image.svg +lossless.flac +lossless.wav +music.mp3 +video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/sort-name.toml b/tests/cmd/any/file_exts/sort-name.toml new file mode 100644 index 000000000..82e2f9385 --- /dev/null +++ b/tests/cmd/any/file_exts/sort-name.toml @@ -0,0 +1,30 @@ +args = ["--sort=name", "."] +stdout = """ +#SAVEFILE# +backup~ +compiled.class +compiled.coffee +compiled.js +compiled.o +compressed.deb +compressed.tar.gz +compressed.tar.xz +compressed.tgz +compressed.txz +COMPRESSED.ZIP +crypto.asc +crypto.signature +document.pdf +DOCUMENT.XLSX +file.tmp +IMAGE.PNG +image.svg +lossless.flac +lossless.wav +Makefile +music.mp3 +MUSIC.OGG +VIDEO.AVI +video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/file_exts/sort-type.toml b/tests/cmd/any/file_exts/sort-type.toml new file mode 100644 index 000000000..2df99442a --- /dev/null +++ b/tests/cmd/any/file_exts/sort-type.toml @@ -0,0 +1,30 @@ +args = ["--sort=type", "."] +stdout = """ +#SAVEFILE# +COMPRESSED.ZIP +DOCUMENT.XLSX +IMAGE.PNG +MUSIC.OGG +Makefile +VIDEO.AVI +backup~ +compiled.class +compiled.coffee +compiled.js +compiled.o +compressed.deb +compressed.tar.gz +compressed.tar.xz +compressed.tgz +compressed.txz +crypto.asc +crypto.signature +document.pdf +file.tmp +image.svg +lossless.flac +lossless.wav +music.mp3 +video.wmv +""" +stderr = "" diff --git a/tests/cmd/any/files_and_dirs/group-dirs-first.toml b/tests/cmd/any/files_and_dirs/group-dirs-first.toml new file mode 100644 index 000000000..ce4d60f68 --- /dev/null +++ b/tests/cmd/any/files_and_dirs/group-dirs-first.toml @@ -0,0 +1,11 @@ +args = ["--group-directories-first", "."] +stdout = """ +01.city +02.apple +abc +test +a.txt +ab +abc.mp3 +""" +stderr = "" diff --git a/tests/cmd/any/files_and_dirs/sort-extensions.toml b/tests/cmd/any/files_and_dirs/sort-extensions.toml new file mode 100644 index 000000000..57e96dd11 --- /dev/null +++ b/tests/cmd/any/files_and_dirs/sort-extensions.toml @@ -0,0 +1,12 @@ +# Sorting by extension should ignore dirs +args = ["--sort=extension", "."] +stdout = """ +01.city +02.apple +ab +abc +test +abc.mp3 +a.txt +""" +stderr = "" diff --git a/tests/cmd/any/no_git/fail_git_not_supported.toml b/tests/cmd/any/no_git/fail_git_not_supported.toml new file mode 100644 index 000000000..b9f811f7b --- /dev/null +++ b/tests/cmd/any/no_git/fail_git_not_supported.toml @@ -0,0 +1,6 @@ +args = ["--git", "."] +status.code = 3 +stdout = "" +stderr = """ +eza: Options --git and --git-ignore can't be used because `git` feature was disabled in this build of exa +""" diff --git a/tests/cmd/any/size/long.toml b/tests/cmd/any/size/long.toml new file mode 100644 index 000000000..cda864054 --- /dev/null +++ b/tests/cmd/any/size/long.toml @@ -0,0 +1,40 @@ +args = ["-l", "--no-time", "."] +stdout = """ +.rw-r--r-- 1 eza_test 1_bytes +.rw-r--r-- 1.0k eza_test 1_Kib +.rw-r--r-- 1.0M eza_test 1_MiB +.rw-r--r-- 2 eza_test 2_bytes +.rw-r--r-- 2.0k eza_test 2_Kib +.rw-r--r-- 2.1M eza_test 2_MiB +.rw-r--r-- 3 eza_test 3_bytes +.rw-r--r-- 3.1k eza_test 3_Kib +.rw-r--r-- 3.1M eza_test 3_MiB +.rw-r--r-- 4 eza_test 4_bytes +.rw-r--r-- 4.1k eza_test 4_Kib +.rw-r--r-- 4.2M eza_test 4_MiB +.rw-r--r-- 5 eza_test 5_bytes +.rw-r--r-- 5.1k eza_test 5_Kib +.rw-r--r-- 5.2M eza_test 5_MiB +.rw-r--r-- 6 eza_test 6_bytes +.rw-r--r-- 6.1k eza_test 6_Kib +.rw-r--r-- 6.3M eza_test 6_MiB +.rw-r--r-- 7 eza_test 7_bytes +.rw-r--r-- 7.2k eza_test 7_Kib +.rw-r--r-- 7.3M eza_test 7_MiB +.rw-r--r-- 8 eza_test 8_bytes +.rw-r--r-- 8.2k eza_test 8_Kib +.rw-r--r-- 8.4M eza_test 8_MiB +.rw-r--r-- 9 eza_test 9_bytes +.rw-r--r-- 9.2k eza_test 9_Kib +.rw-r--r-- 9.4M eza_test 9_MiB +.rw-r--r-- 10 eza_test 10_bytes +.rw-r--r-- 10k eza_test 10_Kib +.rw-r--r-- 10M eza_test 10_MiB +.rw-r--r-- 11 eza_test 11_bytes +.rw-r--r-- 11k eza_test 11_Kib +.rw-r--r-- 12M eza_test 11_MiB +.rw-r--r-- 12 eza_test 12_bytes +.rw-r--r-- 12k eza_test 12_Kib +.rw-r--r-- 13M eza_test 12_MiB +""" +stderr = "" diff --git a/tests/cmd/any/size/long_binary.toml b/tests/cmd/any/size/long_binary.toml new file mode 100644 index 000000000..2eee070bd --- /dev/null +++ b/tests/cmd/any/size/long_binary.toml @@ -0,0 +1,40 @@ +args = ["-l", "--binary", "--no-time", "."] +stdout = """ +.rw-r--r-- 1 eza_test 1_bytes +.rw-r--r-- 1.0Ki eza_test 1_Kib +.rw-r--r-- 1.0Mi eza_test 1_MiB +.rw-r--r-- 2 eza_test 2_bytes +.rw-r--r-- 2.0Ki eza_test 2_Kib +.rw-r--r-- 2.0Mi eza_test 2_MiB +.rw-r--r-- 3 eza_test 3_bytes +.rw-r--r-- 3.0Ki eza_test 3_Kib +.rw-r--r-- 3.0Mi eza_test 3_MiB +.rw-r--r-- 4 eza_test 4_bytes +.rw-r--r-- 4.0Ki eza_test 4_Kib +.rw-r--r-- 4.0Mi eza_test 4_MiB +.rw-r--r-- 5 eza_test 5_bytes +.rw-r--r-- 5.0Ki eza_test 5_Kib +.rw-r--r-- 5.0Mi eza_test 5_MiB +.rw-r--r-- 6 eza_test 6_bytes +.rw-r--r-- 6.0Ki eza_test 6_Kib +.rw-r--r-- 6.0Mi eza_test 6_MiB +.rw-r--r-- 7 eza_test 7_bytes +.rw-r--r-- 7.0Ki eza_test 7_Kib +.rw-r--r-- 7.0Mi eza_test 7_MiB +.rw-r--r-- 8 eza_test 8_bytes +.rw-r--r-- 8.0Ki eza_test 8_Kib +.rw-r--r-- 8.0Mi eza_test 8_MiB +.rw-r--r-- 9 eza_test 9_bytes +.rw-r--r-- 9.0Ki eza_test 9_Kib +.rw-r--r-- 9.0Mi eza_test 9_MiB +.rw-r--r-- 10 eza_test 10_bytes +.rw-r--r-- 10Ki eza_test 10_Kib +.rw-r--r-- 10Mi eza_test 10_MiB +.rw-r--r-- 11 eza_test 11_bytes +.rw-r--r-- 11Ki eza_test 11_Kib +.rw-r--r-- 11Mi eza_test 11_MiB +.rw-r--r-- 12 eza_test 12_bytes +.rw-r--r-- 12Ki eza_test 12_Kib +.rw-r--r-- 12Mi eza_test 12_MiB +""" +stderr = "" diff --git a/tests/cmd/any/size/long_color-scale-size.toml b/tests/cmd/any/size/long_color-scale-size.toml new file mode 100644 index 000000000..45ed168d8 --- /dev/null +++ b/tests/cmd/any/size/long_color-scale-size.toml @@ -0,0 +1,40 @@ +args = ["-l", "--no-time", "--color=always", "--color-scale=size", "."] +stdout = """ +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m1\u001B[0m \u001B[1;33meza_test\u001B[0m 1_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m1.0k\u001B[0m \u001B[1;33meza_test\u001B[0m 1_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;88;79;0m1.0M\u001B[0m \u001B[1;33meza_test\u001B[0m 1_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m2\u001B[0m \u001B[1;33meza_test\u001B[0m 2_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m2.0k\u001B[0m \u001B[1;33meza_test\u001B[0m 2_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;89;81;0m2.1M\u001B[0m \u001B[1;33meza_test\u001B[0m 2_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m3\u001B[0m \u001B[1;33meza_test\u001B[0m 3_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m3.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 3_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;91;83;0m3.1M\u001B[0m \u001B[1;33meza_test\u001B[0m 3_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m4\u001B[0m \u001B[1;33meza_test\u001B[0m 4_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m4.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 4_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;95;87;0m4.2M\u001B[0m \u001B[1;33meza_test\u001B[0m 4_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m5\u001B[0m \u001B[1;33meza_test\u001B[0m 5_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m5.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 5_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;99;91;0m5.2M\u001B[0m \u001B[1;33meza_test\u001B[0m 5_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m6\u001B[0m \u001B[1;33meza_test\u001B[0m 6_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m6.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 6_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;106;98;0m6.3M\u001B[0m \u001B[1;33meza_test\u001B[0m 6_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m7\u001B[0m \u001B[1;33meza_test\u001B[0m 7_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m7.2k\u001B[0m \u001B[1;33meza_test\u001B[0m 7_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;114;108;0m7.3M\u001B[0m \u001B[1;33meza_test\u001B[0m 7_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m8\u001B[0m \u001B[1;33meza_test\u001B[0m 8_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m8.2k\u001B[0m \u001B[1;33meza_test\u001B[0m 8_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;127;122;0m8.4M\u001B[0m \u001B[1;33meza_test\u001B[0m 8_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m9\u001B[0m \u001B[1;33meza_test\u001B[0m 9_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m9.2k\u001B[0m \u001B[1;33meza_test\u001B[0m 9_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;146;141;0m9.4M\u001B[0m \u001B[1;33meza_test\u001B[0m 9_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m10\u001B[0m \u001B[1;33meza_test\u001B[0m 10_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m10k\u001B[0m \u001B[1;33meza_test\u001B[0m 10_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;172;169;0m10M\u001B[0m \u001B[1;33meza_test\u001B[0m 10_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m11\u001B[0m \u001B[1;33meza_test\u001B[0m 11_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m11k\u001B[0m \u001B[1;33meza_test\u001B[0m 11_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;210;208;0m12M\u001B[0m \u001B[1;33meza_test\u001B[0m 11_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;0;104;0m12\u001B[0m \u001B[1;33meza_test\u001B[0m 12_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;38;2;0;104;0m12k\u001B[0m \u001B[1;33meza_test\u001B[0m 12_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[38;2;255;255;42m13M\u001B[0m \u001B[1;33meza_test\u001B[0m 12_MiB +""" +stderr = "" diff --git a/tests/cmd/any/size/long_color-scale-size_mode-fixed.toml b/tests/cmd/any/size/long_color-scale-size_mode-fixed.toml new file mode 100644 index 000000000..312705e83 --- /dev/null +++ b/tests/cmd/any/size/long_color-scale-size_mode-fixed.toml @@ -0,0 +1,40 @@ +args = ["-l", "--no-time", "--color=always", "--color-scale=size", "--color-scale-mode=fixed", "."] +stdout = """ +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m1\u001B[0m \u001B[1;33meza_test\u001B[0m 1_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m1.0\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 1_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m1.0\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 1_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m2\u001B[0m \u001B[1;33meza_test\u001B[0m 2_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m2.0\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 2_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m2.1\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 2_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m3\u001B[0m \u001B[1;33meza_test\u001B[0m 3_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m3.1\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 3_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m3.1\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 3_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m4\u001B[0m \u001B[1;33meza_test\u001B[0m 4_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m4.1\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 4_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m4.2\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 4_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m5\u001B[0m \u001B[1;33meza_test\u001B[0m 5_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m5.1\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 5_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m5.2\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 5_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m6\u001B[0m \u001B[1;33meza_test\u001B[0m 6_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m6.1\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 6_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m6.3\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 6_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m7\u001B[0m \u001B[1;33meza_test\u001B[0m 7_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m7.2\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 7_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m7.3\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 7_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m8\u001B[0m \u001B[1;33meza_test\u001B[0m 8_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m8.2\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 8_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m8.4\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 8_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m9\u001B[0m \u001B[1;33meza_test\u001B[0m 9_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m9.2\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 9_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m9.4\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 9_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m10\u001B[0m \u001B[1;33meza_test\u001B[0m 10_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m10\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 10_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m10\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 10_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m11\u001B[0m \u001B[1;33meza_test\u001B[0m 11_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m11\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 11_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m12\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 11_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m12\u001B[0m \u001B[1;33meza_test\u001B[0m 12_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m12\u001B[0m\u001B[32mk\u001B[0m \u001B[1;33meza_test\u001B[0m 12_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m13\u001B[0m\u001B[32mM\u001B[0m \u001B[1;33meza_test\u001B[0m 12_MiB +""" +stderr = "" diff --git a/tests/cmd/any/size/long_color.toml b/tests/cmd/any/size/long_color.toml new file mode 100644 index 000000000..a3442aa98 --- /dev/null +++ b/tests/cmd/any/size/long_color.toml @@ -0,0 +1,40 @@ +args = ["-l", "--no-time", "--color=always", "."] +stdout = """ +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m1\u001B[0m \u001B[1;33meza_test\u001B[0m 1_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m1.0k\u001B[0m \u001B[1;33meza_test\u001B[0m 1_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m1.0M\u001B[0m \u001B[1;33meza_test\u001B[0m 1_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m2\u001B[0m \u001B[1;33meza_test\u001B[0m 2_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m2.0k\u001B[0m \u001B[1;33meza_test\u001B[0m 2_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m2.1M\u001B[0m \u001B[1;33meza_test\u001B[0m 2_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m3\u001B[0m \u001B[1;33meza_test\u001B[0m 3_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m3.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 3_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m3.1M\u001B[0m \u001B[1;33meza_test\u001B[0m 3_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m4\u001B[0m \u001B[1;33meza_test\u001B[0m 4_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m4.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 4_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m4.2M\u001B[0m \u001B[1;33meza_test\u001B[0m 4_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m5\u001B[0m \u001B[1;33meza_test\u001B[0m 5_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m5.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 5_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m5.2M\u001B[0m \u001B[1;33meza_test\u001B[0m 5_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m6\u001B[0m \u001B[1;33meza_test\u001B[0m 6_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m6.1k\u001B[0m \u001B[1;33meza_test\u001B[0m 6_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m6.3M\u001B[0m \u001B[1;33meza_test\u001B[0m 6_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m7\u001B[0m \u001B[1;33meza_test\u001B[0m 7_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m7.2k\u001B[0m \u001B[1;33meza_test\u001B[0m 7_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m7.3M\u001B[0m \u001B[1;33meza_test\u001B[0m 7_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m8\u001B[0m \u001B[1;33meza_test\u001B[0m 8_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m8.2k\u001B[0m \u001B[1;33meza_test\u001B[0m 8_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m8.4M\u001B[0m \u001B[1;33meza_test\u001B[0m 8_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m9\u001B[0m \u001B[1;33meza_test\u001B[0m 9_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m9.2k\u001B[0m \u001B[1;33meza_test\u001B[0m 9_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m9.4M\u001B[0m \u001B[1;33meza_test\u001B[0m 9_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m10\u001B[0m \u001B[1;33meza_test\u001B[0m 10_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m10k\u001B[0m \u001B[1;33meza_test\u001B[0m 10_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m10M\u001B[0m \u001B[1;33meza_test\u001B[0m 10_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m11\u001B[0m \u001B[1;33meza_test\u001B[0m 11_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m11k\u001B[0m \u001B[1;33meza_test\u001B[0m 11_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m12M\u001B[0m \u001B[1;33meza_test\u001B[0m 11_MiB +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m12\u001B[0m \u001B[1;33meza_test\u001B[0m 12_bytes +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[1;32m12k\u001B[0m \u001B[1;33meza_test\u001B[0m 12_Kib +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[33m13M\u001B[0m \u001B[1;33meza_test\u001B[0m 12_MiB +""" +stderr = "" diff --git a/tests/cmd/basic_all.stderr b/tests/cmd/basic_all.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/basic_all.stdout b/tests/cmd/basic_all.stdout deleted file mode 100644 index 419606b51..000000000 --- a/tests/cmd/basic_all.stdout +++ /dev/null @@ -1,22 +0,0 @@ -a -b -c -d -dir-symlink -> vagrant/debug -e -exa -f -g -h -i -image.jpg.img.c.rs.log.png -index.svg -j -k -l -m -n -o -p -q -vagrant diff --git a/tests/cmd/basic_all.toml b/tests/cmd/basic_all.toml deleted file mode 100644 index fb5ca312d..000000000 --- a/tests/cmd/basic_all.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest" diff --git a/tests/cmd/classify-hyperlink-width-50_nix_local.stderr b/tests/cmd/classify-hyperlink-width-50_nix_local.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/classify-hyperlink-width-50_nix_local.stdout b/tests/cmd/classify-hyperlink-width-50_nix_local.stdout deleted file mode 100644 index 1a79ff3fa..000000000 --- a/tests/cmd/classify-hyperlink-width-50_nix_local.stdout +++ /dev/null @@ -1,5 +0,0 @@ -]8;;file:///build/source/tests/itest/a/a]8;;/ ]8;;file:///build/source/tests/itest/exa/exa]8;;// ]8;;file:///build/source/tests/itest/image.jpg.img.c.rs.log.png/image.jpg.img.c.rs.log.png]8;;/ ]8;;file:///build/source/tests/itest/m/m]8;;/ ]8;;file:///build/source/tests/itest/vagrant/vagrant]8;;// -]8;;file:///build/source/tests/itest/b/b]8;;/ ]8;;file:///build/source/tests/itest/f/f]8;;/ ]8;;file:///build/source/tests/itest/index.svg/index.svg]8;;/ ]8;;file:///build/source/tests/itest/n/n]8;;/ -]8;;file:///build/source/tests/itest/c/c]8;;/ ]8;;file:///build/source/tests/itest/g/g]8;;/ ]8;;file:///build/source/tests/itest/j/j]8;;/ ]8;;file:///build/source/tests/itest/o/o]8;;/ -]8;;file:///build/source/tests/itest/d/d]8;;/ ]8;;file:///build/source/tests/itest/h/h]8;;/ ]8;;file:///build/source/tests/itest/k/k]8;;/ ]8;;file:///build/source/tests/itest/p/p]8;;/ -]8;;file:///build/source/tests/itest/e/e]8;;/ ]8;;file:///build/source/tests/itest/i/i]8;;/ ]8;;file:///build/source/tests/itest/l/l]8;;/ ]8;;file:///build/source/tests/itest/q/q]8;;/ diff --git a/tests/cmd/follow-symlinks_unix.stderr b/tests/cmd/follow-symlinks_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/follow-symlinks_unix.stdout b/tests/cmd/follow-symlinks_unix.stdout deleted file mode 100644 index 3ef2aeeb2..000000000 --- a/tests/cmd/follow-symlinks_unix.stdout +++ /dev/null @@ -1,40 +0,0 @@ -tests/itest -├── a -├── b -├── c -├── d -├── dir-symlink -> vagrant/debug -│ ├── a -│ ├── symlink -> a -│ └── symlink-broken -> ./b -├── e -├── exa -│ ├── file.c -> djihisudjuhfius -│ └── sssssssssssssssssssssssssggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss -│ └── Makefile -├── f -├── g -├── h -├── i -├── image.jpg.img.c.rs.log.png -├── index.svg -├── j -├── k -├── l -├── m -├── n -├── o -├── p -├── q -└── vagrant - ├── debug - │ ├── a - │ ├── symlink -> a - │ └── symlink-broken -> ./b - ├── dev - │ └── main.bf - └── log - ├── file.png - └── run - ├── run.log.text - └── sps.log.text diff --git a/tests/cmd/follow-symlinks_unix.toml b/tests/cmd/follow-symlinks_unix.toml deleted file mode 100644 index b3520c191..000000000 --- a/tests/cmd/follow-symlinks_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --follow-symlinks -T" diff --git a/tests/cmd/icons_all.stderr b/tests/cmd/icons_all.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/icons_all.stdout b/tests/cmd/icons_all.stdout deleted file mode 100644 index 1554eafe1..000000000 --- a/tests/cmd/icons_all.stdout +++ /dev/null @@ -1,22 +0,0 @@ -󰡯 a -󰡯 b -󰡯 c -󰡯 d - dir-symlink -> vagrant/debug -󰡯 e - exa -󰡯 f -󰡯 g -󰡯 h -󰡯 i - image.jpg.img.c.rs.log.png -󰕙 index.svg -󰡯 j -󰡯 k -󰡯 l -󰡯 m -󰡯 n -󰡯 o -󰡯 p -󰡯 q - vagrant diff --git a/tests/cmd/icons_all.toml b/tests/cmd/icons_all.toml deleted file mode 100644 index ad19254e9..000000000 --- a/tests/cmd/icons_all.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --icons=always" diff --git a/tests/cmd/linux/date_current_year/long.toml b/tests/cmd/linux/date_current_year/long.toml new file mode 100644 index 000000000..4cfdcb293 --- /dev/null +++ b/tests/cmd/linux/date_current_year/long.toml @@ -0,0 +1,7 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 eza_test 15 Jun 23:14 peach +.rw-r--r-- 0 eza_test 3 Mar 00:00 pear +.rw-r--r-- 0 eza_test 22 Dec 10:38 plum +""" +stderr = "" diff --git a/tests/cmd/linux/date_current_year/long_env-UTC+2.toml b/tests/cmd/linux/date_current_year/long_env-UTC+2.toml new file mode 100644 index 000000000..3653fcdbd --- /dev/null +++ b/tests/cmd/linux/date_current_year/long_env-UTC+2.toml @@ -0,0 +1,10 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 eza_test 16 Jun 01:14 peach +.rw-r--r-- 0 eza_test 3 Mar 02:00 pear +.rw-r--r-- 0 eza_test 22 Dec 12:38 plum +""" +stderr = "" + +[env.add] +TZ = "Europe/Paris" diff --git a/tests/cmd/linux/date_locale/long_env-fr.toml b/tests/cmd/linux/date_locale/long_env-fr.toml new file mode 100644 index 000000000..36c174f79 --- /dev/null +++ b/tests/cmd/linux/date_locale/long_env-fr.toml @@ -0,0 +1,11 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 eza_test 15 juin 2006 peach +.rw-r--r-- 0 eza_test 3 mars 2003 pear +.rw-r--r-- 0 eza_test 22 déc. 2009 plum +""" +stderr = "" + +[env.add] +LC_TIME = "fr_FR.UTF-8" +LANG = "fr_FR.UTF-8" diff --git a/tests/cmd/linux/date_locale/long_env-jp.toml b/tests/cmd/linux/date_locale/long_env-jp.toml new file mode 100644 index 000000000..3d81bd1e0 --- /dev/null +++ b/tests/cmd/linux/date_locale/long_env-jp.toml @@ -0,0 +1,11 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 eza_test 15 6月 2006 peach +.rw-r--r-- 0 eza_test 3 3月 2003 pear +.rw-r--r-- 0 eza_test 22 12月 2009 plum +""" +stderr = "" + +[env.add] +LC_TIME = "ja_JP.UTF-8" +LANG = "ja_JP.UTF-8" diff --git a/tests/cmd/linux/date_locale/long_env.toml b/tests/cmd/linux/date_locale/long_env.toml new file mode 100644 index 000000000..1d62c4359 --- /dev/null +++ b/tests/cmd/linux/date_locale/long_env.toml @@ -0,0 +1,7 @@ +args = ["-l", "."] +stdout = """ +.rw-r--r-- 0 eza_test 15 Jun 2006 peach +.rw-r--r-- 0 eza_test 3 Mar 2003 pear +.rw-r--r-- 0 eza_test 22 Dec 2009 plum +""" +stderr = "" diff --git a/tests/cmd/linux/groups/long.toml b/tests/cmd/linux/groups/long.toml new file mode 100644 index 000000000..c5efe55ca --- /dev/null +++ b/tests/cmd/linux/groups/long.toml @@ -0,0 +1,7 @@ +args = ["-l", "--no-time", "."] +stdout = """ +.rw-r--r-- 0 eza_test eza_group +.rw-r--r-- 0 eza_test eza_group2 +.rw-r--r-- 0 eza_test eza_test +""" +stderr = "" diff --git a/tests/cmd/linux/groups/long_group.toml b/tests/cmd/linux/groups/long_group.toml new file mode 100644 index 000000000..849cbe9ec --- /dev/null +++ b/tests/cmd/linux/groups/long_group.toml @@ -0,0 +1,7 @@ +args = ["-l", "--group", "--no-time", "."] +stdout = """ +.rw-r--r-- 0 eza_test eza_group eza_group +.rw-r--r-- 0 eza_test eza_group2 eza_group2 +.rw-r--r-- 0 eza_test eza_test eza_test +""" +stderr = "" diff --git a/tests/cmd/linux/groups/long_group_smart-group.toml b/tests/cmd/linux/groups/long_group_smart-group.toml new file mode 100644 index 000000000..a22e4c88d --- /dev/null +++ b/tests/cmd/linux/groups/long_group_smart-group.toml @@ -0,0 +1,7 @@ +args = ["-l", "--group", "--smart-group", "--no-time", "."] +stdout = """ +.rw-r--r-- 0 eza_test eza_group eza_group +.rw-r--r-- 0 eza_test eza_group2 eza_group2 +.rw-r--r-- 0 eza_test : eza_test +""" +stderr = "" diff --git a/tests/cmd/linux/groups/long_group_smart-group_color.toml b/tests/cmd/linux/groups/long_group_smart-group_color.toml new file mode 100644 index 000000000..da191d511 --- /dev/null +++ b/tests/cmd/linux/groups/long_group_smart-group_color.toml @@ -0,0 +1,7 @@ +args = ["-l", "--group", "--smart-group", "--color=always", "--no-time", "."] +stdout = """ +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[1;33meza_group\u001B[0m eza_group +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[1;33meza_group2\u001B[0m eza_group2 +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[1;33m:\u001B[0m eza_test +""" +stderr = "" diff --git a/tests/cmd/linux/groups/long_group_smart-group_no-user.toml b/tests/cmd/linux/groups/long_group_smart-group_no-user.toml new file mode 100644 index 000000000..a84221e2f --- /dev/null +++ b/tests/cmd/linux/groups/long_group_smart-group_no-user.toml @@ -0,0 +1,7 @@ +args = ["-l", "--group", "--smart-group", "--no-user", "--no-time", "."] +stdout = """ +.rw-r--r-- 0 eza_group eza_group +.rw-r--r-- 0 eza_group2 eza_group2 +.rw-r--r-- 0 : eza_test +""" +stderr = "" diff --git a/tests/cmd/linux/xattr/extended.toml b/tests/cmd/linux/xattr/extended.toml new file mode 100644 index 000000000..1eb38b599 --- /dev/null +++ b/tests/cmd/linux/xattr/extended.toml @@ -0,0 +1,10 @@ +args = ["-l", "--extended", "--no-time", "."] +stdout = """ +drwxr-xr-x@ - eza_test dir_attributes + └── user.xdg.tags: "foo,bar,baz" +drwxr-xr-x - eza_test dir_no_attributes +.rw-r--r--@ 0 eza_test file_attributes + └── user.xdg.tags: "foo,bar,baz" +.rw-r--r-- 0 eza_test file_no_attributes +""" +stderr = "" diff --git a/tests/cmd/linux/xattr/extended_follow-symlinks.toml b/tests/cmd/linux/xattr/extended_follow-symlinks.toml new file mode 100644 index 000000000..ff682cbff --- /dev/null +++ b/tests/cmd/linux/xattr/extended_follow-symlinks.toml @@ -0,0 +1,10 @@ +args = ["-l", "--extended", "--follow-symlinks", "--no-time", "."] +stdout = """ +drwxr-xr-x@ - eza_test dir_attributes + └── user.xdg.tags: "foo,bar,baz" +drwxr-xr-x - eza_test dir_no_attributes +.rw-r--r--@ 0 eza_test file_attributes + └── user.xdg.tags: "foo,bar,baz" +.rw-r--r-- 0 eza_test file_no_attributes +""" +stderr = "" diff --git a/tests/cmd/long_icons_always.stderr b/tests/cmd/long_icons_always.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/long_icons_always.stdout b/tests/cmd/long_icons_always.stdout deleted file mode 100644 index 1e8455454..000000000 --- a/tests/cmd/long_icons_always.stdout +++ /dev/null @@ -1,21 +0,0 @@ -.rw-r--r-- 0 nixbld 1 Jan 1970  a -.rw-r--r-- 0 nixbld 1 Jan 1970  b -.rw-r--r-- 0 nixbld 1 Jan 1970  c -.rw-r--r-- 0 nixbld 1 Jan 1970  d -.rw-r--r-- 0 nixbld 1 Jan 1970  e -drwxr-xr-x - nixbld 1 Jan 1970  exa -.rw-r--r-- 0 nixbld 1 Jan 1970  f -.rw-r--r-- 0 nixbld 1 Jan 1970  g -.rw-r--r-- 0 nixbld 1 Jan 1970  h -.rw-r--r-- 0 nixbld 1 Jan 1970  i -.rw-r--r-- 0 nixbld 1 Jan 1970  image.jpg.img.c.rs.log.png -.rw-r--r-- 19 nixbld 1 Jan 1970 󰕙 index.svg -.rw-r--r-- 0 nixbld 1 Jan 1970  j -.rw-r--r-- 0 nixbld 1 Jan 1970  k -.rw-r--r-- 0 nixbld 1 Jan 1970  l -.rw-r--r-- 0 nixbld 1 Jan 1970  m -.rw-r--r-- 0 nixbld 1 Jan 1970  n -.rw-r--r-- 0 nixbld 1 Jan 1970  o -.rw-r--r-- 0 nixbld 1 Jan 1970  p -.rw-r--r-- 0 nixbld 1 Jan 1970  q -drwxr-xr-x - nixbld 1 Jan 1970  vagrant diff --git a/tests/cmd/long_icons_always.toml b/tests/cmd/long_icons_always.toml deleted file mode 100644 index a20503f96..000000000 --- a/tests/cmd/long_icons_always.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --long --icons=always" diff --git a/tests/cmd/long_windows.stderr b/tests/cmd/long_windows.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/long_windows.stdout b/tests/cmd/long_windows.stdout deleted file mode 100644 index 23c448004..000000000 --- a/tests/cmd/long_windows.stdout +++ /dev/null @@ -1,22 +0,0 @@ --a--- a --a--- b --a--- c --a--- d -l---- dir-symlink -> vagrant/debug --a--- e -d---- exa --a--- f --a--- g --a--- h --a--- i --a--- image.jpg.img.c.rs.log.png --a--- index.svg --a--- j --a--- k --a--- l --a--- m --a--- n --a--- o --a--- p --a--- q -d---- vagrant diff --git a/tests/cmd/long_windows.toml b/tests/cmd/long_windows.toml deleted file mode 100644 index 8ea21e7a3..000000000 --- a/tests/cmd/long_windows.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --long --no-user --no-time --no-filesize" diff --git a/tests/cmd/sort-ext-group-dirs-first.stderr b/tests/cmd/sort-ext-group-dirs-first.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/sort-ext-group-dirs-first.stdout b/tests/cmd/sort-ext-group-dirs-first.stdout deleted file mode 100644 index 83dec58ca..000000000 --- a/tests/cmd/sort-ext-group-dirs-first.stdout +++ /dev/null @@ -1 +0,0 @@ -01.city 02.apple abc test ab abc.mp3 a.txt \ No newline at end of file diff --git a/tests/cmd/sort-ext-group-dirs-first.toml b/tests/cmd/sort-ext-group-dirs-first.toml deleted file mode 100644 index 2167533db..000000000 --- a/tests/cmd/sort-ext-group-dirs-first.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --sort=extension --group-directories-first" diff --git a/tests/cmd/sort-ext.stderr b/tests/cmd/sort-ext.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/sort-ext.stdout b/tests/cmd/sort-ext.stdout deleted file mode 100644 index 7f5a6aa5d..000000000 --- a/tests/cmd/sort-ext.stdout +++ /dev/null @@ -1 +0,0 @@ -01.city 02.apple ab abc test abc.mp3 a.txt \ No newline at end of file diff --git a/tests/cmd/sort-ext.toml b/tests/cmd/sort-ext.toml deleted file mode 100644 index ad790c1fb..000000000 --- a/tests/cmd/sort-ext.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest --sort=extension" diff --git a/tests/cmd/tree_unix.stderr b/tests/cmd/tree_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/cmd/tree_unix.stdout b/tests/cmd/tree_unix.stdout deleted file mode 100644 index efea725d3..000000000 --- a/tests/cmd/tree_unix.stdout +++ /dev/null @@ -1,37 +0,0 @@ -tests/itest -├── a -├── b -├── c -├── d -├── dir-symlink -> vagrant/debug -├── e -├── exa -│ ├── file.c -> djihisudjuhfius -│ └── sssssssssssssssssssssssssggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss -│ └── Makefile -├── f -├── g -├── h -├── i -├── image.jpg.img.c.rs.log.png -├── index.svg -├── j -├── k -├── l -├── m -├── n -├── o -├── p -├── q -└── vagrant - ├── debug - │ ├── a - │ ├── symlink -> a - │ └── symlink-broken -> ./b - ├── dev - │ └── main.bf - └── log - ├── file.png - └── run - ├── run.log.text - └── sps.log.text diff --git a/tests/cmd/tree_unix.toml b/tests/cmd/tree_unix.toml deleted file mode 100644 index 801a0683f..000000000 --- a/tests/cmd/tree_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/itest -T" diff --git a/tests/cmd/unix/git_repos/git-repos-no-status.toml b/tests/cmd/unix/git_repos/git-repos-no-status.toml new file mode 100644 index 000000000..439d33c8c --- /dev/null +++ b/tests/cmd/unix/git_repos/git-repos-no-status.toml @@ -0,0 +1,7 @@ +args = ["-l", "--git-repos-no-status", "--no-time", "."] +stdout = """ +drwxr-xr-x - eza_test - dir-git-repo1 +drwxr-xr-x - eza_test main dir-git-repo2 +drwxr-xr-x - eza_test add-bépo dir-git-repo3 +""" +stderr = "" diff --git a/tests/cmd/unix/git_repos/git-repos-no-status_header.toml b/tests/cmd/unix/git_repos/git-repos-no-status_header.toml new file mode 100644 index 000000000..c3d6e1638 --- /dev/null +++ b/tests/cmd/unix/git_repos/git-repos-no-status_header.toml @@ -0,0 +1,8 @@ +args = ["-l", "--git-repos-no-status", "--no-time", "--header", "."] +stdout = """ +Permissions Size User Git Repo Name +drwxr-xr-x - eza_test - dir-git-repo1 +drwxr-xr-x - eza_test main dir-git-repo2 +drwxr-xr-x - eza_test add-bépo dir-git-repo3 +""" +stderr = "" diff --git a/tests/cmd/unix/git_repos/git-repos.toml b/tests/cmd/unix/git_repos/git-repos.toml new file mode 100644 index 000000000..233d1d61a --- /dev/null +++ b/tests/cmd/unix/git_repos/git-repos.toml @@ -0,0 +1,7 @@ +args = ["-l", "--git-repos", "--no-time", "."] +stdout = """ +drwxr-xr-x - eza_test | - dir-git-repo1 +drwxr-xr-x - eza_test | main dir-git-repo2 +drwxr-xr-x - eza_test | add-bépo dir-git-repo3 +""" +stderr = "" diff --git a/tests/cmd/unix/git_repos/git-repos_color.toml b/tests/cmd/unix/git_repos/git-repos_color.toml new file mode 100644 index 000000000..78d6d77cb --- /dev/null +++ b/tests/cmd/unix/git_repos/git-repos_color.toml @@ -0,0 +1,7 @@ +args = ["-l", "--git-repos", "--no-time", "--color=always", "."] +stdout = """ +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[32m|\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;34mdir-git-repo1\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[32m|\u001B[0m \u001B[32mmain\u001B[0m \u001B[1;34mdir-git-repo2\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;33meza_test\u001B[0m \u001B[32m|\u001B[0m \u001B[33madd-bépo\u001B[0m \u001B[1;34mdir-git-repo3\u001B[0m +""" +stderr = "" diff --git a/tests/cmd/unix/git_repos/git-repos_header.toml b/tests/cmd/unix/git_repos/git-repos_header.toml new file mode 100644 index 000000000..a97386baf --- /dev/null +++ b/tests/cmd/unix/git_repos/git-repos_header.toml @@ -0,0 +1,8 @@ +args = ["-l", "--git-repos", "--no-time", "--header", "."] +stdout = """ +Permissions Size User Git Repo Name +drwxr-xr-x - eza_test | - dir-git-repo1 +drwxr-xr-x - eza_test | main dir-git-repo2 +drwxr-xr-x - eza_test | add-bépo dir-git-repo3 +""" +stderr = "" diff --git a/tests/cmd/unix/git_status/git-ignore.toml b/tests/cmd/unix/git_status/git-ignore.toml new file mode 100644 index 000000000..8482bf1f7 --- /dev/null +++ b/tests/cmd/unix/git_status/git-ignore.toml @@ -0,0 +1,19 @@ +args = ["--git-ignore", "."] +stdout = """ +dir-empty +dir-ignored-with-file-unmodified +dir-modified +dir-modified-staged +dir-new +dir-new-staged +dir-new-staged-new +file-modified +file-modified-staged +file-modified-staged-modified +file-new +file-new-staged +file-new-staged-modified +symlink-broken -> file-non-existing +symlink-new -> file-modified +""" +stderr = "" diff --git a/tests/cmd/unix/git_status/git-status-header.toml b/tests/cmd/unix/git_status/git-status-header.toml new file mode 100644 index 000000000..25bfb448f --- /dev/null +++ b/tests/cmd/unix/git_status/git-status-header.toml @@ -0,0 +1,22 @@ +args = ["--git", "-l", "--no-time", "--no-user", "--header", "."] +stdout = """ +Permissions Size Git Name +drwxr-xr-x - -- dir-empty +drwxr-xr-x - -I dir-ignored +drwxr-xr-x - -- dir-ignored-with-file-unmodified +drwxr-xr-x - -M dir-modified +drwxr-xr-x - M- dir-modified-staged +drwxr-xr-x - -N dir-new +drwxr-xr-x - -- dir-new-staged +drwxr-xr-x - NN dir-new-staged-new +.rw-r--r-- 0 -I file-ignored +.rw-r--r-- 1 -M file-modified +.rw-r--r-- 1 M- file-modified-staged +.rw-r--r-- 2 MM file-modified-staged-modified +.rw-r--r-- 0 -N file-new +.rw-r--r-- 0 N- file-new-staged +.rw-r--r-- 1 NM file-new-staged-modified +lrwxrwxrwx - -N symlink-broken -> file-non-existing +lrwxrwxrwx - -M symlink-new -> file-modified +""" +stderr = "" diff --git a/tests/cmd/unix/git_status/git-status.toml b/tests/cmd/unix/git_status/git-status.toml new file mode 100644 index 000000000..f00624384 --- /dev/null +++ b/tests/cmd/unix/git_status/git-status.toml @@ -0,0 +1,21 @@ +args = ["--git", "-l", "--no-time", "--no-user", "."] +stdout = """ +drwxr-xr-x - -- dir-empty +drwxr-xr-x - -I dir-ignored +drwxr-xr-x - -- dir-ignored-with-file-unmodified +drwxr-xr-x - -M dir-modified +drwxr-xr-x - M- dir-modified-staged +drwxr-xr-x - -N dir-new +drwxr-xr-x - -- dir-new-staged +drwxr-xr-x - NN dir-new-staged-new +.rw-r--r-- 0 -I file-ignored +.rw-r--r-- 1 -M file-modified +.rw-r--r-- 1 M- file-modified-staged +.rw-r--r-- 2 MM file-modified-staged-modified +.rw-r--r-- 0 -N file-new +.rw-r--r-- 0 N- file-new-staged +.rw-r--r-- 1 NM file-new-staged-modified +lrwxrwxrwx - -N symlink-broken -> file-non-existing +lrwxrwxrwx - -M symlink-new -> file-modified +""" +stderr = "" diff --git a/tests/cmd/unix/git_status/git-status_color.toml b/tests/cmd/unix/git_status/git-status_color.toml new file mode 100644 index 000000000..ebc93b4bf --- /dev/null +++ b/tests/cmd/unix/git_status/git-status_color.toml @@ -0,0 +1,21 @@ +args = ["--git", "-l", "--no-time", "--no-user", "--color=always", "."] +stdout = """ +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m--\u001B[0m \u001B[1;34mdir-empty\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m-\u001B[0m\u001B[2mI\u001B[0m \u001B[1;34mdir-ignored\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m--\u001B[0m \u001B[1;34mdir-ignored-with-file-unmodified\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m-\u001B[0m\u001B[34mM\u001B[0m \u001B[1;34mdir-modified\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[34mM\u001B[1;90m-\u001B[0m \u001B[1;34mdir-modified-staged\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m-\u001B[0m\u001B[32mN\u001B[0m \u001B[1;34mdir-new\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m--\u001B[0m \u001B[1;34mdir-new-staged\u001B[0m +\u001B[1;34md\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[33mr\u001B[1;90m-\u001B[0m\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[32mNN\u001B[0m \u001B[1;34mdir-new-staged-new\u001B[0m +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;90m-\u001B[0m\u001B[2mI\u001B[0m file-ignored +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m1\u001B[0m \u001B[1;90m-\u001B[0m\u001B[34mM\u001B[0m file-modified +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m1\u001B[0m \u001B[34mM\u001B[1;90m-\u001B[0m file-modified-staged +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m2\u001B[0m \u001B[34mMM\u001B[0m file-modified-staged-modified +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[1;90m-\u001B[0m\u001B[32mN\u001B[0m file-new +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m0\u001B[0m \u001B[32mN\u001B[1;90m-\u001B[0m file-new-staged +.\u001B[1;33mr\u001B[31mw\u001B[90m-\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m\u001B[33mr\u001B[1;90m--\u001B[0m \u001B[32m1\u001B[0m \u001B[32mN\u001B[34mM\u001B[0m file-new-staged-modified +\u001B[36ml\u001B[1;33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[31mw\u001B[32mx\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m-\u001B[0m\u001B[32mN\u001B[0m \u001B[36msymlink-broken\u001B[0m \u001B[31m->\u001B[0m \u001B[4;31mfile-non-existing\u001B[0m +\u001B[36ml\u001B[1;33mr\u001B[31mw\u001B[32mx\u001B[0m\u001B[33mr\u001B[31mw\u001B[32mx\u001B[33mr\u001B[31mw\u001B[32mx\u001B[0m \u001B[1;90m-\u001B[0m \u001B[1;90m-\u001B[0m\u001B[34mM\u001B[0m \u001B[36msymlink-new\u001B[0m \u001B[1;90m->\u001B[0m file-modified +""" +stderr = "" diff --git a/tests/cmd/unix/weird_filenames/color.toml b/tests/cmd/unix/weird_filenames/color.toml new file mode 100644 index 000000000..393e04dd9 --- /dev/null +++ b/tests/cmd/unix/weird_filenames/color.toml @@ -0,0 +1,23 @@ +args = ["--color=always", "."] +stdout = """ +'ansi: blue' +'ascii: hello' +'backspace: \u001B[31m/u{8}\u001B[0m' +'bell: \u001B[31m/u{7}\u001B[0m' +\u001B[36m'broken-target: [\u001B[31m/n\u001B[36m]-symlink'\u001B[0m \u001B[31m->\u001B[0m \u001B[4;31m'broken-target: [/n]'\u001B[0m +'carriage return: \u001B[31m/r\u001B[0m' +'emoji: [🆒]' +'escape: \u001B[31m/u{1b}\u001B[0m' +'form-feed: \u001B[31m/u{c}\u001B[0m' +'invalid-utf8-1: �' +'invalid-utf8-2: �(' +'invalid-utf8-3: �(' +'invalid-utf8-4: �(�(' +\u001B[1;34m'new-line-dir: [\u001B[0m\u001B[31m/n\u001B[1;34m]'\u001B[0m +'new-line: [\u001B[31m/n\u001B[0m]' +\u001B[36m'new-line: [\u001B[31m/n\u001B[36m]-symlink'\u001B[0m \u001B[1;90m->\u001B[0m 'new-line: [\u001B[31m/n\u001B[0m]' +'tab: \u001B[31m/t\u001B[0m' +'utf-8: pâté' +'vertical tab: \u001B[31m/u{b}\u001B[0m' +""" +stderr = "" diff --git a/tests/cmd/unix/weird_filenames/long.toml b/tests/cmd/unix/weird_filenames/long.toml new file mode 100644 index 000000000..6b42e0dd2 --- /dev/null +++ b/tests/cmd/unix/weird_filenames/long.toml @@ -0,0 +1,23 @@ +args = ["-l", "--no-time", "."] +stdout = """ +.rw-r--r-- 0 eza_test 'ansi: blue' +.rw-r--r-- 0 eza_test 'ascii: hello' +.rw-r--r-- 0 eza_test 'backspace: /u{8}' +.rw-r--r-- 0 eza_test 'bell: /u{7}' +lrwxrwxrwx - eza_test 'broken-target: [/n]-symlink' -> 'broken-target: [/n]' +.rw-r--r-- 0 eza_test 'carriage return: /r' +.rw-r--r-- 0 eza_test 'emoji: [🆒]' +.rw-r--r-- 0 eza_test 'escape: /u{1b}' +.rw-r--r-- 0 eza_test 'form-feed: /u{c}' +.rw-r--r-- 0 eza_test 'invalid-utf8-1: �' +.rw-r--r-- 0 eza_test 'invalid-utf8-2: �(' +.rw-r--r-- 0 eza_test 'invalid-utf8-3: �(' +.rw-r--r-- 0 eza_test 'invalid-utf8-4: �(�(' +drwxr-xr-x - eza_test 'new-line-dir: [/n]' +.rw-r--r-- 0 eza_test 'new-line: [/n]' +lrwxrwxrwx - eza_test 'new-line: [/n]-symlink' -> 'new-line: [/n]' +.rw-r--r-- 0 eza_test 'tab: /t' +.rw-r--r-- 0 eza_test 'utf-8: pâté' +.rw-r--r-- 0 eza_test 'vertical tab: /u{b}' +""" +stderr = "" diff --git a/tests/cmd/unix/weird_filenames/no-flag.toml b/tests/cmd/unix/weird_filenames/no-flag.toml new file mode 100644 index 000000000..fdb71bdb9 --- /dev/null +++ b/tests/cmd/unix/weird_filenames/no-flag.toml @@ -0,0 +1,23 @@ +args = ["."] +stdout = """ +'ansi: blue' +'ascii: hello' +'backspace: /u{8}' +'bell: /u{7}' +'broken-target: [/n]-symlink' -> 'broken-target: [/n]' +'carriage return: /r' +'emoji: [🆒]' +'escape: /u{1b}' +'form-feed: /u{c}' +'invalid-utf8-1: �' +'invalid-utf8-2: �(' +'invalid-utf8-3: �(' +'invalid-utf8-4: �(�(' +'new-line-dir: [/n]' +'new-line: [/n]' +'new-line: [/n]-symlink' -> 'new-line: [/n]' +'tab: /t' +'utf-8: pâté' +'vertical tab: /u{b}' +""" +stderr = "" diff --git a/tests/gen/inexistant_file_unix.stderr b/tests/gen/inexistant_file_unix.stderr deleted file mode 100644 index e5536d89e..000000000 --- a/tests/gen/inexistant_file_unix.stderr +++ /dev/null @@ -1 +0,0 @@ -"nonexistentdir": No such file or directory (os error 2) diff --git a/tests/gen/inexistant_file_unix.stdout b/tests/gen/inexistant_file_unix.stdout deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/inexistant_file_unix.toml b/tests/gen/inexistant_file_unix.toml deleted file mode 100644 index 3ab93c176..000000000 --- a/tests/gen/inexistant_file_unix.toml +++ /dev/null @@ -1,3 +0,0 @@ -bin.name = "eza" -args = "nonexistentdir" -status.code = 2 diff --git a/tests/gen/long_all_nix.stderr b/tests/gen/long_all_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_all_nix.stdout b/tests/gen/long_all_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_all_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_all_nix.toml b/tests/gen/long_all_nix.toml deleted file mode 100644 index c56c1e8e9..000000000 --- a/tests/gen/long_all_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --all" diff --git a/tests/gen/long_binary_bytes_unix.stderr b/tests/gen/long_binary_bytes_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_binary_bytes_unix.stdout b/tests/gen/long_binary_bytes_unix.stdout deleted file mode 100644 index 69eeafb35..000000000 --- a/tests/gen/long_binary_bytes_unix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -- dirs-ext -- git -- grid -- group -- icons -- perms -- size -- specials -- symlinks -- time diff --git a/tests/gen/long_binary_bytes_unix.toml b/tests/gen/long_binary_bytes_unix.toml deleted file mode 100644 index 2fd7a75b8..000000000 --- a/tests/gen/long_binary_bytes_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --no-user --no-time --no-permissions --binary" diff --git a/tests/gen/long_blocksize_nix.stderr b/tests/gen/long_blocksize_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_blocksize_nix.stdout b/tests/gen/long_blocksize_nix.stdout deleted file mode 100644 index 3c15d7704..000000000 --- a/tests/gen/long_blocksize_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - - nixbld 1 Jan 1970 git -drwxr-xr-x - - nixbld 1 Jan 1970 grid -drwxr-xr-x - - nixbld 1 Jan 1970 group -drwxr-xr-x - - nixbld 1 Jan 1970 icons -drwxr-xr-x - - nixbld 1 Jan 1970 perms -drwxr-xr-x - - nixbld 1 Jan 1970 size -drwxr-xr-x - - nixbld 1 Jan 1970 specials -drwxr-xr-x - - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_blocksize_nix.toml b/tests/gen/long_blocksize_nix.toml deleted file mode 100644 index e8ab6b0e4..000000000 --- a/tests/gen/long_blocksize_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --blocksize" diff --git a/tests/gen/long_extended_nix.stderr b/tests/gen/long_extended_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_extended_nix.stdout b/tests/gen/long_extended_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_extended_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_extended_nix.toml b/tests/gen/long_extended_nix.toml deleted file mode 100644 index d1449347f..000000000 --- a/tests/gen/long_extended_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --extended" diff --git a/tests/gen/long_file_size_unix.stderr b/tests/gen/long_file_size_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_file_size_unix.stdout b/tests/gen/long_file_size_unix.stdout deleted file mode 100644 index 69eeafb35..000000000 --- a/tests/gen/long_file_size_unix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -- dirs-ext -- git -- grid -- group -- icons -- perms -- size -- specials -- symlinks -- time diff --git a/tests/gen/long_file_size_unix.toml b/tests/gen/long_file_size_unix.toml deleted file mode 100644 index c72889b26..000000000 --- a/tests/gen/long_file_size_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --no-user --no-time --no-permissions" diff --git a/tests/gen/long_git_nix.stderr b/tests/gen/long_git_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_git_nix.stdout b/tests/gen/long_git_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_git_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_git_nix.toml b/tests/gen/long_git_nix.toml deleted file mode 100644 index e8133151f..000000000 --- a/tests/gen/long_git_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --git" diff --git a/tests/gen/long_git_repos_nix.stderr b/tests/gen/long_git_repos_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_git_repos_nix.stdout b/tests/gen/long_git_repos_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_git_repos_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_git_repos_nix.toml b/tests/gen/long_git_repos_nix.toml deleted file mode 100644 index f52c7f659..000000000 --- a/tests/gen/long_git_repos_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --git-repos" diff --git a/tests/gen/long_git_repos_no_status_nix.stderr b/tests/gen/long_git_repos_no_status_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_git_repos_no_status_nix.stdout b/tests/gen/long_git_repos_no_status_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_git_repos_no_status_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_git_repos_no_status_nix.toml b/tests/gen/long_git_repos_no_status_nix.toml deleted file mode 100644 index ba3e710a4..000000000 --- a/tests/gen/long_git_repos_no_status_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --git-repos-no-status" diff --git a/tests/gen/long_grid_nix.stderr b/tests/gen/long_grid_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_grid_nix.stdout b/tests/gen/long_grid_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_grid_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_grid_nix.toml b/tests/gen/long_grid_nix.toml deleted file mode 100644 index d671e7b12..000000000 --- a/tests/gen/long_grid_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --grid" diff --git a/tests/gen/long_header_nix.stderr b/tests/gen/long_header_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_header_nix.stdout b/tests/gen/long_header_nix.stdout deleted file mode 100644 index 77349ddad..000000000 --- a/tests/gen/long_header_nix.stdout +++ /dev/null @@ -1,11 +0,0 @@ -Permissions Size User Date Modified Name -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_header_nix.toml b/tests/gen/long_header_nix.toml deleted file mode 100644 index 2de7e9a05..000000000 --- a/tests/gen/long_header_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --header" diff --git a/tests/gen/long_header_unix.stderr b/tests/gen/long_header_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_header_unix.stdout b/tests/gen/long_header_unix.stdout deleted file mode 100644 index bb9600b20..000000000 --- a/tests/gen/long_header_unix.stdout +++ /dev/null @@ -1,11 +0,0 @@ -Size Name - - dirs-ext - - git - - grid - - group - - icons - - perms - - size - - specials - - symlinks - - time diff --git a/tests/gen/long_header_unix.toml b/tests/gen/long_header_unix.toml deleted file mode 100644 index 9694f47e0..000000000 --- a/tests/gen/long_header_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --no-user --no-time --header --no-permissions" diff --git a/tests/gen/long_icons_nix.stderr b/tests/gen/long_icons_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_icons_nix.stdout b/tests/gen/long_icons_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_icons_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_icons_nix.toml b/tests/gen/long_icons_nix.toml deleted file mode 100644 index dfe3e4ba3..000000000 --- a/tests/gen/long_icons_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --icons=auto" diff --git a/tests/gen/long_links_recurse_unix.stderr b/tests/gen/long_links_recurse_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_links_recurse_unix.stdout b/tests/gen/long_links_recurse_unix.stdout deleted file mode 100644 index 444ef386b..000000000 --- a/tests/gen/long_links_recurse_unix.stdout +++ /dev/null @@ -1,4213 +0,0 @@ - 6 dirs-ext - 12 git -1002 grid - 2 group - 2 icons - 2 perms - 2 size - 2 specials - 3 symlinks - 2 time - -tests/test_dir/dirs-ext: -2 01.city -2 02.apple -1 a.txt -1 ab -2 abc -1 abc.mp3 -2 test - -tests/test_dir/dirs-ext/01.city: - -tests/test_dir/dirs-ext/02.apple: - -tests/test_dir/dirs-ext/abc: - -tests/test_dir/dirs-ext/test: - -tests/test_dir/git: -3 001 -3 002 -3 003 -3 004 -3 005 -3 006 -3 007 -3 008 -3 009 -3 010 - -tests/test_dir/git/001: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/002: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/003: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/004: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/005: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/006: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/007: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/008: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/009: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/git/010: -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 - -tests/test_dir/grid: -2 0001 -2 0002 -2 0003 -2 0004 -2 0005 -2 0006 -2 0007 -2 0008 -2 0009 -2 0010 -2 0011 -2 0012 -2 0013 -2 0014 -2 0015 -2 0016 -2 0017 -2 0018 -2 0019 -2 0020 -2 0021 -2 0022 -2 0023 -2 0024 -2 0025 -2 0026 -2 0027 -2 0028 -2 0029 -2 0030 -2 0031 -2 0032 -2 0033 -2 0034 -2 0035 -2 0036 -2 0037 -2 0038 -2 0039 -2 0040 -2 0041 -2 0042 -2 0043 -2 0044 -2 0045 -2 0046 -2 0047 -2 0048 -2 0049 -2 0050 -2 0051 -2 0052 -2 0053 -2 0054 -2 0055 -2 0056 -2 0057 -2 0058 -2 0059 -2 0060 -2 0061 -2 0062 -2 0063 -2 0064 -2 0065 -2 0066 -2 0067 -2 0068 -2 0069 -2 0070 -2 0071 -2 0072 -2 0073 -2 0074 -2 0075 -2 0076 -2 0077 -2 0078 -2 0079 -2 0080 -2 0081 -2 0082 -2 0083 -2 0084 -2 0085 -2 0086 -2 0087 -2 0088 -2 0089 -2 0090 -2 0091 -2 0092 -2 0093 -2 0094 -2 0095 -2 0096 -2 0097 -2 0098 -2 0099 -2 0100 -2 0101 -2 0102 -2 0103 -2 0104 -2 0105 -2 0106 -2 0107 -2 0108 -2 0109 -2 0110 -2 0111 -2 0112 -2 0113 -2 0114 -2 0115 -2 0116 -2 0117 -2 0118 -2 0119 -2 0120 -2 0121 -2 0122 -2 0123 -2 0124 -2 0125 -2 0126 -2 0127 -2 0128 -2 0129 -2 0130 -2 0131 -2 0132 -2 0133 -2 0134 -2 0135 -2 0136 -2 0137 -2 0138 -2 0139 -2 0140 -2 0141 -2 0142 -2 0143 -2 0144 -2 0145 -2 0146 -2 0147 -2 0148 -2 0149 -2 0150 -2 0151 -2 0152 -2 0153 -2 0154 -2 0155 -2 0156 -2 0157 -2 0158 -2 0159 -2 0160 -2 0161 -2 0162 -2 0163 -2 0164 -2 0165 -2 0166 -2 0167 -2 0168 -2 0169 -2 0170 -2 0171 -2 0172 -2 0173 -2 0174 -2 0175 -2 0176 -2 0177 -2 0178 -2 0179 -2 0180 -2 0181 -2 0182 -2 0183 -2 0184 -2 0185 -2 0186 -2 0187 -2 0188 -2 0189 -2 0190 -2 0191 -2 0192 -2 0193 -2 0194 -2 0195 -2 0196 -2 0197 -2 0198 -2 0199 -2 0200 -2 0201 -2 0202 -2 0203 -2 0204 -2 0205 -2 0206 -2 0207 -2 0208 -2 0209 -2 0210 -2 0211 -2 0212 -2 0213 -2 0214 -2 0215 -2 0216 -2 0217 -2 0218 -2 0219 -2 0220 -2 0221 -2 0222 -2 0223 -2 0224 -2 0225 -2 0226 -2 0227 -2 0228 -2 0229 -2 0230 -2 0231 -2 0232 -2 0233 -2 0234 -2 0235 -2 0236 -2 0237 -2 0238 -2 0239 -2 0240 -2 0241 -2 0242 -2 0243 -2 0244 -2 0245 -2 0246 -2 0247 -2 0248 -2 0249 -2 0250 -2 0251 -2 0252 -2 0253 -2 0254 -2 0255 -2 0256 -2 0257 -2 0258 -2 0259 -2 0260 -2 0261 -2 0262 -2 0263 -2 0264 -2 0265 -2 0266 -2 0267 -2 0268 -2 0269 -2 0270 -2 0271 -2 0272 -2 0273 -2 0274 -2 0275 -2 0276 -2 0277 -2 0278 -2 0279 -2 0280 -2 0281 -2 0282 -2 0283 -2 0284 -2 0285 -2 0286 -2 0287 -2 0288 -2 0289 -2 0290 -2 0291 -2 0292 -2 0293 -2 0294 -2 0295 -2 0296 -2 0297 -2 0298 -2 0299 -2 0300 -2 0301 -2 0302 -2 0303 -2 0304 -2 0305 -2 0306 -2 0307 -2 0308 -2 0309 -2 0310 -2 0311 -2 0312 -2 0313 -2 0314 -2 0315 -2 0316 -2 0317 -2 0318 -2 0319 -2 0320 -2 0321 -2 0322 -2 0323 -2 0324 -2 0325 -2 0326 -2 0327 -2 0328 -2 0329 -2 0330 -2 0331 -2 0332 -2 0333 -2 0334 -2 0335 -2 0336 -2 0337 -2 0338 -2 0339 -2 0340 -2 0341 -2 0342 -2 0343 -2 0344 -2 0345 -2 0346 -2 0347 -2 0348 -2 0349 -2 0350 -2 0351 -2 0352 -2 0353 -2 0354 -2 0355 -2 0356 -2 0357 -2 0358 -2 0359 -2 0360 -2 0361 -2 0362 -2 0363 -2 0364 -2 0365 -2 0366 -2 0367 -2 0368 -2 0369 -2 0370 -2 0371 -2 0372 -2 0373 -2 0374 -2 0375 -2 0376 -2 0377 -2 0378 -2 0379 -2 0380 -2 0381 -2 0382 -2 0383 -2 0384 -2 0385 -2 0386 -2 0387 -2 0388 -2 0389 -2 0390 -2 0391 -2 0392 -2 0393 -2 0394 -2 0395 -2 0396 -2 0397 -2 0398 -2 0399 -2 0400 -2 0401 -2 0402 -2 0403 -2 0404 -2 0405 -2 0406 -2 0407 -2 0408 -2 0409 -2 0410 -2 0411 -2 0412 -2 0413 -2 0414 -2 0415 -2 0416 -2 0417 -2 0418 -2 0419 -2 0420 -2 0421 -2 0422 -2 0423 -2 0424 -2 0425 -2 0426 -2 0427 -2 0428 -2 0429 -2 0430 -2 0431 -2 0432 -2 0433 -2 0434 -2 0435 -2 0436 -2 0437 -2 0438 -2 0439 -2 0440 -2 0441 -2 0442 -2 0443 -2 0444 -2 0445 -2 0446 -2 0447 -2 0448 -2 0449 -2 0450 -2 0451 -2 0452 -2 0453 -2 0454 -2 0455 -2 0456 -2 0457 -2 0458 -2 0459 -2 0460 -2 0461 -2 0462 -2 0463 -2 0464 -2 0465 -2 0466 -2 0467 -2 0468 -2 0469 -2 0470 -2 0471 -2 0472 -2 0473 -2 0474 -2 0475 -2 0476 -2 0477 -2 0478 -2 0479 -2 0480 -2 0481 -2 0482 -2 0483 -2 0484 -2 0485 -2 0486 -2 0487 -2 0488 -2 0489 -2 0490 -2 0491 -2 0492 -2 0493 -2 0494 -2 0495 -2 0496 -2 0497 -2 0498 -2 0499 -2 0500 -2 0501 -2 0502 -2 0503 -2 0504 -2 0505 -2 0506 -2 0507 -2 0508 -2 0509 -2 0510 -2 0511 -2 0512 -2 0513 -2 0514 -2 0515 -2 0516 -2 0517 -2 0518 -2 0519 -2 0520 -2 0521 -2 0522 -2 0523 -2 0524 -2 0525 -2 0526 -2 0527 -2 0528 -2 0529 -2 0530 -2 0531 -2 0532 -2 0533 -2 0534 -2 0535 -2 0536 -2 0537 -2 0538 -2 0539 -2 0540 -2 0541 -2 0542 -2 0543 -2 0544 -2 0545 -2 0546 -2 0547 -2 0548 -2 0549 -2 0550 -2 0551 -2 0552 -2 0553 -2 0554 -2 0555 -2 0556 -2 0557 -2 0558 -2 0559 -2 0560 -2 0561 -2 0562 -2 0563 -2 0564 -2 0565 -2 0566 -2 0567 -2 0568 -2 0569 -2 0570 -2 0571 -2 0572 -2 0573 -2 0574 -2 0575 -2 0576 -2 0577 -2 0578 -2 0579 -2 0580 -2 0581 -2 0582 -2 0583 -2 0584 -2 0585 -2 0586 -2 0587 -2 0588 -2 0589 -2 0590 -2 0591 -2 0592 -2 0593 -2 0594 -2 0595 -2 0596 -2 0597 -2 0598 -2 0599 -2 0600 -2 0601 -2 0602 -2 0603 -2 0604 -2 0605 -2 0606 -2 0607 -2 0608 -2 0609 -2 0610 -2 0611 -2 0612 -2 0613 -2 0614 -2 0615 -2 0616 -2 0617 -2 0618 -2 0619 -2 0620 -2 0621 -2 0622 -2 0623 -2 0624 -2 0625 -2 0626 -2 0627 -2 0628 -2 0629 -2 0630 -2 0631 -2 0632 -2 0633 -2 0634 -2 0635 -2 0636 -2 0637 -2 0638 -2 0639 -2 0640 -2 0641 -2 0642 -2 0643 -2 0644 -2 0645 -2 0646 -2 0647 -2 0648 -2 0649 -2 0650 -2 0651 -2 0652 -2 0653 -2 0654 -2 0655 -2 0656 -2 0657 -2 0658 -2 0659 -2 0660 -2 0661 -2 0662 -2 0663 -2 0664 -2 0665 -2 0666 -2 0667 -2 0668 -2 0669 -2 0670 -2 0671 -2 0672 -2 0673 -2 0674 -2 0675 -2 0676 -2 0677 -2 0678 -2 0679 -2 0680 -2 0681 -2 0682 -2 0683 -2 0684 -2 0685 -2 0686 -2 0687 -2 0688 -2 0689 -2 0690 -2 0691 -2 0692 -2 0693 -2 0694 -2 0695 -2 0696 -2 0697 -2 0698 -2 0699 -2 0700 -2 0701 -2 0702 -2 0703 -2 0704 -2 0705 -2 0706 -2 0707 -2 0708 -2 0709 -2 0710 -2 0711 -2 0712 -2 0713 -2 0714 -2 0715 -2 0716 -2 0717 -2 0718 -2 0719 -2 0720 -2 0721 -2 0722 -2 0723 -2 0724 -2 0725 -2 0726 -2 0727 -2 0728 -2 0729 -2 0730 -2 0731 -2 0732 -2 0733 -2 0734 -2 0735 -2 0736 -2 0737 -2 0738 -2 0739 -2 0740 -2 0741 -2 0742 -2 0743 -2 0744 -2 0745 -2 0746 -2 0747 -2 0748 -2 0749 -2 0750 -2 0751 -2 0752 -2 0753 -2 0754 -2 0755 -2 0756 -2 0757 -2 0758 -2 0759 -2 0760 -2 0761 -2 0762 -2 0763 -2 0764 -2 0765 -2 0766 -2 0767 -2 0768 -2 0769 -2 0770 -2 0771 -2 0772 -2 0773 -2 0774 -2 0775 -2 0776 -2 0777 -2 0778 -2 0779 -2 0780 -2 0781 -2 0782 -2 0783 -2 0784 -2 0785 -2 0786 -2 0787 -2 0788 -2 0789 -2 0790 -2 0791 -2 0792 -2 0793 -2 0794 -2 0795 -2 0796 -2 0797 -2 0798 -2 0799 -2 0800 -2 0801 -2 0802 -2 0803 -2 0804 -2 0805 -2 0806 -2 0807 -2 0808 -2 0809 -2 0810 -2 0811 -2 0812 -2 0813 -2 0814 -2 0815 -2 0816 -2 0817 -2 0818 -2 0819 -2 0820 -2 0821 -2 0822 -2 0823 -2 0824 -2 0825 -2 0826 -2 0827 -2 0828 -2 0829 -2 0830 -2 0831 -2 0832 -2 0833 -2 0834 -2 0835 -2 0836 -2 0837 -2 0838 -2 0839 -2 0840 -2 0841 -2 0842 -2 0843 -2 0844 -2 0845 -2 0846 -2 0847 -2 0848 -2 0849 -2 0850 -2 0851 -2 0852 -2 0853 -2 0854 -2 0855 -2 0856 -2 0857 -2 0858 -2 0859 -2 0860 -2 0861 -2 0862 -2 0863 -2 0864 -2 0865 -2 0866 -2 0867 -2 0868 -2 0869 -2 0870 -2 0871 -2 0872 -2 0873 -2 0874 -2 0875 -2 0876 -2 0877 -2 0878 -2 0879 -2 0880 -2 0881 -2 0882 -2 0883 -2 0884 -2 0885 -2 0886 -2 0887 -2 0888 -2 0889 -2 0890 -2 0891 -2 0892 -2 0893 -2 0894 -2 0895 -2 0896 -2 0897 -2 0898 -2 0899 -2 0900 -2 0901 -2 0902 -2 0903 -2 0904 -2 0905 -2 0906 -2 0907 -2 0908 -2 0909 -2 0910 -2 0911 -2 0912 -2 0913 -2 0914 -2 0915 -2 0916 -2 0917 -2 0918 -2 0919 -2 0920 -2 0921 -2 0922 -2 0923 -2 0924 -2 0925 -2 0926 -2 0927 -2 0928 -2 0929 -2 0930 -2 0931 -2 0932 -2 0933 -2 0934 -2 0935 -2 0936 -2 0937 -2 0938 -2 0939 -2 0940 -2 0941 -2 0942 -2 0943 -2 0944 -2 0945 -2 0946 -2 0947 -2 0948 -2 0949 -2 0950 -2 0951 -2 0952 -2 0953 -2 0954 -2 0955 -2 0956 -2 0957 -2 0958 -2 0959 -2 0960 -2 0961 -2 0962 -2 0963 -2 0964 -2 0965 -2 0966 -2 0967 -2 0968 -2 0969 -2 0970 -2 0971 -2 0972 -2 0973 -2 0974 -2 0975 -2 0976 -2 0977 -2 0978 -2 0979 -2 0980 -2 0981 -2 0982 -2 0983 -2 0984 -2 0985 -2 0986 -2 0987 -2 0988 -2 0989 -2 0990 -2 0991 -2 0992 -2 0993 -2 0994 -2 0995 -2 0996 -2 0997 -2 0998 -2 0999 -2 1000 -1 file_000 -1 file_001 -1 file_002 -1 file_003 -1 file_004 -1 file_005 -1 file_006 -1 file_007 -1 file_008 -1 file_009 -1 file_010 -1 file_011 -1 file_012 -1 file_013 -1 file_014 -1 file_015 -1 file_016 -1 file_017 -1 file_018 -1 file_019 -1 file_020 -1 file_021 -1 file_022 -1 file_023 -1 file_024 -1 file_025 -1 file_026 -1 file_027 -1 file_028 -1 file_029 -1 file_030 -1 file_031 -1 file_032 -1 file_033 -1 file_034 -1 file_035 -1 file_036 -1 file_037 -1 file_038 -1 file_039 -1 file_040 -1 file_041 -1 file_042 -1 file_043 -1 file_044 -1 file_045 -1 file_046 -1 file_047 -1 file_048 -1 file_049 -1 file_050 -1 file_051 -1 file_052 -1 file_053 -1 file_054 -1 file_055 -1 file_056 -1 file_057 -1 file_058 -1 file_059 -1 file_060 -1 file_061 -1 file_062 -1 file_063 -1 file_064 -1 file_065 -1 file_066 -1 file_067 -1 file_068 -1 file_069 -1 file_070 -1 file_071 -1 file_072 -1 file_073 -1 file_074 -1 file_075 -1 file_076 -1 file_077 -1 file_078 -1 file_079 -1 file_080 -1 file_081 -1 file_082 -1 file_083 -1 file_084 -1 file_085 -1 file_086 -1 file_087 -1 file_088 -1 file_089 -1 file_090 -1 file_091 -1 file_092 -1 file_093 -1 file_094 -1 file_095 -1 file_096 -1 file_097 -1 file_098 -1 file_099 -1 file_100 -1 file_101 -1 file_102 -1 file_103 -1 file_104 -1 file_105 -1 file_106 -1 file_107 -1 file_108 -1 file_109 -1 file_110 -1 file_111 -1 file_112 -1 file_113 -1 file_114 -1 file_115 -1 file_116 -1 file_117 -1 file_118 -1 file_119 -1 file_120 -1 file_121 -1 file_122 -1 file_123 -1 file_124 -1 file_125 -1 file_126 -1 file_127 -1 file_128 -1 file_129 -1 file_130 -1 file_131 -1 file_132 -1 file_133 -1 file_134 -1 file_135 -1 file_136 -1 file_137 -1 file_138 -1 file_139 -1 file_140 -1 file_141 -1 file_142 -1 file_143 -1 file_144 -1 file_145 -1 file_146 -1 file_147 -1 file_148 -1 file_149 -1 file_150 -1 file_151 -1 file_152 -1 file_153 -1 file_154 -1 file_155 -1 file_156 -1 file_157 -1 file_158 -1 file_159 -1 file_160 -1 file_161 -1 file_162 -1 file_163 -1 file_164 -1 file_165 -1 file_166 -1 file_167 -1 file_168 -1 file_169 -1 file_170 -1 file_171 -1 file_172 -1 file_173 -1 file_174 -1 file_175 -1 file_176 -1 file_177 -1 file_178 -1 file_179 -1 file_180 -1 file_181 -1 file_182 -1 file_183 -1 file_184 -1 file_185 -1 file_186 -1 file_187 -1 file_188 -1 file_189 -1 file_190 -1 file_191 -1 file_192 -1 file_193 -1 file_194 -1 file_195 -1 file_196 -1 file_197 -1 file_198 -1 file_199 -1 file_200 -1 file_201 -1 file_202 -1 file_203 -1 file_204 -1 file_205 -1 file_206 -1 file_207 -1 file_208 -1 file_209 -1 file_210 -1 file_211 -1 file_212 -1 file_213 -1 file_214 -1 file_215 -1 file_216 -1 file_217 -1 file_218 -1 file_219 -1 file_220 -1 file_221 -1 file_222 -1 file_223 -1 file_224 -1 file_225 -1 file_226 -1 file_227 -1 file_228 -1 file_229 -1 file_230 -1 file_231 -1 file_232 -1 file_233 -1 file_234 -1 file_235 -1 file_236 -1 file_237 -1 file_238 -1 file_239 -1 file_240 -1 file_241 -1 file_242 -1 file_243 -1 file_244 -1 file_245 -1 file_246 -1 file_247 -1 file_248 -1 file_249 -1 file_250 -1 file_251 -1 file_252 -1 file_253 -1 file_254 -1 file_255 -1 file_256 -1 file_257 -1 file_258 -1 file_259 -1 file_260 -1 file_261 -1 file_262 -1 file_263 -1 file_264 -1 file_265 -1 file_266 -1 file_267 -1 file_268 -1 file_269 -1 file_270 -1 file_271 -1 file_272 -1 file_273 -1 file_274 -1 file_275 -1 file_276 -1 file_277 -1 file_278 -1 file_279 -1 file_280 -1 file_281 -1 file_282 -1 file_283 -1 file_284 -1 file_285 -1 file_286 -1 file_287 -1 file_288 -1 file_289 -1 file_290 -1 file_291 -1 file_292 -1 file_293 -1 file_294 -1 file_295 -1 file_296 -1 file_297 -1 file_298 -1 file_299 -1 file_300 -1 file_301 -1 file_302 -1 file_303 -1 file_304 -1 file_305 -1 file_306 -1 file_307 -1 file_308 -1 file_309 -1 file_310 -1 file_311 -1 file_312 -1 file_313 -1 file_314 -1 file_315 -1 file_316 -1 file_317 -1 file_318 -1 file_319 -1 file_320 -1 file_321 -1 file_322 -1 file_323 -1 file_324 -1 file_325 -1 file_326 -1 file_327 -1 file_328 -1 file_329 -1 file_330 -1 file_331 -1 file_332 -1 file_333 -1 file_334 -1 file_335 -1 file_336 -1 file_337 -1 file_338 -1 file_339 -1 file_340 -1 file_341 -1 file_342 -1 file_343 -1 file_344 -1 file_345 -1 file_346 -1 file_347 -1 file_348 -1 file_349 -1 file_350 -1 file_351 -1 file_352 -1 file_353 -1 file_354 -1 file_355 -1 file_356 -1 file_357 -1 file_358 -1 file_359 -1 file_360 -1 file_361 -1 file_362 -1 file_363 -1 file_364 -1 file_365 -1 file_366 -1 file_367 -1 file_368 -1 file_369 -1 file_370 -1 file_371 -1 file_372 -1 file_373 -1 file_374 -1 file_375 -1 file_376 -1 file_377 -1 file_378 -1 file_379 -1 file_380 -1 file_381 -1 file_382 -1 file_383 -1 file_384 -1 file_385 -1 file_386 -1 file_387 -1 file_388 -1 file_389 -1 file_390 -1 file_391 -1 file_392 -1 file_393 -1 file_394 -1 file_395 -1 file_396 -1 file_397 -1 file_398 -1 file_399 -1 file_400 -1 file_401 -1 file_402 -1 file_403 -1 file_404 -1 file_405 -1 file_406 -1 file_407 -1 file_408 -1 file_409 -1 file_410 -1 file_411 -1 file_412 -1 file_413 -1 file_414 -1 file_415 -1 file_416 -1 file_417 -1 file_418 -1 file_419 -1 file_420 -1 file_421 -1 file_422 -1 file_423 -1 file_424 -1 file_425 -1 file_426 -1 file_427 -1 file_428 -1 file_429 -1 file_430 -1 file_431 -1 file_432 -1 file_433 -1 file_434 -1 file_435 -1 file_436 -1 file_437 -1 file_438 -1 file_439 -1 file_440 -1 file_441 -1 file_442 -1 file_443 -1 file_444 -1 file_445 -1 file_446 -1 file_447 -1 file_448 -1 file_449 -1 file_450 -1 file_451 -1 file_452 -1 file_453 -1 file_454 -1 file_455 -1 file_456 -1 file_457 -1 file_458 -1 file_459 -1 file_460 -1 file_461 -1 file_462 -1 file_463 -1 file_464 -1 file_465 -1 file_466 -1 file_467 -1 file_468 -1 file_469 -1 file_470 -1 file_471 -1 file_472 -1 file_473 -1 file_474 -1 file_475 -1 file_476 -1 file_477 -1 file_478 -1 file_479 -1 file_480 -1 file_481 -1 file_482 -1 file_483 -1 file_484 -1 file_485 -1 file_486 -1 file_487 -1 file_488 -1 file_489 -1 file_490 -1 file_491 -1 file_492 -1 file_493 -1 file_494 -1 file_495 -1 file_496 -1 file_497 -1 file_498 -1 file_499 -1 file_500 -1 file_501 -1 file_502 -1 file_503 -1 file_504 -1 file_505 -1 file_506 -1 file_507 -1 file_508 -1 file_509 -1 file_510 -1 file_511 -1 file_512 -1 file_513 -1 file_514 -1 file_515 -1 file_516 -1 file_517 -1 file_518 -1 file_519 -1 file_520 -1 file_521 -1 file_522 -1 file_523 -1 file_524 -1 file_525 -1 file_526 -1 file_527 -1 file_528 -1 file_529 -1 file_530 -1 file_531 -1 file_532 -1 file_533 -1 file_534 -1 file_535 -1 file_536 -1 file_537 -1 file_538 -1 file_539 -1 file_540 -1 file_541 -1 file_542 -1 file_543 -1 file_544 -1 file_545 -1 file_546 -1 file_547 -1 file_548 -1 file_549 -1 file_550 -1 file_551 -1 file_552 -1 file_553 -1 file_554 -1 file_555 -1 file_556 -1 file_557 -1 file_558 -1 file_559 -1 file_560 -1 file_561 -1 file_562 -1 file_563 -1 file_564 -1 file_565 -1 file_566 -1 file_567 -1 file_568 -1 file_569 -1 file_570 -1 file_571 -1 file_572 -1 file_573 -1 file_574 -1 file_575 -1 file_576 -1 file_577 -1 file_578 -1 file_579 -1 file_580 -1 file_581 -1 file_582 -1 file_583 -1 file_584 -1 file_585 -1 file_586 -1 file_587 -1 file_588 -1 file_589 -1 file_590 -1 file_591 -1 file_592 -1 file_593 -1 file_594 -1 file_595 -1 file_596 -1 file_597 -1 file_598 -1 file_599 -1 file_600 -1 file_601 -1 file_602 -1 file_603 -1 file_604 -1 file_605 -1 file_606 -1 file_607 -1 file_608 -1 file_609 -1 file_610 -1 file_611 -1 file_612 -1 file_613 -1 file_614 -1 file_615 -1 file_616 -1 file_617 -1 file_618 -1 file_619 -1 file_620 -1 file_621 -1 file_622 -1 file_623 -1 file_624 -1 file_625 -1 file_626 -1 file_627 -1 file_628 -1 file_629 -1 file_630 -1 file_631 -1 file_632 -1 file_633 -1 file_634 -1 file_635 -1 file_636 -1 file_637 -1 file_638 -1 file_639 -1 file_640 -1 file_641 -1 file_642 -1 file_643 -1 file_644 -1 file_645 -1 file_646 -1 file_647 -1 file_648 -1 file_649 -1 file_650 -1 file_651 -1 file_652 -1 file_653 -1 file_654 -1 file_655 -1 file_656 -1 file_657 -1 file_658 -1 file_659 -1 file_660 -1 file_661 -1 file_662 -1 file_663 -1 file_664 -1 file_665 -1 file_666 -1 file_667 -1 file_668 -1 file_669 -1 file_670 -1 file_671 -1 file_672 -1 file_673 -1 file_674 -1 file_675 -1 file_676 -1 file_677 -1 file_678 -1 file_679 -1 file_680 -1 file_681 -1 file_682 -1 file_683 -1 file_684 -1 file_685 -1 file_686 -1 file_687 -1 file_688 -1 file_689 -1 file_690 -1 file_691 -1 file_692 -1 file_693 -1 file_694 -1 file_695 -1 file_696 -1 file_697 -1 file_698 -1 file_699 -1 file_700 -1 file_701 -1 file_702 -1 file_703 -1 file_704 -1 file_705 -1 file_706 -1 file_707 -1 file_708 -1 file_709 -1 file_710 -1 file_711 -1 file_712 -1 file_713 -1 file_714 -1 file_715 -1 file_716 -1 file_717 -1 file_718 -1 file_719 -1 file_720 -1 file_721 -1 file_722 -1 file_723 -1 file_724 -1 file_725 -1 file_726 -1 file_727 -1 file_728 -1 file_729 -1 file_730 -1 file_731 -1 file_732 -1 file_733 -1 file_734 -1 file_735 -1 file_736 -1 file_737 -1 file_738 -1 file_739 -1 file_740 -1 file_741 -1 file_742 -1 file_743 -1 file_744 -1 file_745 -1 file_746 -1 file_747 -1 file_748 -1 file_749 -1 file_750 -1 file_751 -1 file_752 -1 file_753 -1 file_754 -1 file_755 -1 file_756 -1 file_757 -1 file_758 -1 file_759 -1 file_760 -1 file_761 -1 file_762 -1 file_763 -1 file_764 -1 file_765 -1 file_766 -1 file_767 -1 file_768 -1 file_769 -1 file_770 -1 file_771 -1 file_772 -1 file_773 -1 file_774 -1 file_775 -1 file_776 -1 file_777 -1 file_778 -1 file_779 -1 file_780 -1 file_781 -1 file_782 -1 file_783 -1 file_784 -1 file_785 -1 file_786 -1 file_787 -1 file_788 -1 file_789 -1 file_790 -1 file_791 -1 file_792 -1 file_793 -1 file_794 -1 file_795 -1 file_796 -1 file_797 -1 file_798 -1 file_799 -1 file_800 -1 file_801 -1 file_802 -1 file_803 -1 file_804 -1 file_805 -1 file_806 -1 file_807 -1 file_808 -1 file_809 -1 file_810 -1 file_811 -1 file_812 -1 file_813 -1 file_814 -1 file_815 -1 file_816 -1 file_817 -1 file_818 -1 file_819 -1 file_820 -1 file_821 -1 file_822 -1 file_823 -1 file_824 -1 file_825 -1 file_826 -1 file_827 -1 file_828 -1 file_829 -1 file_830 -1 file_831 -1 file_832 -1 file_833 -1 file_834 -1 file_835 -1 file_836 -1 file_837 -1 file_838 -1 file_839 -1 file_840 -1 file_841 -1 file_842 -1 file_843 -1 file_844 -1 file_845 -1 file_846 -1 file_847 -1 file_848 -1 file_849 -1 file_850 -1 file_851 -1 file_852 -1 file_853 -1 file_854 -1 file_855 -1 file_856 -1 file_857 -1 file_858 -1 file_859 -1 file_860 -1 file_861 -1 file_862 -1 file_863 -1 file_864 -1 file_865 -1 file_866 -1 file_867 -1 file_868 -1 file_869 -1 file_870 -1 file_871 -1 file_872 -1 file_873 -1 file_874 -1 file_875 -1 file_876 -1 file_877 -1 file_878 -1 file_879 -1 file_880 -1 file_881 -1 file_882 -1 file_883 -1 file_884 -1 file_885 -1 file_886 -1 file_887 -1 file_888 -1 file_889 -1 file_890 -1 file_891 -1 file_892 -1 file_893 -1 file_894 -1 file_895 -1 file_896 -1 file_897 -1 file_898 -1 file_899 -1 file_900 -1 file_901 -1 file_902 -1 file_903 -1 file_904 -1 file_905 -1 file_906 -1 file_907 -1 file_908 -1 file_909 -1 file_910 -1 file_911 -1 file_912 -1 file_913 -1 file_914 -1 file_915 -1 file_916 -1 file_917 -1 file_918 -1 file_919 -1 file_920 -1 file_921 -1 file_922 -1 file_923 -1 file_924 -1 file_925 -1 file_926 -1 file_927 -1 file_928 -1 file_929 -1 file_930 -1 file_931 -1 file_932 -1 file_933 -1 file_934 -1 file_935 -1 file_936 -1 file_937 -1 file_938 -1 file_939 -1 file_940 -1 file_941 -1 file_942 -1 file_943 -1 file_944 -1 file_945 -1 file_946 -1 file_947 -1 file_948 -1 file_949 -1 file_950 -1 file_951 -1 file_952 -1 file_953 -1 file_954 -1 file_955 -1 file_956 -1 file_957 -1 file_958 -1 file_959 -1 file_960 -1 file_961 -1 file_962 -1 file_963 -1 file_964 -1 file_965 -1 file_966 -1 file_967 -1 file_968 -1 file_969 -1 file_970 -1 file_971 -1 file_972 -1 file_973 -1 file_974 -1 file_975 -1 file_976 -1 file_977 -1 file_978 -1 file_979 -1 file_980 -1 file_981 -1 file_982 -1 file_983 -1 file_984 -1 file_985 -1 file_986 -1 file_987 -1 file_988 -1 file_989 -1 file_990 -1 file_991 -1 file_992 -1 file_993 -1 file_994 -1 file_995 -1 file_996 -1 file_997 -1 file_998 -1 file_999 - -tests/test_dir/grid/0001: - -tests/test_dir/grid/0002: - -tests/test_dir/grid/0003: - -tests/test_dir/grid/0004: - -tests/test_dir/grid/0005: - -tests/test_dir/grid/0006: - -tests/test_dir/grid/0007: - -tests/test_dir/grid/0008: - -tests/test_dir/grid/0009: - -tests/test_dir/grid/0010: - -tests/test_dir/grid/0011: - -tests/test_dir/grid/0012: - -tests/test_dir/grid/0013: - -tests/test_dir/grid/0014: - -tests/test_dir/grid/0015: - -tests/test_dir/grid/0016: - -tests/test_dir/grid/0017: - -tests/test_dir/grid/0018: - -tests/test_dir/grid/0019: - -tests/test_dir/grid/0020: - -tests/test_dir/grid/0021: - -tests/test_dir/grid/0022: - -tests/test_dir/grid/0023: - -tests/test_dir/grid/0024: - -tests/test_dir/grid/0025: - -tests/test_dir/grid/0026: - -tests/test_dir/grid/0027: - -tests/test_dir/grid/0028: - -tests/test_dir/grid/0029: - -tests/test_dir/grid/0030: - -tests/test_dir/grid/0031: - -tests/test_dir/grid/0032: - -tests/test_dir/grid/0033: - -tests/test_dir/grid/0034: - -tests/test_dir/grid/0035: - -tests/test_dir/grid/0036: - -tests/test_dir/grid/0037: - -tests/test_dir/grid/0038: - -tests/test_dir/grid/0039: - -tests/test_dir/grid/0040: - -tests/test_dir/grid/0041: - -tests/test_dir/grid/0042: - -tests/test_dir/grid/0043: - -tests/test_dir/grid/0044: - -tests/test_dir/grid/0045: - -tests/test_dir/grid/0046: - -tests/test_dir/grid/0047: - -tests/test_dir/grid/0048: - -tests/test_dir/grid/0049: - -tests/test_dir/grid/0050: - -tests/test_dir/grid/0051: - -tests/test_dir/grid/0052: - -tests/test_dir/grid/0053: - -tests/test_dir/grid/0054: - -tests/test_dir/grid/0055: - -tests/test_dir/grid/0056: - -tests/test_dir/grid/0057: - -tests/test_dir/grid/0058: - -tests/test_dir/grid/0059: - -tests/test_dir/grid/0060: - -tests/test_dir/grid/0061: - -tests/test_dir/grid/0062: - -tests/test_dir/grid/0063: - -tests/test_dir/grid/0064: - -tests/test_dir/grid/0065: - -tests/test_dir/grid/0066: - -tests/test_dir/grid/0067: - -tests/test_dir/grid/0068: - -tests/test_dir/grid/0069: - -tests/test_dir/grid/0070: - -tests/test_dir/grid/0071: - -tests/test_dir/grid/0072: - -tests/test_dir/grid/0073: - -tests/test_dir/grid/0074: - -tests/test_dir/grid/0075: - -tests/test_dir/grid/0076: - -tests/test_dir/grid/0077: - -tests/test_dir/grid/0078: - -tests/test_dir/grid/0079: - -tests/test_dir/grid/0080: - -tests/test_dir/grid/0081: - -tests/test_dir/grid/0082: - -tests/test_dir/grid/0083: - -tests/test_dir/grid/0084: - -tests/test_dir/grid/0085: - -tests/test_dir/grid/0086: - -tests/test_dir/grid/0087: - -tests/test_dir/grid/0088: - -tests/test_dir/grid/0089: - -tests/test_dir/grid/0090: - -tests/test_dir/grid/0091: - -tests/test_dir/grid/0092: - -tests/test_dir/grid/0093: - -tests/test_dir/grid/0094: - -tests/test_dir/grid/0095: - -tests/test_dir/grid/0096: - -tests/test_dir/grid/0097: - -tests/test_dir/grid/0098: - -tests/test_dir/grid/0099: - -tests/test_dir/grid/0100: - -tests/test_dir/grid/0101: - -tests/test_dir/grid/0102: - -tests/test_dir/grid/0103: - -tests/test_dir/grid/0104: - -tests/test_dir/grid/0105: - -tests/test_dir/grid/0106: - -tests/test_dir/grid/0107: - -tests/test_dir/grid/0108: - -tests/test_dir/grid/0109: - -tests/test_dir/grid/0110: - -tests/test_dir/grid/0111: - -tests/test_dir/grid/0112: - -tests/test_dir/grid/0113: - -tests/test_dir/grid/0114: - -tests/test_dir/grid/0115: - -tests/test_dir/grid/0116: - -tests/test_dir/grid/0117: - -tests/test_dir/grid/0118: - -tests/test_dir/grid/0119: - -tests/test_dir/grid/0120: - -tests/test_dir/grid/0121: - -tests/test_dir/grid/0122: - -tests/test_dir/grid/0123: - -tests/test_dir/grid/0124: - -tests/test_dir/grid/0125: - -tests/test_dir/grid/0126: - -tests/test_dir/grid/0127: - -tests/test_dir/grid/0128: - -tests/test_dir/grid/0129: - -tests/test_dir/grid/0130: - -tests/test_dir/grid/0131: - -tests/test_dir/grid/0132: - -tests/test_dir/grid/0133: - -tests/test_dir/grid/0134: - -tests/test_dir/grid/0135: - -tests/test_dir/grid/0136: - -tests/test_dir/grid/0137: - -tests/test_dir/grid/0138: - -tests/test_dir/grid/0139: - -tests/test_dir/grid/0140: - -tests/test_dir/grid/0141: - -tests/test_dir/grid/0142: - -tests/test_dir/grid/0143: - -tests/test_dir/grid/0144: - -tests/test_dir/grid/0145: - -tests/test_dir/grid/0146: - -tests/test_dir/grid/0147: - -tests/test_dir/grid/0148: - -tests/test_dir/grid/0149: - -tests/test_dir/grid/0150: - -tests/test_dir/grid/0151: - -tests/test_dir/grid/0152: - -tests/test_dir/grid/0153: - -tests/test_dir/grid/0154: - -tests/test_dir/grid/0155: - -tests/test_dir/grid/0156: - -tests/test_dir/grid/0157: - -tests/test_dir/grid/0158: - -tests/test_dir/grid/0159: - -tests/test_dir/grid/0160: - -tests/test_dir/grid/0161: - -tests/test_dir/grid/0162: - -tests/test_dir/grid/0163: - -tests/test_dir/grid/0164: - -tests/test_dir/grid/0165: - -tests/test_dir/grid/0166: - -tests/test_dir/grid/0167: - -tests/test_dir/grid/0168: - -tests/test_dir/grid/0169: - -tests/test_dir/grid/0170: - -tests/test_dir/grid/0171: - -tests/test_dir/grid/0172: - -tests/test_dir/grid/0173: - -tests/test_dir/grid/0174: - -tests/test_dir/grid/0175: - -tests/test_dir/grid/0176: - -tests/test_dir/grid/0177: - -tests/test_dir/grid/0178: - -tests/test_dir/grid/0179: - -tests/test_dir/grid/0180: - -tests/test_dir/grid/0181: - -tests/test_dir/grid/0182: - -tests/test_dir/grid/0183: - -tests/test_dir/grid/0184: - -tests/test_dir/grid/0185: - -tests/test_dir/grid/0186: - -tests/test_dir/grid/0187: - -tests/test_dir/grid/0188: - -tests/test_dir/grid/0189: - -tests/test_dir/grid/0190: - -tests/test_dir/grid/0191: - -tests/test_dir/grid/0192: - -tests/test_dir/grid/0193: - -tests/test_dir/grid/0194: - -tests/test_dir/grid/0195: - -tests/test_dir/grid/0196: - -tests/test_dir/grid/0197: - -tests/test_dir/grid/0198: - -tests/test_dir/grid/0199: - -tests/test_dir/grid/0200: - -tests/test_dir/grid/0201: - -tests/test_dir/grid/0202: - -tests/test_dir/grid/0203: - -tests/test_dir/grid/0204: - -tests/test_dir/grid/0205: - -tests/test_dir/grid/0206: - -tests/test_dir/grid/0207: - -tests/test_dir/grid/0208: - -tests/test_dir/grid/0209: - -tests/test_dir/grid/0210: - -tests/test_dir/grid/0211: - -tests/test_dir/grid/0212: - -tests/test_dir/grid/0213: - -tests/test_dir/grid/0214: - -tests/test_dir/grid/0215: - -tests/test_dir/grid/0216: - -tests/test_dir/grid/0217: - -tests/test_dir/grid/0218: - -tests/test_dir/grid/0219: - -tests/test_dir/grid/0220: - -tests/test_dir/grid/0221: - -tests/test_dir/grid/0222: - -tests/test_dir/grid/0223: - -tests/test_dir/grid/0224: - -tests/test_dir/grid/0225: - -tests/test_dir/grid/0226: - -tests/test_dir/grid/0227: - -tests/test_dir/grid/0228: - -tests/test_dir/grid/0229: - -tests/test_dir/grid/0230: - -tests/test_dir/grid/0231: - -tests/test_dir/grid/0232: - -tests/test_dir/grid/0233: - -tests/test_dir/grid/0234: - -tests/test_dir/grid/0235: - -tests/test_dir/grid/0236: - -tests/test_dir/grid/0237: - -tests/test_dir/grid/0238: - -tests/test_dir/grid/0239: - -tests/test_dir/grid/0240: - -tests/test_dir/grid/0241: - -tests/test_dir/grid/0242: - -tests/test_dir/grid/0243: - -tests/test_dir/grid/0244: - -tests/test_dir/grid/0245: - -tests/test_dir/grid/0246: - -tests/test_dir/grid/0247: - -tests/test_dir/grid/0248: - -tests/test_dir/grid/0249: - -tests/test_dir/grid/0250: - -tests/test_dir/grid/0251: - -tests/test_dir/grid/0252: - -tests/test_dir/grid/0253: - -tests/test_dir/grid/0254: - -tests/test_dir/grid/0255: - -tests/test_dir/grid/0256: - -tests/test_dir/grid/0257: - -tests/test_dir/grid/0258: - -tests/test_dir/grid/0259: - -tests/test_dir/grid/0260: - -tests/test_dir/grid/0261: - -tests/test_dir/grid/0262: - -tests/test_dir/grid/0263: - -tests/test_dir/grid/0264: - -tests/test_dir/grid/0265: - -tests/test_dir/grid/0266: - -tests/test_dir/grid/0267: - -tests/test_dir/grid/0268: - -tests/test_dir/grid/0269: - -tests/test_dir/grid/0270: - -tests/test_dir/grid/0271: - -tests/test_dir/grid/0272: - -tests/test_dir/grid/0273: - -tests/test_dir/grid/0274: - -tests/test_dir/grid/0275: - -tests/test_dir/grid/0276: - -tests/test_dir/grid/0277: - -tests/test_dir/grid/0278: - -tests/test_dir/grid/0279: - -tests/test_dir/grid/0280: - -tests/test_dir/grid/0281: - -tests/test_dir/grid/0282: - -tests/test_dir/grid/0283: - -tests/test_dir/grid/0284: - -tests/test_dir/grid/0285: - -tests/test_dir/grid/0286: - -tests/test_dir/grid/0287: - -tests/test_dir/grid/0288: - -tests/test_dir/grid/0289: - -tests/test_dir/grid/0290: - -tests/test_dir/grid/0291: - -tests/test_dir/grid/0292: - -tests/test_dir/grid/0293: - -tests/test_dir/grid/0294: - -tests/test_dir/grid/0295: - -tests/test_dir/grid/0296: - -tests/test_dir/grid/0297: - -tests/test_dir/grid/0298: - -tests/test_dir/grid/0299: - -tests/test_dir/grid/0300: - -tests/test_dir/grid/0301: - -tests/test_dir/grid/0302: - -tests/test_dir/grid/0303: - -tests/test_dir/grid/0304: - -tests/test_dir/grid/0305: - -tests/test_dir/grid/0306: - -tests/test_dir/grid/0307: - -tests/test_dir/grid/0308: - -tests/test_dir/grid/0309: - -tests/test_dir/grid/0310: - -tests/test_dir/grid/0311: - -tests/test_dir/grid/0312: - -tests/test_dir/grid/0313: - -tests/test_dir/grid/0314: - -tests/test_dir/grid/0315: - -tests/test_dir/grid/0316: - -tests/test_dir/grid/0317: - -tests/test_dir/grid/0318: - -tests/test_dir/grid/0319: - -tests/test_dir/grid/0320: - -tests/test_dir/grid/0321: - -tests/test_dir/grid/0322: - -tests/test_dir/grid/0323: - -tests/test_dir/grid/0324: - -tests/test_dir/grid/0325: - -tests/test_dir/grid/0326: - -tests/test_dir/grid/0327: - -tests/test_dir/grid/0328: - -tests/test_dir/grid/0329: - -tests/test_dir/grid/0330: - -tests/test_dir/grid/0331: - -tests/test_dir/grid/0332: - -tests/test_dir/grid/0333: - -tests/test_dir/grid/0334: - -tests/test_dir/grid/0335: - -tests/test_dir/grid/0336: - -tests/test_dir/grid/0337: - -tests/test_dir/grid/0338: - -tests/test_dir/grid/0339: - -tests/test_dir/grid/0340: - -tests/test_dir/grid/0341: - -tests/test_dir/grid/0342: - -tests/test_dir/grid/0343: - -tests/test_dir/grid/0344: - -tests/test_dir/grid/0345: - -tests/test_dir/grid/0346: - -tests/test_dir/grid/0347: - -tests/test_dir/grid/0348: - -tests/test_dir/grid/0349: - -tests/test_dir/grid/0350: - -tests/test_dir/grid/0351: - -tests/test_dir/grid/0352: - -tests/test_dir/grid/0353: - -tests/test_dir/grid/0354: - -tests/test_dir/grid/0355: - -tests/test_dir/grid/0356: - -tests/test_dir/grid/0357: - -tests/test_dir/grid/0358: - -tests/test_dir/grid/0359: - -tests/test_dir/grid/0360: - -tests/test_dir/grid/0361: - -tests/test_dir/grid/0362: - -tests/test_dir/grid/0363: - -tests/test_dir/grid/0364: - -tests/test_dir/grid/0365: - -tests/test_dir/grid/0366: - -tests/test_dir/grid/0367: - -tests/test_dir/grid/0368: - -tests/test_dir/grid/0369: - -tests/test_dir/grid/0370: - -tests/test_dir/grid/0371: - -tests/test_dir/grid/0372: - -tests/test_dir/grid/0373: - -tests/test_dir/grid/0374: - -tests/test_dir/grid/0375: - -tests/test_dir/grid/0376: - -tests/test_dir/grid/0377: - -tests/test_dir/grid/0378: - -tests/test_dir/grid/0379: - -tests/test_dir/grid/0380: - -tests/test_dir/grid/0381: - -tests/test_dir/grid/0382: - -tests/test_dir/grid/0383: - -tests/test_dir/grid/0384: - -tests/test_dir/grid/0385: - -tests/test_dir/grid/0386: - -tests/test_dir/grid/0387: - -tests/test_dir/grid/0388: - -tests/test_dir/grid/0389: - -tests/test_dir/grid/0390: - -tests/test_dir/grid/0391: - -tests/test_dir/grid/0392: - -tests/test_dir/grid/0393: - -tests/test_dir/grid/0394: - -tests/test_dir/grid/0395: - -tests/test_dir/grid/0396: - -tests/test_dir/grid/0397: - -tests/test_dir/grid/0398: - -tests/test_dir/grid/0399: - -tests/test_dir/grid/0400: - -tests/test_dir/grid/0401: - -tests/test_dir/grid/0402: - -tests/test_dir/grid/0403: - -tests/test_dir/grid/0404: - -tests/test_dir/grid/0405: - -tests/test_dir/grid/0406: - -tests/test_dir/grid/0407: - -tests/test_dir/grid/0408: - -tests/test_dir/grid/0409: - -tests/test_dir/grid/0410: - -tests/test_dir/grid/0411: - -tests/test_dir/grid/0412: - -tests/test_dir/grid/0413: - -tests/test_dir/grid/0414: - -tests/test_dir/grid/0415: - -tests/test_dir/grid/0416: - -tests/test_dir/grid/0417: - -tests/test_dir/grid/0418: - -tests/test_dir/grid/0419: - -tests/test_dir/grid/0420: - -tests/test_dir/grid/0421: - -tests/test_dir/grid/0422: - -tests/test_dir/grid/0423: - -tests/test_dir/grid/0424: - -tests/test_dir/grid/0425: - -tests/test_dir/grid/0426: - -tests/test_dir/grid/0427: - -tests/test_dir/grid/0428: - -tests/test_dir/grid/0429: - -tests/test_dir/grid/0430: - -tests/test_dir/grid/0431: - -tests/test_dir/grid/0432: - -tests/test_dir/grid/0433: - -tests/test_dir/grid/0434: - -tests/test_dir/grid/0435: - -tests/test_dir/grid/0436: - -tests/test_dir/grid/0437: - -tests/test_dir/grid/0438: - -tests/test_dir/grid/0439: - -tests/test_dir/grid/0440: - -tests/test_dir/grid/0441: - -tests/test_dir/grid/0442: - -tests/test_dir/grid/0443: - -tests/test_dir/grid/0444: - -tests/test_dir/grid/0445: - -tests/test_dir/grid/0446: - -tests/test_dir/grid/0447: - -tests/test_dir/grid/0448: - -tests/test_dir/grid/0449: - -tests/test_dir/grid/0450: - -tests/test_dir/grid/0451: - -tests/test_dir/grid/0452: - -tests/test_dir/grid/0453: - -tests/test_dir/grid/0454: - -tests/test_dir/grid/0455: - -tests/test_dir/grid/0456: - -tests/test_dir/grid/0457: - -tests/test_dir/grid/0458: - -tests/test_dir/grid/0459: - -tests/test_dir/grid/0460: - -tests/test_dir/grid/0461: - -tests/test_dir/grid/0462: - -tests/test_dir/grid/0463: - -tests/test_dir/grid/0464: - -tests/test_dir/grid/0465: - -tests/test_dir/grid/0466: - -tests/test_dir/grid/0467: - -tests/test_dir/grid/0468: - -tests/test_dir/grid/0469: - -tests/test_dir/grid/0470: - -tests/test_dir/grid/0471: - -tests/test_dir/grid/0472: - -tests/test_dir/grid/0473: - -tests/test_dir/grid/0474: - -tests/test_dir/grid/0475: - -tests/test_dir/grid/0476: - -tests/test_dir/grid/0477: - -tests/test_dir/grid/0478: - -tests/test_dir/grid/0479: - -tests/test_dir/grid/0480: - -tests/test_dir/grid/0481: - -tests/test_dir/grid/0482: - -tests/test_dir/grid/0483: - -tests/test_dir/grid/0484: - -tests/test_dir/grid/0485: - -tests/test_dir/grid/0486: - -tests/test_dir/grid/0487: - -tests/test_dir/grid/0488: - -tests/test_dir/grid/0489: - -tests/test_dir/grid/0490: - -tests/test_dir/grid/0491: - -tests/test_dir/grid/0492: - -tests/test_dir/grid/0493: - -tests/test_dir/grid/0494: - -tests/test_dir/grid/0495: - -tests/test_dir/grid/0496: - -tests/test_dir/grid/0497: - -tests/test_dir/grid/0498: - -tests/test_dir/grid/0499: - -tests/test_dir/grid/0500: - -tests/test_dir/grid/0501: - -tests/test_dir/grid/0502: - -tests/test_dir/grid/0503: - -tests/test_dir/grid/0504: - -tests/test_dir/grid/0505: - -tests/test_dir/grid/0506: - -tests/test_dir/grid/0507: - -tests/test_dir/grid/0508: - -tests/test_dir/grid/0509: - -tests/test_dir/grid/0510: - -tests/test_dir/grid/0511: - -tests/test_dir/grid/0512: - -tests/test_dir/grid/0513: - -tests/test_dir/grid/0514: - -tests/test_dir/grid/0515: - -tests/test_dir/grid/0516: - -tests/test_dir/grid/0517: - -tests/test_dir/grid/0518: - -tests/test_dir/grid/0519: - -tests/test_dir/grid/0520: - -tests/test_dir/grid/0521: - -tests/test_dir/grid/0522: - -tests/test_dir/grid/0523: - -tests/test_dir/grid/0524: - -tests/test_dir/grid/0525: - -tests/test_dir/grid/0526: - -tests/test_dir/grid/0527: - -tests/test_dir/grid/0528: - -tests/test_dir/grid/0529: - -tests/test_dir/grid/0530: - -tests/test_dir/grid/0531: - -tests/test_dir/grid/0532: - -tests/test_dir/grid/0533: - -tests/test_dir/grid/0534: - -tests/test_dir/grid/0535: - -tests/test_dir/grid/0536: - -tests/test_dir/grid/0537: - -tests/test_dir/grid/0538: - -tests/test_dir/grid/0539: - -tests/test_dir/grid/0540: - -tests/test_dir/grid/0541: - -tests/test_dir/grid/0542: - -tests/test_dir/grid/0543: - -tests/test_dir/grid/0544: - -tests/test_dir/grid/0545: - -tests/test_dir/grid/0546: - -tests/test_dir/grid/0547: - -tests/test_dir/grid/0548: - -tests/test_dir/grid/0549: - -tests/test_dir/grid/0550: - -tests/test_dir/grid/0551: - -tests/test_dir/grid/0552: - -tests/test_dir/grid/0553: - -tests/test_dir/grid/0554: - -tests/test_dir/grid/0555: - -tests/test_dir/grid/0556: - -tests/test_dir/grid/0557: - -tests/test_dir/grid/0558: - -tests/test_dir/grid/0559: - -tests/test_dir/grid/0560: - -tests/test_dir/grid/0561: - -tests/test_dir/grid/0562: - -tests/test_dir/grid/0563: - -tests/test_dir/grid/0564: - -tests/test_dir/grid/0565: - -tests/test_dir/grid/0566: - -tests/test_dir/grid/0567: - -tests/test_dir/grid/0568: - -tests/test_dir/grid/0569: - -tests/test_dir/grid/0570: - -tests/test_dir/grid/0571: - -tests/test_dir/grid/0572: - -tests/test_dir/grid/0573: - -tests/test_dir/grid/0574: - -tests/test_dir/grid/0575: - -tests/test_dir/grid/0576: - -tests/test_dir/grid/0577: - -tests/test_dir/grid/0578: - -tests/test_dir/grid/0579: - -tests/test_dir/grid/0580: - -tests/test_dir/grid/0581: - -tests/test_dir/grid/0582: - -tests/test_dir/grid/0583: - -tests/test_dir/grid/0584: - -tests/test_dir/grid/0585: - -tests/test_dir/grid/0586: - -tests/test_dir/grid/0587: - -tests/test_dir/grid/0588: - -tests/test_dir/grid/0589: - -tests/test_dir/grid/0590: - -tests/test_dir/grid/0591: - -tests/test_dir/grid/0592: - -tests/test_dir/grid/0593: - -tests/test_dir/grid/0594: - -tests/test_dir/grid/0595: - -tests/test_dir/grid/0596: - -tests/test_dir/grid/0597: - -tests/test_dir/grid/0598: - -tests/test_dir/grid/0599: - -tests/test_dir/grid/0600: - -tests/test_dir/grid/0601: - -tests/test_dir/grid/0602: - -tests/test_dir/grid/0603: - -tests/test_dir/grid/0604: - -tests/test_dir/grid/0605: - -tests/test_dir/grid/0606: - -tests/test_dir/grid/0607: - -tests/test_dir/grid/0608: - -tests/test_dir/grid/0609: - -tests/test_dir/grid/0610: - -tests/test_dir/grid/0611: - -tests/test_dir/grid/0612: - -tests/test_dir/grid/0613: - -tests/test_dir/grid/0614: - -tests/test_dir/grid/0615: - -tests/test_dir/grid/0616: - -tests/test_dir/grid/0617: - -tests/test_dir/grid/0618: - -tests/test_dir/grid/0619: - -tests/test_dir/grid/0620: - -tests/test_dir/grid/0621: - -tests/test_dir/grid/0622: - -tests/test_dir/grid/0623: - -tests/test_dir/grid/0624: - -tests/test_dir/grid/0625: - -tests/test_dir/grid/0626: - -tests/test_dir/grid/0627: - -tests/test_dir/grid/0628: - -tests/test_dir/grid/0629: - -tests/test_dir/grid/0630: - -tests/test_dir/grid/0631: - -tests/test_dir/grid/0632: - -tests/test_dir/grid/0633: - -tests/test_dir/grid/0634: - -tests/test_dir/grid/0635: - -tests/test_dir/grid/0636: - -tests/test_dir/grid/0637: - -tests/test_dir/grid/0638: - -tests/test_dir/grid/0639: - -tests/test_dir/grid/0640: - -tests/test_dir/grid/0641: - -tests/test_dir/grid/0642: - -tests/test_dir/grid/0643: - -tests/test_dir/grid/0644: - -tests/test_dir/grid/0645: - -tests/test_dir/grid/0646: - -tests/test_dir/grid/0647: - -tests/test_dir/grid/0648: - -tests/test_dir/grid/0649: - -tests/test_dir/grid/0650: - -tests/test_dir/grid/0651: - -tests/test_dir/grid/0652: - -tests/test_dir/grid/0653: - -tests/test_dir/grid/0654: - -tests/test_dir/grid/0655: - -tests/test_dir/grid/0656: - -tests/test_dir/grid/0657: - -tests/test_dir/grid/0658: - -tests/test_dir/grid/0659: - -tests/test_dir/grid/0660: - -tests/test_dir/grid/0661: - -tests/test_dir/grid/0662: - -tests/test_dir/grid/0663: - -tests/test_dir/grid/0664: - -tests/test_dir/grid/0665: - -tests/test_dir/grid/0666: - -tests/test_dir/grid/0667: - -tests/test_dir/grid/0668: - -tests/test_dir/grid/0669: - -tests/test_dir/grid/0670: - -tests/test_dir/grid/0671: - -tests/test_dir/grid/0672: - -tests/test_dir/grid/0673: - -tests/test_dir/grid/0674: - -tests/test_dir/grid/0675: - -tests/test_dir/grid/0676: - -tests/test_dir/grid/0677: - -tests/test_dir/grid/0678: - -tests/test_dir/grid/0679: - -tests/test_dir/grid/0680: - -tests/test_dir/grid/0681: - -tests/test_dir/grid/0682: - -tests/test_dir/grid/0683: - -tests/test_dir/grid/0684: - -tests/test_dir/grid/0685: - -tests/test_dir/grid/0686: - -tests/test_dir/grid/0687: - -tests/test_dir/grid/0688: - -tests/test_dir/grid/0689: - -tests/test_dir/grid/0690: - -tests/test_dir/grid/0691: - -tests/test_dir/grid/0692: - -tests/test_dir/grid/0693: - -tests/test_dir/grid/0694: - -tests/test_dir/grid/0695: - -tests/test_dir/grid/0696: - -tests/test_dir/grid/0697: - -tests/test_dir/grid/0698: - -tests/test_dir/grid/0699: - -tests/test_dir/grid/0700: - -tests/test_dir/grid/0701: - -tests/test_dir/grid/0702: - -tests/test_dir/grid/0703: - -tests/test_dir/grid/0704: - -tests/test_dir/grid/0705: - -tests/test_dir/grid/0706: - -tests/test_dir/grid/0707: - -tests/test_dir/grid/0708: - -tests/test_dir/grid/0709: - -tests/test_dir/grid/0710: - -tests/test_dir/grid/0711: - -tests/test_dir/grid/0712: - -tests/test_dir/grid/0713: - -tests/test_dir/grid/0714: - -tests/test_dir/grid/0715: - -tests/test_dir/grid/0716: - -tests/test_dir/grid/0717: - -tests/test_dir/grid/0718: - -tests/test_dir/grid/0719: - -tests/test_dir/grid/0720: - -tests/test_dir/grid/0721: - -tests/test_dir/grid/0722: - -tests/test_dir/grid/0723: - -tests/test_dir/grid/0724: - -tests/test_dir/grid/0725: - -tests/test_dir/grid/0726: - -tests/test_dir/grid/0727: - -tests/test_dir/grid/0728: - -tests/test_dir/grid/0729: - -tests/test_dir/grid/0730: - -tests/test_dir/grid/0731: - -tests/test_dir/grid/0732: - -tests/test_dir/grid/0733: - -tests/test_dir/grid/0734: - -tests/test_dir/grid/0735: - -tests/test_dir/grid/0736: - -tests/test_dir/grid/0737: - -tests/test_dir/grid/0738: - -tests/test_dir/grid/0739: - -tests/test_dir/grid/0740: - -tests/test_dir/grid/0741: - -tests/test_dir/grid/0742: - -tests/test_dir/grid/0743: - -tests/test_dir/grid/0744: - -tests/test_dir/grid/0745: - -tests/test_dir/grid/0746: - -tests/test_dir/grid/0747: - -tests/test_dir/grid/0748: - -tests/test_dir/grid/0749: - -tests/test_dir/grid/0750: - -tests/test_dir/grid/0751: - -tests/test_dir/grid/0752: - -tests/test_dir/grid/0753: - -tests/test_dir/grid/0754: - -tests/test_dir/grid/0755: - -tests/test_dir/grid/0756: - -tests/test_dir/grid/0757: - -tests/test_dir/grid/0758: - -tests/test_dir/grid/0759: - -tests/test_dir/grid/0760: - -tests/test_dir/grid/0761: - -tests/test_dir/grid/0762: - -tests/test_dir/grid/0763: - -tests/test_dir/grid/0764: - -tests/test_dir/grid/0765: - -tests/test_dir/grid/0766: - -tests/test_dir/grid/0767: - -tests/test_dir/grid/0768: - -tests/test_dir/grid/0769: - -tests/test_dir/grid/0770: - -tests/test_dir/grid/0771: - -tests/test_dir/grid/0772: - -tests/test_dir/grid/0773: - -tests/test_dir/grid/0774: - -tests/test_dir/grid/0775: - -tests/test_dir/grid/0776: - -tests/test_dir/grid/0777: - -tests/test_dir/grid/0778: - -tests/test_dir/grid/0779: - -tests/test_dir/grid/0780: - -tests/test_dir/grid/0781: - -tests/test_dir/grid/0782: - -tests/test_dir/grid/0783: - -tests/test_dir/grid/0784: - -tests/test_dir/grid/0785: - -tests/test_dir/grid/0786: - -tests/test_dir/grid/0787: - -tests/test_dir/grid/0788: - -tests/test_dir/grid/0789: - -tests/test_dir/grid/0790: - -tests/test_dir/grid/0791: - -tests/test_dir/grid/0792: - -tests/test_dir/grid/0793: - -tests/test_dir/grid/0794: - -tests/test_dir/grid/0795: - -tests/test_dir/grid/0796: - -tests/test_dir/grid/0797: - -tests/test_dir/grid/0798: - -tests/test_dir/grid/0799: - -tests/test_dir/grid/0800: - -tests/test_dir/grid/0801: - -tests/test_dir/grid/0802: - -tests/test_dir/grid/0803: - -tests/test_dir/grid/0804: - -tests/test_dir/grid/0805: - -tests/test_dir/grid/0806: - -tests/test_dir/grid/0807: - -tests/test_dir/grid/0808: - -tests/test_dir/grid/0809: - -tests/test_dir/grid/0810: - -tests/test_dir/grid/0811: - -tests/test_dir/grid/0812: - -tests/test_dir/grid/0813: - -tests/test_dir/grid/0814: - -tests/test_dir/grid/0815: - -tests/test_dir/grid/0816: - -tests/test_dir/grid/0817: - -tests/test_dir/grid/0818: - -tests/test_dir/grid/0819: - -tests/test_dir/grid/0820: - -tests/test_dir/grid/0821: - -tests/test_dir/grid/0822: - -tests/test_dir/grid/0823: - -tests/test_dir/grid/0824: - -tests/test_dir/grid/0825: - -tests/test_dir/grid/0826: - -tests/test_dir/grid/0827: - -tests/test_dir/grid/0828: - -tests/test_dir/grid/0829: - -tests/test_dir/grid/0830: - -tests/test_dir/grid/0831: - -tests/test_dir/grid/0832: - -tests/test_dir/grid/0833: - -tests/test_dir/grid/0834: - -tests/test_dir/grid/0835: - -tests/test_dir/grid/0836: - -tests/test_dir/grid/0837: - -tests/test_dir/grid/0838: - -tests/test_dir/grid/0839: - -tests/test_dir/grid/0840: - -tests/test_dir/grid/0841: - -tests/test_dir/grid/0842: - -tests/test_dir/grid/0843: - -tests/test_dir/grid/0844: - -tests/test_dir/grid/0845: - -tests/test_dir/grid/0846: - -tests/test_dir/grid/0847: - -tests/test_dir/grid/0848: - -tests/test_dir/grid/0849: - -tests/test_dir/grid/0850: - -tests/test_dir/grid/0851: - -tests/test_dir/grid/0852: - -tests/test_dir/grid/0853: - -tests/test_dir/grid/0854: - -tests/test_dir/grid/0855: - -tests/test_dir/grid/0856: - -tests/test_dir/grid/0857: - -tests/test_dir/grid/0858: - -tests/test_dir/grid/0859: - -tests/test_dir/grid/0860: - -tests/test_dir/grid/0861: - -tests/test_dir/grid/0862: - -tests/test_dir/grid/0863: - -tests/test_dir/grid/0864: - -tests/test_dir/grid/0865: - -tests/test_dir/grid/0866: - -tests/test_dir/grid/0867: - -tests/test_dir/grid/0868: - -tests/test_dir/grid/0869: - -tests/test_dir/grid/0870: - -tests/test_dir/grid/0871: - -tests/test_dir/grid/0872: - -tests/test_dir/grid/0873: - -tests/test_dir/grid/0874: - -tests/test_dir/grid/0875: - -tests/test_dir/grid/0876: - -tests/test_dir/grid/0877: - -tests/test_dir/grid/0878: - -tests/test_dir/grid/0879: - -tests/test_dir/grid/0880: - -tests/test_dir/grid/0881: - -tests/test_dir/grid/0882: - -tests/test_dir/grid/0883: - -tests/test_dir/grid/0884: - -tests/test_dir/grid/0885: - -tests/test_dir/grid/0886: - -tests/test_dir/grid/0887: - -tests/test_dir/grid/0888: - -tests/test_dir/grid/0889: - -tests/test_dir/grid/0890: - -tests/test_dir/grid/0891: - -tests/test_dir/grid/0892: - -tests/test_dir/grid/0893: - -tests/test_dir/grid/0894: - -tests/test_dir/grid/0895: - -tests/test_dir/grid/0896: - -tests/test_dir/grid/0897: - -tests/test_dir/grid/0898: - -tests/test_dir/grid/0899: - -tests/test_dir/grid/0900: - -tests/test_dir/grid/0901: - -tests/test_dir/grid/0902: - -tests/test_dir/grid/0903: - -tests/test_dir/grid/0904: - -tests/test_dir/grid/0905: - -tests/test_dir/grid/0906: - -tests/test_dir/grid/0907: - -tests/test_dir/grid/0908: - -tests/test_dir/grid/0909: - -tests/test_dir/grid/0910: - -tests/test_dir/grid/0911: - -tests/test_dir/grid/0912: - -tests/test_dir/grid/0913: - -tests/test_dir/grid/0914: - -tests/test_dir/grid/0915: - -tests/test_dir/grid/0916: - -tests/test_dir/grid/0917: - -tests/test_dir/grid/0918: - -tests/test_dir/grid/0919: - -tests/test_dir/grid/0920: - -tests/test_dir/grid/0921: - -tests/test_dir/grid/0922: - -tests/test_dir/grid/0923: - -tests/test_dir/grid/0924: - -tests/test_dir/grid/0925: - -tests/test_dir/grid/0926: - -tests/test_dir/grid/0927: - -tests/test_dir/grid/0928: - -tests/test_dir/grid/0929: - -tests/test_dir/grid/0930: - -tests/test_dir/grid/0931: - -tests/test_dir/grid/0932: - -tests/test_dir/grid/0933: - -tests/test_dir/grid/0934: - -tests/test_dir/grid/0935: - -tests/test_dir/grid/0936: - -tests/test_dir/grid/0937: - -tests/test_dir/grid/0938: - -tests/test_dir/grid/0939: - -tests/test_dir/grid/0940: - -tests/test_dir/grid/0941: - -tests/test_dir/grid/0942: - -tests/test_dir/grid/0943: - -tests/test_dir/grid/0944: - -tests/test_dir/grid/0945: - -tests/test_dir/grid/0946: - -tests/test_dir/grid/0947: - -tests/test_dir/grid/0948: - -tests/test_dir/grid/0949: - -tests/test_dir/grid/0950: - -tests/test_dir/grid/0951: - -tests/test_dir/grid/0952: - -tests/test_dir/grid/0953: - -tests/test_dir/grid/0954: - -tests/test_dir/grid/0955: - -tests/test_dir/grid/0956: - -tests/test_dir/grid/0957: - -tests/test_dir/grid/0958: - -tests/test_dir/grid/0959: - -tests/test_dir/grid/0960: - -tests/test_dir/grid/0961: - -tests/test_dir/grid/0962: - -tests/test_dir/grid/0963: - -tests/test_dir/grid/0964: - -tests/test_dir/grid/0965: - -tests/test_dir/grid/0966: - -tests/test_dir/grid/0967: - -tests/test_dir/grid/0968: - -tests/test_dir/grid/0969: - -tests/test_dir/grid/0970: - -tests/test_dir/grid/0971: - -tests/test_dir/grid/0972: - -tests/test_dir/grid/0973: - -tests/test_dir/grid/0974: - -tests/test_dir/grid/0975: - -tests/test_dir/grid/0976: - -tests/test_dir/grid/0977: - -tests/test_dir/grid/0978: - -tests/test_dir/grid/0979: - -tests/test_dir/grid/0980: - -tests/test_dir/grid/0981: - -tests/test_dir/grid/0982: - -tests/test_dir/grid/0983: - -tests/test_dir/grid/0984: - -tests/test_dir/grid/0985: - -tests/test_dir/grid/0986: - -tests/test_dir/grid/0987: - -tests/test_dir/grid/0988: - -tests/test_dir/grid/0989: - -tests/test_dir/grid/0990: - -tests/test_dir/grid/0991: - -tests/test_dir/grid/0992: - -tests/test_dir/grid/0993: - -tests/test_dir/grid/0994: - -tests/test_dir/grid/0995: - -tests/test_dir/grid/0996: - -tests/test_dir/grid/0997: - -tests/test_dir/grid/0998: - -tests/test_dir/grid/0999: - -tests/test_dir/grid/1000: - -tests/test_dir/group: -1 file - -tests/test_dir/icons: -1 c++.cpp -1 c.c -1 css.css -1 file -1 go.go -1 html.html -1 java.java -1 javascript.js -1 man.1 -1 marked.md -1 php.php -1 python.py -1 ruby.rb -1 rust.rs -1 shell.sh -1 unknown.unknown - -tests/test_dir/perms: -1 file -1 file2 - -tests/test_dir/size: -1 1B -1 1K -1 1M -1 1337 - -tests/test_dir/specials: - -tests/test_dir/symlinks: -2 dir -1 file -1 ' lorem ipsum' -1 symlink -> file -1 symlink2 -> symlink -1 symlink3 -> dir -1 symlink4 -> pipitek - -tests/test_dir/symlinks/dir: - -tests/test_dir/time: -1 1d -1 1h -1 1m -1 1s -1 1y -1 epoch diff --git a/tests/gen/long_links_recurse_unix.toml b/tests/gen/long_links_recurse_unix.toml deleted file mode 100644 index f125a0209..000000000 --- a/tests/gen/long_links_recurse_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --no-user --no-time --no-filesize --no-permissions --recurse --links" diff --git a/tests/gen/long_nix.stderr b/tests/gen/long_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_nix.stdout b/tests/gen/long_nix.stdout deleted file mode 100644 index a45c7ac4f..000000000 --- a/tests/gen/long_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -drwxr-xr-x - nixbld 1 Jan 1970 git -drwxr-xr-x - nixbld 1 Jan 1970 grid -drwxr-xr-x - nixbld 1 Jan 1970 group -drwxr-xr-x - nixbld 1 Jan 1970 icons -drwxr-xr-x - nixbld 1 Jan 1970 perms -drwxr-xr-x - nixbld 1 Jan 1970 size -drwxr-xr-x - nixbld 1 Jan 1970 specials -drwxr-xr-x - nixbld 1 Jan 1970 symlinks -drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_nix.toml b/tests/gen/long_nix.toml deleted file mode 100644 index 26fad7b00..000000000 --- a/tests/gen/long_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long" diff --git a/tests/gen/long_octal_nix.stderr b/tests/gen/long_octal_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_octal_nix.stdout b/tests/gen/long_octal_nix.stdout deleted file mode 100644 index 8a877653a..000000000 --- a/tests/gen/long_octal_nix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -0755 drwxr-xr-x - nixbld 1 Jan 1970 dirs-ext -0755 drwxr-xr-x - nixbld 1 Jan 1970 git -0755 drwxr-xr-x - nixbld 1 Jan 1970 grid -0755 drwxr-xr-x - nixbld 1 Jan 1970 group -0755 drwxr-xr-x - nixbld 1 Jan 1970 icons -0755 drwxr-xr-x - nixbld 1 Jan 1970 perms -0755 drwxr-xr-x - nixbld 1 Jan 1970 size -0755 drwxr-xr-x - nixbld 1 Jan 1970 specials -0755 drwxr-xr-x - nixbld 1 Jan 1970 symlinks -0755 drwxr-xr-x - nixbld 1 Jan 1970 time diff --git a/tests/gen/long_octal_nix.toml b/tests/gen/long_octal_nix.toml deleted file mode 100644 index 4e555043c..000000000 --- a/tests/gen/long_octal_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --octal-permissions" diff --git a/tests/gen/long_recurse_with_level_unix.stderr b/tests/gen/long_recurse_with_level_unix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_recurse_with_level_unix.stdout b/tests/gen/long_recurse_with_level_unix.stdout deleted file mode 100644 index 53a8aee17..000000000 --- a/tests/gen/long_recurse_with_level_unix.stdout +++ /dev/null @@ -1,10 +0,0 @@ -dirs-ext -git -grid -group -icons -perms -size -specials -symlinks -time diff --git a/tests/gen/long_recurse_with_level_unix.toml b/tests/gen/long_recurse_with_level_unix.toml deleted file mode 100644 index 602667c23..000000000 --- a/tests/gen/long_recurse_with_level_unix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/test_dir --long --no-user --no-permissions --no-time --no-filesize --recurse --level 2" diff --git a/tests/gen/long_time_style_custom_non_recent_and_recent_nix.stderr b/tests/gen/long_time_style_custom_non_recent_and_recent_nix.stderr deleted file mode 100644 index e69de29bb..000000000 diff --git a/tests/gen/long_time_style_custom_non_recent_and_recent_nix.stdout b/tests/gen/long_time_style_custom_non_recent_and_recent_nix.stdout deleted file mode 100644 index 4ea758df6..000000000 --- a/tests/gen/long_time_style_custom_non_recent_and_recent_nix.stdout +++ /dev/null @@ -1,2 +0,0 @@ -NON_RECENT 13_month - RECENT now diff --git a/tests/gen/long_time_style_custom_non_recent_and_recent_nix.toml b/tests/gen/long_time_style_custom_non_recent_and_recent_nix.toml deleted file mode 100644 index 7f8c871ef..000000000 --- a/tests/gen/long_time_style_custom_non_recent_and_recent_nix.toml +++ /dev/null @@ -1,2 +0,0 @@ -bin.name = "eza" -args = "tests/timestamp_test_dir --long --no-permissions --no-filesize --no-user --sort=modified --time-style='+NON_RECENT\n RECENT'" diff --git a/tests/gen/long_time_style_custom_non_recent_empty_nix.stderr b/tests/gen/long_time_style_custom_non_recent_empty_nix.stderr deleted file mode 100644 index ae1916a2a..000000000 --- a/tests/gen/long_time_style_custom_non_recent_empty_nix.stderr +++ /dev/null @@ -1,7 +0,0 @@ -error: invalid value '+ -' for '--time-style