git: 608d3c746d1b - stable/15 - diff: Tweak recursion tests
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 18 Feb 2026 00:25:55 UTC
The branch stable/15 has been updated by des:
URL: https://cgit.FreeBSD.org/src/commit/?id=608d3c746d1baf9f96b1655564582c7742465b16
commit 608d3c746d1baf9f96b1655564582c7742465b16
Author: Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2026-02-13 20:18:30 +0000
Commit: Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2026-02-18 00:15:34 +0000
diff: Tweak recursion tests
The -r flag is not required to compare two directories; it is only
required to compare them recursively, i.e. descend into their common
subdirectories. Adjust tests that use -r needlessly, and adjust the
dirloop test to verify that these two cases remain distinct.
MFC after: 1 week
Sponsored by: Klara, Inc.
Reviewed by: kevans
Differential Revision: https://reviews.freebsd.org/D55262
(cherry picked from commit b2532432971fbd9339a9a49eca1b532978bb6d48)
---
usr.bin/diff/tests/diff_test.sh | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/usr.bin/diff/tests/diff_test.sh b/usr.bin/diff/tests/diff_test.sh
index 3afd12355a80..872103b24cef 100755
--- a/usr.bin/diff/tests/diff_test.sh
+++ b/usr.bin/diff/tests/diff_test.sh
@@ -1,4 +1,3 @@
-
atf_test_case simple
atf_test_case unified
atf_test_case header
@@ -191,19 +190,19 @@ brief_format_body()
atf_check \
-s exit:1 \
-o inline:"Files A/test-file and B/test-file differ\n" \
- diff -rq A B
+ diff -q A B
atf_check diff -rq A C
atf_check \
-s exit:1 \
-o inline:"Only in D: another-test-file\n" \
- diff -rq A D
+ diff -q A D
atf_check \
-s exit:1 \
-o inline:"Files A/another-test-file and D/another-test-file differ\n" \
- diff -Nrq A D
+ diff -Nq A D
}
Bflag_body()
@@ -225,9 +224,9 @@ Nflag_body()
{
atf_check -x 'printf "foo" > A'
- atf_check -s exit:1 -o ignore -e ignore diff -N A NOFILE
- atf_check -s exit:1 -o ignore -e ignore diff -N NOFILE A
- atf_check -s exit:2 -o ignore -e ignore diff -N NOFILE1 NOFILE2
+ atf_check -s exit:1 -o ignore -e ignore diff -N A NOFILE
+ atf_check -s exit:1 -o ignore -e ignore diff -N NOFILE A
+ atf_check -s exit:2 -o ignore -e ignore diff -N NOFILE1 NOFILE2
}
tabsize_body()
@@ -339,23 +338,23 @@ noderef_body()
atf_check ln -s $(pwd)/test-file B/test-file
- atf_check -o empty -s exit:0 diff -r A B
+ atf_check -o empty -s exit:0 diff A B
atf_check -o inline:"File A/test-file is a file while file B/test-file is a symbolic link\n" \
- -s exit:1 diff -r --no-dereference A B
+ -s exit:1 diff --no-dereference A B
# both test files are now the same symbolic link
atf_check rm A/test-file
atf_check ln -s $(pwd)/test-file A/test-file
- atf_check -o empty -s exit:0 diff -r A B
- atf_check -o empty -s exit:0 diff -r --no-dereference A B
+ atf_check -o empty -s exit:0 diff A B
+ atf_check -o empty -s exit:0 diff --no-dereference A B
# make test files different symbolic links, but same contents
atf_check unlink A/test-file
atf_check ln -s $(pwd)/test-file2 A/test-file
- atf_check -o empty -s exit:0 diff -r A B
- atf_check -o inline:"Symbolic links A/test-file and B/test-file differ\n" -s exit:1 diff -r --no-dereference A B
+ atf_check -o empty -s exit:0 diff A B
+ atf_check -o inline:"Symbolic links A/test-file and B/test-file differ\n" -s exit:1 diff --no-dereference A B
}
ignorecase_body()
@@ -366,7 +365,7 @@ ignorecase_body()
atf_check -x "echo hello > A/foo"
atf_check -x "echo hello > B/FOO"
- atf_check -o empty -s exit:0 diff -u -r --ignore-file-name-case A B
+ atf_check -o empty -s exit:0 diff -u --ignore-file-name-case A B
}
dirloop_head()
@@ -378,6 +377,9 @@ dirloop_body()
atf_check mkdir -p a/foo/bar
atf_check ln -s .. a/foo/bar/up
atf_check cp -a a b
+ atf_check \
+ -o inline:"Common subdirectories: a/foo and b/foo\n" \
+ diff a b
atf_check \
-e match:"a/foo/bar/up: Directory loop detected" \
-e match:"b/foo/bar/up: Directory loop detected" \