mirror of
https://github.com/git/git.git
synced 2024-11-24 18:33:43 +08:00
[PATCH] diff: consolidate test helper script pieces.
There were duplicate script pieces to help comparing diff output, which this patch consolidates into the t/diff-lib.sh library. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
1d9e6f92bc
commit
edb0c72428
35
t/diff-lib.sh
Normal file
35
t/diff-lib.sh
Normal file
@ -0,0 +1,35 @@
|
||||
:
|
||||
|
||||
_x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
|
||||
_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
|
||||
sanitize_diff_raw='/^:/s/ '"$_x40"' '"$_x40"' \([A-Z]\)[0-9]* / X X \1# /'
|
||||
compare_diff_raw () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
# Also we do not check SHA1 hash generation in this test, which
|
||||
# is a job for t0000-basic.sh
|
||||
|
||||
sed -e "$sanitize_diff_raw" <"$1" >.tmp-1
|
||||
sed -e "$sanitize_diff_raw" <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
|
||||
sanitize_diff_raw_z='/^:/s/ '"$_x40"' '"$_x40"' \([A-Z]\)[0-9]*$/ X X \1#/'
|
||||
compare_diff_raw_z () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
# Also we do not check SHA1 hash generation in this test, which
|
||||
# is a job for t0000-basic.sh
|
||||
|
||||
tr '\0' '\012' <"$1" | sed -e "$sanitize_diff_raw_z" >.tmp-1
|
||||
tr '\0' '\012' <"$2" | sed -e "$sanitize_diff_raw_z" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
|
||||
compare_diff_patch () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
sed -e '/^[dis]*imilarity index [0-9]*%$/d' <"$1" >.tmp-1
|
||||
sed -e '/^[dis]*imilarity index [0-9]*%$/d' <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
@ -7,14 +7,7 @@ test_description='More rename detection
|
||||
|
||||
'
|
||||
. ./test-lib.sh
|
||||
|
||||
compare_diff_patch () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
sed -e '/^similarity index [0-9]*%$/d' <"$1" >.tmp-1
|
||||
sed -e '/^similarity index [0-9]*%$/d' <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
. ../diff-lib.sh ;# test-lib chdir's into trash
|
||||
|
||||
test_expect_success \
|
||||
'prepare reference tree' \
|
||||
|
@ -7,28 +7,7 @@ test_description='Same rename detection as t4003 but testing diff-raw.
|
||||
|
||||
'
|
||||
. ./test-lib.sh
|
||||
|
||||
_x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
|
||||
_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
|
||||
sanitize_diff_raw='s/ '"$_x40"' '"$_x40"' \([A-Z]\)[0-9]* / X X \1# /'
|
||||
compare_diff_raw () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
# Also we do not check SHA1 hash generation in this test, which
|
||||
# is a job for t0000-basic.sh
|
||||
|
||||
sed -e "$sanitize_diff_raw" <"$1" >.tmp-1
|
||||
sed -e "$sanitize_diff_raw" <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
|
||||
compare_diff_patch () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
sed -e '/^similarity index [0-9]*%$/d' <"$1" >.tmp-1
|
||||
sed -e '/^similarity index [0-9]*%$/d' <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
. ../diff-lib.sh ;# test-lib chdir's into trash
|
||||
|
||||
test_expect_success \
|
||||
'prepare reference tree' \
|
||||
|
@ -7,20 +7,7 @@ test_description='Rename interaction with pathspec.
|
||||
|
||||
'
|
||||
. ./test-lib.sh
|
||||
|
||||
_x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
|
||||
_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
|
||||
sanitize_diff_raw='s/ '"$_x40"' '"$_x40"' \([A-Z]\)[0-9]* / X X \1# /'
|
||||
compare_diff_raw () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
# Also we do not check SHA1 hash generation in this test, which
|
||||
# is a job for t0000-basic.sh
|
||||
|
||||
sed -e "$sanitize_diff_raw" <"$1" >.tmp-1
|
||||
sed -e "$sanitize_diff_raw" <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
. ../diff-lib.sh ;# test-lib chdir's into trash
|
||||
|
||||
test_expect_success \
|
||||
'prepare reference tree' \
|
||||
|
@ -22,20 +22,7 @@ four changes in total.
|
||||
Further, with -B and -M together, these should turn into two renames.
|
||||
'
|
||||
. ./test-lib.sh
|
||||
|
||||
_x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
|
||||
_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
|
||||
sanitize_diff_raw='s/ '"$_x40"' '"$_x40"' \([CDNR]\)[0-9]* / X X \1# /'
|
||||
compare_diff_raw () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
# Also we do not check SHA1 hash generation in this test, which
|
||||
# is a job for t0000-basic.sh
|
||||
|
||||
sed -e "$sanitize_diff_raw" <"$1" >.tmp-1
|
||||
sed -e "$sanitize_diff_raw" <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
. ../diff-lib.sh ;# test-lib chdir's into trash
|
||||
|
||||
test_expect_success \
|
||||
setup \
|
||||
|
@ -7,28 +7,7 @@ test_description='Same rename detection as t4003 but testing diff-raw -z.
|
||||
|
||||
'
|
||||
. ./test-lib.sh
|
||||
|
||||
_x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'
|
||||
_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
|
||||
sanitize_diff_raw='/^:/s/ '"$_x40"' '"$_x40"' \([A-Z]\)[0-9]*$/ X X \1#/'
|
||||
compare_diff_raw () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
# Also we do not check SHA1 hash generation in this test, which
|
||||
# is a job for t0000-basic.sh
|
||||
|
||||
tr '\0' '\012' <"$1" | sed -e "$sanitize_diff_raw" >.tmp-1
|
||||
tr '\0' '\012' <"$2" | sed -e "$sanitize_diff_raw" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
|
||||
compare_diff_patch () {
|
||||
# When heuristics are improved, the score numbers would change.
|
||||
# Ignore them while comparing.
|
||||
sed -e '/^similarity index [0-9]*%$/d' <"$1" >.tmp-1
|
||||
sed -e '/^similarity index [0-9]*%$/d' <"$2" >.tmp-2
|
||||
diff -u .tmp-1 .tmp-2 && rm -f .tmp-1 .tmp-2
|
||||
}
|
||||
. ../diff-lib.sh ;# test-lib chdir's into trash
|
||||
|
||||
test_expect_success \
|
||||
'prepare reference tree' \
|
||||
@ -63,7 +42,7 @@ EOF
|
||||
|
||||
test_expect_success \
|
||||
'validate output from rename/copy detection (#1)' \
|
||||
'compare_diff_raw current expected'
|
||||
'compare_diff_raw_z current expected'
|
||||
|
||||
# make sure diff-helper can grok it.
|
||||
mv current diff-raw
|
||||
@ -120,7 +99,7 @@ EOF
|
||||
|
||||
test_expect_success \
|
||||
'validate output from rename/copy detection (#2)' \
|
||||
'compare_diff_raw current expected'
|
||||
'compare_diff_raw_z current expected'
|
||||
|
||||
# make sure diff-helper can grok it.
|
||||
mv current diff-raw
|
||||
@ -173,7 +152,7 @@ EOF
|
||||
|
||||
test_expect_success \
|
||||
'validate output from rename/copy detection (#3)' \
|
||||
'compare_diff_raw current expected'
|
||||
'compare_diff_raw_z current expected'
|
||||
|
||||
# make sure diff-helper can grok it.
|
||||
mv current diff-raw
|
||||
|
Loading…
Reference in New Issue
Block a user