summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorpeterj <peterj@FreeBSD.org>2013-02-25 19:05:40 +0000
committerpeterj <peterj@FreeBSD.org>2013-02-25 19:05:40 +0000
commit975818ab0c99ccf77464789449cae62fca1a912e (patch)
treec8b7b823c9cf24caa2e718b616f93dd460e5e1cb /tools
parent6767648546e38334b38b0dddec8a361584d735af (diff)
downloadFreeBSD-src-975818ab0c99ccf77464789449cae62fca1a912e.zip
FreeBSD-src-975818ab0c99ccf77464789449cae62fca1a912e.tar.gz
Enhance test(1) by adding provision to compare any combination of the
access, birth, change and modify times of two files, instead of only being able to compare modify times. The builtin test in sh(1) will automagically acquire the same expansion. Approved by: grog MFC after: 2 weeks
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/bin/test/regress.sh65
1 files changed, 64 insertions, 1 deletions
diff --git a/tools/regression/bin/test/regress.sh b/tools/regression/bin/test/regress.sh
index 9229551..117a7e2 100644
--- a/tools/regression/bin/test/regress.sh
+++ b/tools/regression/bin/test/regress.sh
@@ -52,7 +52,7 @@ t ()
}
count=0
-echo "1..130"
+echo "1..266"
t 0 'b = b'
t 0 'b == b'
@@ -194,3 +194,66 @@ t 1 '\( ! -a \)'
t 0 '\( -n -o \)'
t 1 '\( -z -o \)'
t 1 '\( ! -o \)'
+
+# Test all file timestamp comparison operators
+s() {
+ t ${1} "${35} -nt ${36}"
+ t ${2} "${35} -ntaa ${36}"
+ t ${3} "${35} -ntab ${36}"
+ t ${4} "${35} -ntac ${36}"
+ t ${5} "${35} -ntam ${36}"
+ t ${6} "${35} -ntba ${36}"
+ t ${7} "${35} -ntbb ${36}"
+ t ${8} "${35} -ntbc ${36}"
+ t ${9} "${35} -ntbm ${36}"
+ t ${10} "${35} -ntca ${36}"
+ t ${11} "${35} -ntcb ${36}"
+ t ${12} "${35} -ntcc ${36}"
+ t ${13} "${35} -ntcm ${36}"
+ t ${14} "${35} -ntma ${36}"
+ t ${15} "${35} -ntmb ${36}"
+ t ${16} "${35} -ntmc ${36}"
+ t ${17} "${35} -ntmm ${36}"
+ t ${18} "${35} -ot ${36}"
+ t ${19} "${35} -otaa ${36}"
+ t ${20} "${35} -otab ${36}"
+ t ${21} "${35} -otac ${36}"
+ t ${22} "${35} -otam ${36}"
+ t ${23} "${35} -otba ${36}"
+ t ${24} "${35} -otbb ${36}"
+ t ${25} "${35} -otbc ${36}"
+ t ${26} "${35} -otbm ${36}"
+ t ${27} "${35} -otca ${36}"
+ t ${28} "${35} -otcb ${36}"
+ t ${29} "${35} -otcc ${36}"
+ t ${30} "${35} -otcm ${36}"
+ t ${31} "${35} -otma ${36}"
+ t ${32} "${35} -otmb ${36}"
+ t ${33} "${35} -otmc ${36}"
+ t ${34} "${35} -otmm ${36}"
+}
+
+a=/tmp/test$$.1
+b=/tmp/test$$.2
+trap "rm -f $a $b" EXIT
+
+# Tests 131-164
+s 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 $a $b
+
+touch $a
+# Tests 165-198
+s 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 $a $b
+
+sleep 2 # Ensure $b is newer than $a
+touch $b
+# Tests 199-232
+s 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 $a $b
+
+sleep 2
+echo >$b # Updates mtime & ctime
+sleep 2
+touch -A 01 -a $b
+
+# $b now has ctime > mtime > atime > btime
+# Tests 233-266
+s 1 1 0 1 1 1 1 1 1 0 0 1 0 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 1 1 1 1 0 1 $b $b
OpenPOWER on IntegriCloud