test: factor out test_diff_file_

A following commit will use this new function in a public test
function.
This commit is contained in:
David Bremner 2021-08-04 07:42:31 -03:00
parent f2e6f311c7
commit 78045301e7

View file

@ -402,17 +402,8 @@ test_expect_equal () {
fi fi
} }
# Like test_expect_equal, but takes two filenames. test_diff_file_ () {
test_expect_equal_file () {
local file1 file2 testname basename1 basename2 local file1 file2 testname basename1 basename2
exec 1>&6 2>&7 # Restore stdout and stderr
if [ -z "$inside_subtest" ]; then
error "bug in the test script: test_expect_equal_file without test_begin_subtest"
fi
inside_subtest=
test "$#" = 2 ||
error "bug in the test script: not 2 parameters to test_expect_equal_file"
file1="$1" file1="$1"
file2="$2" file2="$2"
if ! test_skip "$test_subtest_name" if ! test_skip "$test_subtest_name"
@ -430,6 +421,19 @@ test_expect_equal_file () {
fi fi
} }
# Like test_expect_equal, but takes two filenames.
test_expect_equal_file () {
exec 1>&6 2>&7 # Restore stdout and stderr
if [ -z "$inside_subtest" ]; then
error "bug in the test script: test_expect_equal_file without test_begin_subtest"
fi
inside_subtest=
test "$#" = 2 ||
error "bug in the test script: not 2 parameters to test_expect_equal_file"
test_diff_file_ "$1" "$2"
}
# Like test_expect_equal, but arguments are JSON expressions to be # Like test_expect_equal, but arguments are JSON expressions to be
# canonicalized before diff'ing. If an argument cannot be parsed, it # canonicalized before diff'ing. If an argument cannot be parsed, it
# is used unchanged so that there's something to diff against. # is used unchanged so that there's something to diff against.