From 6d7c17ec9d4b6c384648d5bc28bc234e3083c66e Mon Sep 17 00:00:00 2001 From: Jacob Keller Date: Sat, 9 Dec 2017 21:40:12 +0100 Subject: diff: add tests for --relative without optional prefix value We already have tests for --relative, but they currently only test when a prefix has been provided. This fails to test the case where --relative by itself should use the current directory as the prefix. Teach the check_$type functions to take a directory argument to indicate which subdirectory to run the git commands in. Add a new test which uses this to test --relative without a prefix value. Signed-off-by: Jacob Keller Signed-off-by: Junio C Hamano --- t/t4045-diff-relative.sh | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 't') diff --git a/t/t4045-diff-relative.sh b/t/t4045-diff-relative.sh index 3950f5034..22fcacfa3 100755 --- a/t/t4045-diff-relative.sh +++ b/t/t4045-diff-relative.sh @@ -13,6 +13,7 @@ test_expect_success 'setup' ' ' check_diff() { +dir=$1; shift expect=$1; shift cat >expected <actual && + git -C '$dir' diff -p $* HEAD^ >actual && test_cmp expected actual " } check_numstat() { +dir=$1; shift expect=$1; shift cat >expected <expected && - git diff --numstat $* HEAD^ >actual && + git -C '$dir' diff --numstat $* HEAD^ >actual && test_cmp expected actual " } check_stat() { +dir=$1; shift expect=$1; shift cat >expected <actual && + git -C '$dir' diff --stat $* HEAD^ >actual && test_i18ncmp expected actual " } check_raw() { +dir=$1; shift expect=$1; shift cat >expected <actual && + git -C '$dir' diff --no-abbrev --raw $* HEAD^ >actual && test_cmp expected actual " } -for type in diff numstat stat raw; do - check_$type file2 --relative=subdir/ - check_$type file2 --relative=subdir - check_$type dir/file2 --relative=sub +for type in diff numstat stat raw +do + check_$type . file2 --relative=subdir/ + check_$type . file2 --relative=subdir + check_$type subdir file2 --relative + check_$type . dir/file2 --relative=sub done test_done -- cgit v1.2.1 From f1e4fb2462894585d88c190aa9f16826f45ebbeb Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sat, 9 Dec 2017 21:40:13 +0100 Subject: t4045: reindent to make helpers readable Signed-off-by: Junio C Hamano --- t/t4045-diff-relative.sh | 104 +++++++++++++++++++++++++---------------------- 1 file changed, 56 insertions(+), 48 deletions(-) (limited to 't') diff --git a/t/t4045-diff-relative.sh b/t/t4045-diff-relative.sh index 22fcacfa3..6471a6870 100755 --- a/t/t4045-diff-relative.sh +++ b/t/t4045-diff-relative.sh @@ -12,60 +12,68 @@ test_expect_success 'setup' ' git commit -m one ' -check_diff() { -dir=$1; shift -expect=$1; shift -cat >expected <actual && - test_cmp expected actual -" +check_diff () { + dir=$1 + shift + expect=$1 + shift + cat >expected <<-EOF + diff --git a/$expect b/$expect + new file mode 100644 + index 0000000..25c05ef + --- /dev/null + +++ b/$expect + @@ -0,0 +1 @@ + +other content + EOF + test_expect_success "-p $*" " + git -C '$dir' diff -p $* HEAD^ >actual && + test_cmp expected actual + " } -check_numstat() { -dir=$1; shift -expect=$1; shift -cat >expected <expected && - git -C '$dir' diff --numstat $* HEAD^ >actual && - test_cmp expected actual -" +check_numstat () { + dir=$1 + shift + expect=$1 + shift + cat >expected <<-EOF + 1 0 $expect + EOF + test_expect_success "--numstat $*" " + echo '1 0 $expect' >expected && + git -C '$dir' diff --numstat $* HEAD^ >actual && + test_cmp expected actual + " } -check_stat() { -dir=$1; shift -expect=$1; shift -cat >expected <actual && - test_i18ncmp expected actual -" +check_stat () { + dir=$1 + shift + expect=$1 + shift + cat >expected <<-EOF + $expect | 1 + + 1 file changed, 1 insertion(+) + EOF + test_expect_success "--stat $*" " + git -C '$dir' diff --stat $* HEAD^ >actual && + test_i18ncmp expected actual + " } -check_raw() { -dir=$1; shift -expect=$1; shift -cat >expected <actual && - test_cmp expected actual -" +check_raw () { + dir=$1 + shift + expect=$1 + shift + cat >expected <<-EOF + :000000 100644 0000000000000000000000000000000000000000 25c05ef3639d2d270e7fe765a67668f098092bc5 A $expect + EOF + test_expect_success "--raw $*" " + git -C '$dir' diff --no-abbrev --raw $* HEAD^ >actual && + test_cmp expected actual + " } for type in diff numstat stat raw -- cgit v1.2.1