The rsync tests are unstable since the directory listing includes the
authoranton <anton@openbsd.org>
Mon, 10 Jul 2023 17:46:29 +0000 (17:46 +0000)
committeranton <anton@openbsd.org>
Mon, 10 Jul 2023 17:46:29 +0000 (17:46 +0000)
last modification timestamp. One directory represents the one rsync is
operating on and the other is our reference to compare against. If the
current time managed to tick up to the next minute between creation of
the two directories, the timestamps will differ.

Improving the normalization in the findme helper makes the tests stable.

ok bluhm@ claudio@

regress/usr.bin/rsync/lib.sh

index 37732b6..6d7b51b 100644 (file)
@@ -65,9 +65,14 @@ findme ()
     fi
     (
         cd "$1" ; shift
-        # Cut out the inode number and blocks used.
-        # Maybe later also cut out size in bytes for directories.
-        find "$@" -ls | sed 's/^ *[0-9]* *[0-9]* *//' | sort
+        # Remove unstable fields:
+        #    1: inode
+        #    2: size in blocks
+        # 8-10: last modification time
+        find "$@" -ls |
+        sed -e 's/[[:space:]][[:space:]]*/ /g' |
+        cut -d ' ' -f 3-7,11- |
+        sort
     )
 }