From ef18f9ca91eb68e08c3221c1e375f54a01c7d81e Mon Sep 17 00:00:00 2001 From: Benjamin Sago Date: Fri, 28 Apr 2017 19:34:23 +0100 Subject: [PATCH] Protect xtests against different default users MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Vagrant tests assumed that there’d be a user called “vagrant” that would run the tests and create the files by default. Files would be owned by vagrant:vagrant by default, and this worked, until it came time to change that username. The naïve method was a search-and-replace, but this caused problems when the new user’s name wasn’t exactly the same length as the previous one. So to fix this, we now have our own user, named after the first animal I thought of, that makes the files’ owners and groups independent of the default user of whichever VM image the xtests are running on. Another place where it was hard-coded was the home directory, which was “/home/vagrant”, where the awkward testcases live. That last one has been changed to just “/testcases”, which has no mention of the user in it. --- Vagrantfile | 86 +++++++++++++++++++++++++++++------------ xtests/attributes | 30 +++++++------- xtests/files_l | 78 ++++++++++++++++++------------------- xtests/files_lG_120 | 40 +++++++++---------- xtests/files_lG_160 | 26 ++++++------- xtests/files_lG_200 | 20 +++++----- xtests/files_lG_40 | 78 ++++++++++++++++++------------------- xtests/files_lG_80 | 78 ++++++++++++++++++------------------- xtests/files_lh | 80 +++++++++++++++++++------------------- xtests/files_lhb | 80 +++++++++++++++++++------------------- xtests/files_lhb2 | 80 +++++++++++++++++++------------------- xtests/ignores_ogg | 2 +- xtests/links_1 | 2 +- xtests/links_T | 4 +- xtests/passwd | 6 +-- xtests/permissions | 19 ++++++--- xtests/permissions_sudo | 14 +++++++ xtests/run.sh | 29 ++++++++------ 18 files changed, 410 insertions(+), 342 deletions(-) create mode 100644 xtests/permissions_sudo diff --git a/Vagrantfile b/Vagrantfile index 4193194..9225afc 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -7,37 +7,50 @@ Vagrant.configure("2") do |config| config.vm.box = "debian/jessie64" config.vm.hostname = "exa" + # Install the dependencies needed for exa to build. config.vm.provision :shell, privileged: true, inline: - %[apt-get install -y git cmake libgit2-dev libssh2-1-dev curl attr pkg-config] + %[apt-get install -y git cmake libssl-dev libgit2-dev libssh2-1-dev curl attr pkg-config] + # Guarantee that the timezone is UTC -- some of the tests # depend on this (for now). config.vm.provision :shell, privileged: true, inline: %[timedatectl set-timezone UTC] + # Install Rust. # This is done as vagrant, not root, because it’s vagrant # who actually uses it. Sent to /dev/null because the progress - # bar produces a lot of output. + # bar produces a ton of output. config.vm.provision :shell, privileged: false, inline: %[hash rustc &>/dev/null || curl -sSf https://static.rust-lang.org/rustup.sh | sh &> /dev/null] + # Use a different ‘target’ directory on the VM than on the host. # By default it just uses the one in /vagrant/target, which can # cause problems if it has different permissions than the other # directories, or contains object files compiled for the host. config.vm.provision :shell, privileged: false, inline: - %[echo "export CARGO_TARGET_DIR=/home/vagrant/target" >> ~/.bashrc] + %[echo "export CARGO_TARGET_DIR=/home/ubuntu/target" >> ~/.bashrc] + + + # We create two users that own the test files. + # The first one just owns the ordinary ones, because we don’t want to + # depend on “vagrant” or “ubuntu” existing. + user = "cassowary" + config.vm.provision :shell, privileged: true, inline: + %[id -u #{user} &>/dev/null || useradd #{user}] + - # Test that wide columns work with a really long username. - # The benefit of Vagrant is that we don’t need to set this up - # on the *actual* system! + # The second one has a long name, to test that the file owner column + # widens correctly. The benefit of Vagrant is that we don’t need to + # set this up on the *actual* system! longuser = "antidisestablishmentarienism" config.vm.provision :shell, privileged: true, inline: %[id -u #{longuser} &>/dev/null || useradd #{longuser}] - test_dir = "/home/vagrant/testcases" + # Because the timestamps are formatted differently depending on whether # they’re in the current year or not (see `details.rs`), we have to make # sure that the files are created in the current year, so they get shown @@ -45,19 +58,26 @@ Vagrant.configure("2") do |config| current_year = Date.today.year some_date = "#{current_year}01011234.56" # 1st January, 12:34:56 + + # We also need an UID and a GID that are guaranteed to not exist, to + # test what happen when they don’t. invalid_uid = 666 invalid_gid = 616 - # Delete old testcases if they exist already. - # This needs root because the generator does some sudo-ing. - config.vm.provision :shell, privileged: true, inline: - %[rm -rfv #{test_dir}] - # Generate our awkward testcases. - config.vm.provision :shell, privileged: false, inline: - %[mkdir #{test_dir}] + # Delete old testcases if they exist already, then create a + # directory to house new ones. + test_dir = "/testcases" + config.vm.provision :shell, privileged: true, inline: <<-EOF + set -xe + rm -rfv #{test_dir} + mkdir #{test_dir} + chmod 777 #{test_dir} + EOF + # Awkward file size testcases. + # This needs sudo to set the files’ users at the very end. config.vm.provision :shell, privileged: false, inline: <<-EOF set -xe mkdir "#{test_dir}/files" @@ -66,10 +86,16 @@ Vagrant.configure("2") do |config| fallocate -l "$i"KiB "#{test_dir}/files/$i"_KiB fallocate -l "$i"MiB "#{test_dir}/files/$i"_MiB done + touch -t #{some_date} "#{test_dir}/files/"* + chmod 644 "#{test_dir}/files/"* + sudo chown #{user}:#{user} "#{test_dir}/files/"* EOF + # File name extension testcases. + # These are tested in grid view, so we don’t need to bother setting + # owners or timestamps or anything. config.vm.provision :shell, privileged: false, inline: <<-EOF set -xe mkdir "#{test_dir}/file-types" @@ -106,9 +132,9 @@ Vagrant.configure("2") do |config| touch "#{test_dir}/file-types/compiled.o" touch "#{test_dir}/file-types/compiled.js" touch "#{test_dir}/file-types/compiled.coffee" - EOF + # Awkward symlink testcases. config.vm.provision :shell, privileged: false, inline: <<-EOF set -xe @@ -119,6 +145,7 @@ Vagrant.configure("2") do |config| ln -s /proc/1/root "#{test_dir}/links/forbidden" EOF + # Awkward passwd testcases. # sudo is needed for these because we technically aren’t a member # of the groups (because they don’t exist), and chown and chgrp @@ -127,28 +154,37 @@ Vagrant.configure("2") do |config| set -xe mkdir "#{test_dir}/passwd" - touch -t #{some_date} "#{test_dir}/passwd/unknown-uid" - sudo chown #{invalid_uid} "#{test_dir}/passwd/unknown-uid" + touch -t #{some_date} "#{test_dir}/passwd/unknown-uid" + chmod 644 "#{test_dir}/passwd/unknown-uid" + sudo chown #{invalid_uid}:#{user} "#{test_dir}/passwd/unknown-uid" - touch -t #{some_date} "#{test_dir}/passwd/unknown-gid" - sudo chgrp #{invalid_gid} "#{test_dir}/passwd/unknown-gid" + touch -t #{some_date} "#{test_dir}/passwd/unknown-gid" + chmod 644 "#{test_dir}/passwd/unknown-gid" + sudo chown #{user}:#{invalid_gid} "#{test_dir}/passwd/unknown-gid" EOF + # Awkward permission testcases. config.vm.provision :shell, privileged: false, inline: <<-EOF set -xe mkdir "#{test_dir}/permissions" - touch "#{test_dir}/permissions/all-permissions" + touch "#{test_dir}/permissions/all-permissions" chmod 777 "#{test_dir}/permissions/all-permissions" - touch "#{test_dir}/permissions/no-permissions" + touch "#{test_dir}/permissions/no-permissions" chmod 000 "#{test_dir}/permissions/no-permissions" - mkdir "#{test_dir}/permissions/forbidden-directory" + mkdir "#{test_dir}/permissions/forbidden-directory" chmod 000 "#{test_dir}/permissions/forbidden-directory" - touch -t #{some_date} "#{test_dir}/permissions/"* + for perms in 001 002 004 010 020 040 100 200 400; do + touch "#{test_dir}/permissions/$perms" + chmod $perms "#{test_dir}/permissions/$perms" + done + + touch -t #{some_date} "#{test_dir}/permissions/"* + sudo chown #{user}:#{user} "#{test_dir}/permissions/"* EOF @@ -185,9 +221,11 @@ Vagrant.configure("2") do |config| #chmod 000 "#{test_dir}/attributes/dirs/full-but-forbidden" #chmod +a "$YOU deny readextattr" "#{test_dir}/attributes/dirs/full-but-forbidden" - touch -t #{some_date} "#{test_dir}/attributes" + touch -t #{some_date} "#{test_dir}/attributes" touch -t #{some_date} "#{test_dir}/attributes/"* touch -t #{some_date} "#{test_dir}/attributes/dirs/"* touch -t #{some_date} "#{test_dir}/attributes/dirs/"*/* + + sudo chown #{user}:#{user} -R "#{test_dir}/attributes" EOF end diff --git a/xtests/attributes b/xtests/attributes index 16a6584..5b24f8a 100644 --- a/xtests/attributes +++ b/xtests/attributes @@ -1,15 +1,15 @@ -drwxr-xr-x - vagrant  1 Jan 12:34 /home/vagrant/testcases/attributes -drwxr-xr-x - vagrant  1 Jan 12:34 ├── dirs -drwxr-xr-x@ - vagrant  1 Jan 12:34 │ ├── empty-with-attribute - │ │ └── user.greeting (len 5) -drwxr-xr-x - vagrant  1 Jan 12:34 │ ├── full-but-forbidden -.rw-r--r-- 0 vagrant  1 Jan 12:34 │ │ └── file -drwxr-xr-x@ - vagrant  1 Jan 12:34 │ └── full-with-attribute - │ ├── user.greeting (len 5) -.rw-r--r-- 0 vagrant  1 Jan 12:34 │ └── file -.rw-r--r-- 0 vagrant  1 Jan 12:34 ├── none -.rw-r--r--@ 0 vagrant  1 Jan 12:34 ├── one - │ └── user.greeting (len 5) -.rw-r--r--@ 0 vagrant  1 Jan 12:34 └── two -  ├── user.greeting (len 5) -  └── user.another_greeting (len 2) +drwxrwxr-x - cassowary  1 Jan 12:34 /testcases/attributes +drwxrwxr-x - cassowary  1 Jan 12:34 ├── dirs +drwxrwxr-x@ - cassowary  1 Jan 12:34 │ ├── empty-with-attribute + │ │ └── user.greeting (len 5) +drwxrwxr-x - cassowary  1 Jan 12:34 │ ├── full-but-forbidden +.rw-rw-r-- 0 cassowary  1 Jan 12:34 │ │ └── file +drwxrwxr-x@ - cassowary  1 Jan 12:34 │ └── full-with-attribute + │ ├── user.greeting (len 5) +.rw-rw-r-- 0 cassowary  1 Jan 12:34 │ └── file +.rw-rw-r-- 0 cassowary  1 Jan 12:34 ├── none +.rw-rw-r--@ 0 cassowary  1 Jan 12:34 ├── one + │ └── user.greeting (len 5) +.rw-rw-r--@ 0 cassowary  1 Jan 12:34 └── two +  ├── user.greeting (len 5) +  └── user.another_greeting (len 2) diff --git a/xtests/files_l b/xtests/files_l index 6be05c5..675f161 100644 --- a/xtests/files_l +++ b/xtests/files_l @@ -1,39 +1,39 @@ -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB -.rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes -.rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB -.rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes -.rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB -.rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes -.rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB -.rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB -.rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB +.rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes +.rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB +.rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes +.rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB +.rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes +.rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB +.rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB +.rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/files_lG_120 b/xtests/files_lG_120 index c420d65..54a84a0 100644 --- a/xtests/files_lG_120 +++ b/xtests/files_lG_120 @@ -1,20 +1,20 @@ -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB .rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB .rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes .rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB .rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB .rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes .rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB .rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB .rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes .rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB .rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB .rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes .rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB .rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB .rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes .rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB .rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB .rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes .rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB .rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes -.rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB .rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB .rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes .rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB .rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB .rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes .rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB .rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB .rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes .rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB .rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB .rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes .rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB .rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB .rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes .rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB .rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB .rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes .rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB .rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes +.rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB diff --git a/xtests/files_lG_160 b/xtests/files_lG_160 index 94e3b2d..d2f5c72 100644 --- a/xtests/files_lG_160 +++ b/xtests/files_lG_160 @@ -1,13 +1,13 @@ -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB .rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB .rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB .rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes .rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes .rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB .rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB .rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB .rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB .rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes .rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes .rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB .rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB .rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB .rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB .rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes .rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes .rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB .rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB .rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB .rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB .rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes .rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes .rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB .rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB .rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB .rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB .rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB .rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB .rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes .rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes .rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB .rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB .rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB .rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB .rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes .rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes .rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB .rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB .rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB .rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB .rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes .rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes .rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB .rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB .rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB .rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB .rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes .rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes .rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB .rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB .rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB .rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/files_lG_200 b/xtests/files_lG_200 index b481ed3..f845614 100644 --- a/xtests/files_lG_200 +++ b/xtests/files_lG_200 @@ -1,10 +1,10 @@ -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB .rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB .rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes .rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB .rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes .rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB .rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes .rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB .rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB .rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB .rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB .rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes .rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB .rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes .rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB .rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes .rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB .rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB .rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB .rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB .rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes .rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB .rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes .rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB .rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes .rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB .rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB .rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB .rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB .rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB .rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB .rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes .rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB .rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes .rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB .rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes .rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB .rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB .rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB .rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB .rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes .rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB .rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes .rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB .rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes .rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB .rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB .rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB .rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB .rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes .rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB .rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes .rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB .rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes .rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB .rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB .rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB .rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB .rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes diff --git a/xtests/files_lG_40 b/xtests/files_lG_40 index 6be05c5..675f161 100644 --- a/xtests/files_lG_40 +++ b/xtests/files_lG_40 @@ -1,39 +1,39 @@ -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB -.rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes -.rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB -.rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes -.rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB -.rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes -.rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB -.rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB -.rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB +.rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes +.rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB +.rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes +.rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB +.rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes +.rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB +.rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB +.rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/files_lG_80 b/xtests/files_lG_80 index 6be05c5..675f161 100644 --- a/xtests/files_lG_80 +++ b/xtests/files_lG_80 @@ -1,39 +1,39 @@ -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB -.rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes -.rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB -.rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes -.rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB -.rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes -.rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB -.rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB -.rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB +.rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes +.rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB +.rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes +.rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB +.rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes +.rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB +.rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB +.rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/files_lh b/xtests/files_lh index c5f59de..d8cb5af 100644 --- a/xtests/files_lh +++ b/xtests/files_lh @@ -1,40 +1,40 @@ -Permissions Size User Date Modified Name -.rw-r--r-- 1.0k vagrant  1 Jan 12:34 1_KiB -.rw-r--r-- 1.0M vagrant  1 Jan 12:34 1_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes -.rw-r--r-- 2.0k vagrant  1 Jan 12:34 2_KiB -.rw-r--r-- 2.1M vagrant  1 Jan 12:34 2_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes -.rw-r--r-- 3.1k vagrant  1 Jan 12:34 3_KiB -.rw-r--r-- 3.1M vagrant  1 Jan 12:34 3_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes -.rw-r--r-- 4.1k vagrant  1 Jan 12:34 4_KiB -.rw-r--r-- 4.2M vagrant  1 Jan 12:34 4_MiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes -.rw-r--r-- 5.1k vagrant  1 Jan 12:34 5_KiB -.rw-r--r-- 5.2M vagrant  1 Jan 12:34 5_MiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes -.rw-r--r-- 6.1k vagrant  1 Jan 12:34 6_KiB -.rw-r--r-- 6.3M vagrant  1 Jan 12:34 6_MiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes -.rw-r--r-- 7.2k vagrant  1 Jan 12:34 7_KiB -.rw-r--r-- 7.3M vagrant  1 Jan 12:34 7_MiB -.rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 8.2k vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 8.4M vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 9.2k vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 9.4M vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 10k vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 10M vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 11k vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 11M vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 12k vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 12M vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 13k vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 13M vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +Permissions Size User Date Modified Name +.rw-r--r-- 1.0k cassowary  1 Jan 12:34 1_KiB +.rw-r--r-- 1.0M cassowary  1 Jan 12:34 1_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes +.rw-r--r-- 2.0k cassowary  1 Jan 12:34 2_KiB +.rw-r--r-- 2.1M cassowary  1 Jan 12:34 2_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes +.rw-r--r-- 3.1k cassowary  1 Jan 12:34 3_KiB +.rw-r--r-- 3.1M cassowary  1 Jan 12:34 3_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes +.rw-r--r-- 4.1k cassowary  1 Jan 12:34 4_KiB +.rw-r--r-- 4.2M cassowary  1 Jan 12:34 4_MiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes +.rw-r--r-- 5.1k cassowary  1 Jan 12:34 5_KiB +.rw-r--r-- 5.2M cassowary  1 Jan 12:34 5_MiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes +.rw-r--r-- 6.1k cassowary  1 Jan 12:34 6_KiB +.rw-r--r-- 6.3M cassowary  1 Jan 12:34 6_MiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes +.rw-r--r-- 7.2k cassowary  1 Jan 12:34 7_KiB +.rw-r--r-- 7.3M cassowary  1 Jan 12:34 7_MiB +.rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 8.2k cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 8.4M cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 9.2k cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 9.4M cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 10k cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 10M cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 11k cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 11M cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 12k cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 12M cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 13k cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 13M cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/files_lhb b/xtests/files_lhb index 926ae02..6796a98 100644 --- a/xtests/files_lhb +++ b/xtests/files_lhb @@ -1,40 +1,40 @@ -Permissions Size User Date Modified Name -.rw-r--r-- 1.0Ki vagrant  1 Jan 12:34 1_KiB -.rw-r--r-- 1.0Mi vagrant  1 Jan 12:34 1_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes -.rw-r--r-- 2.0Ki vagrant  1 Jan 12:34 2_KiB -.rw-r--r-- 2.0Mi vagrant  1 Jan 12:34 2_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes -.rw-r--r-- 3.0Ki vagrant  1 Jan 12:34 3_KiB -.rw-r--r-- 3.0Mi vagrant  1 Jan 12:34 3_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes -.rw-r--r-- 4.0Ki vagrant  1 Jan 12:34 4_KiB -.rw-r--r-- 4.0Mi vagrant  1 Jan 12:34 4_MiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes -.rw-r--r-- 5.0Ki vagrant  1 Jan 12:34 5_KiB -.rw-r--r-- 5.0Mi vagrant  1 Jan 12:34 5_MiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes -.rw-r--r-- 6.0Ki vagrant  1 Jan 12:34 6_KiB -.rw-r--r-- 6.0Mi vagrant  1 Jan 12:34 6_MiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes -.rw-r--r-- 7.0Ki vagrant  1 Jan 12:34 7_KiB -.rw-r--r-- 7.0Mi vagrant  1 Jan 12:34 7_MiB -.rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 8.0Ki vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 8.0Mi vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 9.0Ki vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 9.0Mi vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 10Ki vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 10Mi vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 11Ki vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 11Mi vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 12Ki vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 12Mi vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 13Ki vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 13Mi vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +Permissions Size User Date Modified Name +.rw-r--r-- 1.0Ki cassowary  1 Jan 12:34 1_KiB +.rw-r--r-- 1.0Mi cassowary  1 Jan 12:34 1_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes +.rw-r--r-- 2.0Ki cassowary  1 Jan 12:34 2_KiB +.rw-r--r-- 2.0Mi cassowary  1 Jan 12:34 2_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes +.rw-r--r-- 3.0Ki cassowary  1 Jan 12:34 3_KiB +.rw-r--r-- 3.0Mi cassowary  1 Jan 12:34 3_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes +.rw-r--r-- 4.0Ki cassowary  1 Jan 12:34 4_KiB +.rw-r--r-- 4.0Mi cassowary  1 Jan 12:34 4_MiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes +.rw-r--r-- 5.0Ki cassowary  1 Jan 12:34 5_KiB +.rw-r--r-- 5.0Mi cassowary  1 Jan 12:34 5_MiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes +.rw-r--r-- 6.0Ki cassowary  1 Jan 12:34 6_KiB +.rw-r--r-- 6.0Mi cassowary  1 Jan 12:34 6_MiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes +.rw-r--r-- 7.0Ki cassowary  1 Jan 12:34 7_KiB +.rw-r--r-- 7.0Mi cassowary  1 Jan 12:34 7_MiB +.rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 8.0Ki cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 8.0Mi cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 9.0Ki cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 9.0Mi cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 10Ki cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 10Mi cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 11Ki cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 11Mi cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 12Ki cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 12Mi cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 13Ki cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 13Mi cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/files_lhb2 b/xtests/files_lhb2 index 314fa0c..6a30731 100644 --- a/xtests/files_lhb2 +++ b/xtests/files_lhb2 @@ -1,40 +1,40 @@ -Permissions Size User Date Modified Name -.rw-r--r-- 1,024 vagrant  1 Jan 12:34 1_KiB -.rw-r--r-- 1,048,576 vagrant  1 Jan 12:34 1_MiB -.rw-r--r-- 1 vagrant  1 Jan 12:34 1_bytes -.rw-r--r-- 2,048 vagrant  1 Jan 12:34 2_KiB -.rw-r--r-- 2,097,152 vagrant  1 Jan 12:34 2_MiB -.rw-r--r-- 2 vagrant  1 Jan 12:34 2_bytes -.rw-r--r-- 3,072 vagrant  1 Jan 12:34 3_KiB -.rw-r--r-- 3,145,728 vagrant  1 Jan 12:34 3_MiB -.rw-r--r-- 3 vagrant  1 Jan 12:34 3_bytes -.rw-r--r-- 4,096 vagrant  1 Jan 12:34 4_KiB -.rw-r--r-- 4,194,304 vagrant  1 Jan 12:34 4_MiB -.rw-r--r-- 4 vagrant  1 Jan 12:34 4_bytes -.rw-r--r-- 5,120 vagrant  1 Jan 12:34 5_KiB -.rw-r--r-- 5,242,880 vagrant  1 Jan 12:34 5_MiB -.rw-r--r-- 5 vagrant  1 Jan 12:34 5_bytes -.rw-r--r-- 6,144 vagrant  1 Jan 12:34 6_KiB -.rw-r--r-- 6,291,456 vagrant  1 Jan 12:34 6_MiB -.rw-r--r-- 6 vagrant  1 Jan 12:34 6_bytes -.rw-r--r-- 7,168 vagrant  1 Jan 12:34 7_KiB -.rw-r--r-- 7,340,032 vagrant  1 Jan 12:34 7_MiB -.rw-r--r-- 7 vagrant  1 Jan 12:34 7_bytes -.rw-r--r-- 8,192 vagrant  1 Jan 12:34 8_KiB -.rw-r--r-- 8,388,608 vagrant  1 Jan 12:34 8_MiB -.rw-r--r-- 8 vagrant  1 Jan 12:34 8_bytes -.rw-r--r-- 9,216 vagrant  1 Jan 12:34 9_KiB -.rw-r--r-- 9,437,184 vagrant  1 Jan 12:34 9_MiB -.rw-r--r-- 9 vagrant  1 Jan 12:34 9_bytes -.rw-r--r-- 10,240 vagrant  1 Jan 12:34 10_KiB -.rw-r--r-- 10,485,760 vagrant  1 Jan 12:34 10_MiB -.rw-r--r-- 10 vagrant  1 Jan 12:34 10_bytes -.rw-r--r-- 11,264 vagrant  1 Jan 12:34 11_KiB -.rw-r--r-- 11,534,336 vagrant  1 Jan 12:34 11_MiB -.rw-r--r-- 11 vagrant  1 Jan 12:34 11_bytes -.rw-r--r-- 12,288 vagrant  1 Jan 12:34 12_KiB -.rw-r--r-- 12,582,912 vagrant  1 Jan 12:34 12_MiB -.rw-r--r-- 12 vagrant  1 Jan 12:34 12_bytes -.rw-r--r-- 13,312 vagrant  1 Jan 12:34 13_KiB -.rw-r--r-- 13,631,488 vagrant  1 Jan 12:34 13_MiB -.rw-r--r-- 13 vagrant  1 Jan 12:34 13_bytes +Permissions Size User Date Modified Name +.rw-r--r-- 1,024 cassowary  1 Jan 12:34 1_KiB +.rw-r--r-- 1,048,576 cassowary  1 Jan 12:34 1_MiB +.rw-r--r-- 1 cassowary  1 Jan 12:34 1_bytes +.rw-r--r-- 2,048 cassowary  1 Jan 12:34 2_KiB +.rw-r--r-- 2,097,152 cassowary  1 Jan 12:34 2_MiB +.rw-r--r-- 2 cassowary  1 Jan 12:34 2_bytes +.rw-r--r-- 3,072 cassowary  1 Jan 12:34 3_KiB +.rw-r--r-- 3,145,728 cassowary  1 Jan 12:34 3_MiB +.rw-r--r-- 3 cassowary  1 Jan 12:34 3_bytes +.rw-r--r-- 4,096 cassowary  1 Jan 12:34 4_KiB +.rw-r--r-- 4,194,304 cassowary  1 Jan 12:34 4_MiB +.rw-r--r-- 4 cassowary  1 Jan 12:34 4_bytes +.rw-r--r-- 5,120 cassowary  1 Jan 12:34 5_KiB +.rw-r--r-- 5,242,880 cassowary  1 Jan 12:34 5_MiB +.rw-r--r-- 5 cassowary  1 Jan 12:34 5_bytes +.rw-r--r-- 6,144 cassowary  1 Jan 12:34 6_KiB +.rw-r--r-- 6,291,456 cassowary  1 Jan 12:34 6_MiB +.rw-r--r-- 6 cassowary  1 Jan 12:34 6_bytes +.rw-r--r-- 7,168 cassowary  1 Jan 12:34 7_KiB +.rw-r--r-- 7,340,032 cassowary  1 Jan 12:34 7_MiB +.rw-r--r-- 7 cassowary  1 Jan 12:34 7_bytes +.rw-r--r-- 8,192 cassowary  1 Jan 12:34 8_KiB +.rw-r--r-- 8,388,608 cassowary  1 Jan 12:34 8_MiB +.rw-r--r-- 8 cassowary  1 Jan 12:34 8_bytes +.rw-r--r-- 9,216 cassowary  1 Jan 12:34 9_KiB +.rw-r--r-- 9,437,184 cassowary  1 Jan 12:34 9_MiB +.rw-r--r-- 9 cassowary  1 Jan 12:34 9_bytes +.rw-r--r-- 10,240 cassowary  1 Jan 12:34 10_KiB +.rw-r--r-- 10,485,760 cassowary  1 Jan 12:34 10_MiB +.rw-r--r-- 10 cassowary  1 Jan 12:34 10_bytes +.rw-r--r-- 11,264 cassowary  1 Jan 12:34 11_KiB +.rw-r--r-- 11,534,336 cassowary  1 Jan 12:34 11_MiB +.rw-r--r-- 11 cassowary  1 Jan 12:34 11_bytes +.rw-r--r-- 12,288 cassowary  1 Jan 12:34 12_KiB +.rw-r--r-- 12,582,912 cassowary  1 Jan 12:34 12_MiB +.rw-r--r-- 12 cassowary  1 Jan 12:34 12_bytes +.rw-r--r-- 13,312 cassowary  1 Jan 12:34 13_KiB +.rw-r--r-- 13,631,488 cassowary  1 Jan 12:34 13_MiB +.rw-r--r-- 13 cassowary  1 Jan 12:34 13_bytes diff --git a/xtests/ignores_ogg b/xtests/ignores_ogg index 5b350a7..d32a8a9 100644 --- a/xtests/ignores_ogg +++ b/xtests/ignores_ogg @@ -1 +1 @@ -/home/vagrant/testcases/file-types/music.mp3 +/testcases/file-types/music.mp3 diff --git a/xtests/links_1 b/xtests/links_1 index faacfa2..25344e0 100644 --- a/xtests/links_1 +++ b/xtests/links_1 @@ -1,4 +1,4 @@ -broken -> /home/vagrant/testcases/links/nowhere +broken -> /testcases/links/nowhere forbidden -> /proc/1/root root -> / usr -> /usr diff --git a/xtests/links_T b/xtests/links_T index 081fa07..63d062b 100644 --- a/xtests/links_T +++ b/xtests/links_T @@ -1,5 +1,5 @@ -/home/vagrant/testcases/links -├── broken -> /home/vagrant/testcases/links/nowhere +/testcases/links +├── broken -> /testcases/links/nowhere │ └──  ├── forbidden -> /proc/1/root │ └──  diff --git a/xtests/passwd b/xtests/passwd index 9e87dc1..ce0979d 100644 --- a/xtests/passwd +++ b/xtests/passwd @@ -1,3 +1,3 @@ -Permissions Size User Group Date Modified Name -.rw-r--r-- 0 vagrant 616  1 Jan 12:34 unknown-gid -.rw-r--r-- 0 666 vagrant  1 Jan 12:34 unknown-uid +Permissions Size User Group Date Modified Name +.rw-r--r-- 0 cassowary 616  1 Jan 12:34 unknown-gid +.rw-r--r-- 0 666 cassowary  1 Jan 12:34 unknown-uid diff --git a/xtests/permissions b/xtests/permissions index b19ebc7..ac62ea4 100644 --- a/xtests/permissions +++ b/xtests/permissions @@ -1,5 +1,14 @@ -/home/vagrant/testcases/permissions/forbidden-directory: Permission denied (os error 13) -Permissions Size User Group Date Modified Name -.rwxrwxrwx 0 vagrant vagrant  1 Jan 12:34 all-permissions -d--------- - vagrant vagrant  1 Jan 12:34 forbidden-directory -.--------- 0 vagrant vagrant  1 Jan 12:34 no-permissions +/testcases/permissions/forbidden-directory: Permission denied (os error 13) +Permissions Size User Group Date Modified Name +.--------x 0 cassowary cassowary  1 Jan 12:34 001 +.-------w- 0 cassowary cassowary  1 Jan 12:34 002 +.------r-- 0 cassowary cassowary  1 Jan 12:34 004 +.-----x--- 0 cassowary cassowary  1 Jan 12:34 010 +.----w---- 0 cassowary cassowary  1 Jan 12:34 020 +.---r----- 0 cassowary cassowary  1 Jan 12:34 040 +.--x------ 0 cassowary cassowary  1 Jan 12:34 100 +.-w------- 0 cassowary cassowary  1 Jan 12:34 200 +.r-------- 0 cassowary cassowary  1 Jan 12:34 400 +.rwxrwxrwx 0 cassowary cassowary  1 Jan 12:34 all-permissions +d--------- - cassowary cassowary  1 Jan 12:34 forbidden-directory +.--------- 0 cassowary cassowary  1 Jan 12:34 no-permissions diff --git a/xtests/permissions_sudo b/xtests/permissions_sudo new file mode 100644 index 0000000..e7baf66 --- /dev/null +++ b/xtests/permissions_sudo @@ -0,0 +1,14 @@ +/testcases/permissions/forbidden-directory: Permission denied (os error 13) +Permissions Size User Group Date Modified Name +.--------x 0 cassowary cassowary  1 Jan 12:34 001 +.-------w- 0 cassowary cassowary  1 Jan 12:34 002 +.------r-- 0 cassowary cassowary  1 Jan 12:34 004 +.-----x--- 0 cassowary cassowary  1 Jan 12:34 010 +.----w---- 0 cassowary cassowary  1 Jan 12:34 020 +.---r----- 0 cassowary cassowary  1 Jan 12:34 040 +.--x------ 0 cassowary cassowary  1 Jan 12:34 100 +.-w------- 0 cassowary cassowary  1 Jan 12:34 200 +.r-------- 0 cassowary cassowary  1 Jan 12:34 400 +.rwxrwxrwx 0 cassowary cassowary  1 Jan 12:34 all-permissions +d--------- - cassowary cassowary  1 Jan 12:34 forbidden-directory +.--------- 0 cassowary cassowary  1 Jan 12:34 no-permissions diff --git a/xtests/run.sh b/xtests/run.sh index f6c8a12..8e3246a 100755 --- a/xtests/run.sh +++ b/xtests/run.sh @@ -6,7 +6,7 @@ set +xe exa="$HOME/target/debug/exa --colour=always" # Directory containing our awkward testcase files -testcases=~/testcases +testcases=/testcases # Directory containing existing test results to compare against results=/vagrant/xtests @@ -17,14 +17,15 @@ results=/vagrant/xtests # that tests will fail until the VM gets re-provisioned. sudo find $testcases -mtime +365 -printf "File %p has not been modified since %TY! Consider re-provisioning; tests will probably fail.\n" + # Long view tests -$exa $testcases/files -l | diff -q - $results/files_l || exit 1 +$exa $testcases/files -l | diff - $results/files_l || exit 1 $exa $testcases/files -lh | diff -q - $results/files_lh || exit 1 $exa $testcases/files -lhb | diff -q - $results/files_lhb || exit 1 $exa $testcases/files -lhB | diff -q - $results/files_lhb2 || exit 1 - $exa $testcases/attributes/dirs/empty-with-attribute -lh | diff -q - $results/empty || exit 1 + # Grid view tests COLUMNS=40 $exa $testcases/files | diff -q - $results/files_40 || exit 1 COLUMNS=80 $exa $testcases/files | diff -q - $results/files_80 || exit 1 @@ -32,6 +33,7 @@ COLUMNS=120 $exa $testcases/files | diff -q - $results/files_120 || exit 1 COLUMNS=160 $exa $testcases/files | diff -q - $results/files_160 || exit 1 COLUMNS=200 $exa $testcases/files | diff -q - $results/files_200 || exit 1 + # Long grid view tests COLUMNS=40 $exa $testcases/files -lG | diff -q - $results/files_lG_40 || exit 1 COLUMNS=80 $exa $testcases/files -lG | diff -q - $results/files_lG_80 || exit 1 @@ -39,29 +41,34 @@ COLUMNS=120 $exa $testcases/files -lG | diff -q - $results/files_lG_120 || exit COLUMNS=160 $exa $testcases/files -lG | diff -q - $results/files_lG_160 || exit 1 COLUMNS=200 $exa $testcases/files -lG | diff -q - $results/files_lG_200 || exit 1 + # Attributes $exa $testcases/attributes -l@T | diff -q - $results/attributes || exit 1 + # UIDs and GIDs $exa $testcases/passwd -lgh | diff -q - $results/passwd || exit 1 -# Permissions -$exa $testcases/permissions -lghR 2>&1 | diff -q - $results/permissions || exit 1 + +# Permissions, and current users and groups +sudo -u cassowary $exa $testcases/permissions -lghR 2>&1 | diff -q - $results/permissions_sudo || exit 1 + $exa $testcases/permissions -lghR 2>&1 | diff -q - $results/permissions || exit 1 + # File types $exa $testcases/file-types -1 2>&1 | diff -q - $results/file-types || exit 1 + # Ignores $exa $testcases/file-types/music.* -I "*.ogg" -1 2>&1 | diff -q - $results/ignores_ogg || exit 1 $exa $testcases/file-types/music.* -I "*.ogg|*.mp3" -1 2>&1 | diff -q - $results/empty || exit 1 -# Links -$exa $testcases/links -1 2>&1 | diff -q - $results/links_1 || exit 1 -$exa $testcases/links -T 2>&1 | diff -q - $results/links_T || exit 1 - -COLUMNS=80 $exa $testcases/links 2>&1 | diff -q - $results/links || exit 1 -$exa /proc/1/root -T 2>&1 | diff -q - $results/proc_1_root || exit 1 +# Links +COLUMNS=80 $exa $testcases/links 2>&1 | diff -q - $results/links || exit 1 + $exa $testcases/links -1 2>&1 | diff -q - $results/links_1 || exit 1 + $exa $testcases/links -T 2>&1 | diff -q - $results/links_T || exit 1 + $exa /proc/1/root -T 2>&1 | diff -q - $results/proc_1_root || exit 1 echo "All the tests passed!" -- GitLab