X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=t%2Ft4003-diff-rename-1.sh;h=27519704d46d95deddbe8af75f985ede16bb4aaf;hb=22293b9c41778bb60f3b07355e1b8e421a503702;hp=3dde165e3a120e7edf4a3aac685ce6ba56c870da;hpb=da196b603e665a81943e5df4e8daa3d981846624;p=git.git diff --git a/t/t4003-diff-rename-1.sh b/t/t4003-diff-rename-1.sh old mode 100644 new mode 100755 index 3dde165e..27519704 --- a/t/t4003-diff-rename-1.sh +++ b/t/t4003-diff-rename-1.sh @@ -7,11 +7,13 @@ test_description='More rename detection ' . ./test-lib.sh +. ../diff-lib.sh ;# test-lib chdir's into trash test_expect_success \ 'prepare reference tree' \ 'cat ../../COPYING >COPYING && - git-update-cache --add COPYING && + echo frotz >rezrov && + git-update-index --add COPYING rezrov && tree=$(git-write-tree) && echo $tree' @@ -20,110 +22,107 @@ test_expect_success \ 'sed -e 's/HOWEVER/However/' COPYING.1 && sed -e 's/GPL/G.P.L/g' COPYING.2 && rm -f COPYING && - git-update-cache --add --remove COPYING COPYING.?' + git-update-index --add --remove COPYING COPYING.?' -# tree has COPYING. work tree has COPYING.1 and COPYING.2, -# both are slightly edited. So we say you copy-and-edit one, -# and rename-and-edit the other. +# tree has COPYING and rezrov. work tree has COPYING.1 and COPYING.2, +# both are slightly edited, and unchanged rezrov. So we say you +# copy-and-edit one, and rename-and-edit the other. We do not say +# anything about rezrov. -GIT_DIFF_OPTS=--unified=0 git-diff-cache -M $tree | -sed -e 's/\([0-9][0-9]*\)/#/g' >current && +GIT_DIFF_OPTS=--unified=0 git-diff-index -M -p $tree >current cat >expected <<\EOF -diff --git a/COPYING b/COPYING.# -similarity index #% +diff --git a/COPYING b/COPYING.1 copy from COPYING -copy to COPYING.# +copy to COPYING.1 --- a/COPYING -+++ b/COPYING.# -@@ -# +# @@ -- HOWEVER, in order to allow a migration to GPLv# if that seems like -+ However, in order to allow a migration to GPLv# if that seems like -diff --git a/COPYING b/COPYING.# -similarity index #% -rename old COPYING -rename new COPYING.# ++++ b/COPYING.1 +@@ -6 +6 @@ +- HOWEVER, in order to allow a migration to GPLv3 if that seems like ++ However, in order to allow a migration to GPLv3 if that seems like +diff --git a/COPYING b/COPYING.2 +rename from COPYING +rename to COPYING.2 --- a/COPYING -+++ b/COPYING.# -@@ -# +# @@ ++++ b/COPYING.2 +@@ -2 +2 @@ - Note that the only valid version of the GPL as far as this project + Note that the only valid version of the G.P.L as far as this project -@@ -# +# @@ -- HOWEVER, in order to allow a migration to GPLv# if that seems like -+ HOWEVER, in order to allow a migration to G.P.Lv# if that seems like -@@ -# +# @@ -- This file is licensed under the GPL v#, or a later version -+ This file is licensed under the G.P.L v#, or a later version +@@ -6 +6 @@ +- HOWEVER, in order to allow a migration to GPLv3 if that seems like ++ HOWEVER, in order to allow a migration to G.P.Lv3 if that seems like +@@ -12 +12 @@ +- This file is licensed under the GPL v2, or a later version ++ This file is licensed under the G.P.L v2, or a later version EOF test_expect_success \ - 'validate output from rename/copy detection' \ - 'diff -u current expected' + 'validate output from rename/copy detection (#1)' \ + 'compare_diff_patch current expected' test_expect_success \ 'prepare work tree again' \ 'mv COPYING.2 COPYING && - git-update-cache --add --remove COPYING COPYING.1 COPYING.2' + git-update-index --add --remove COPYING COPYING.1 COPYING.2' -# tree has COPYING. work tree has COPYING and COPYING.1, -# both are slightly edited. So we say you edited one, -# and copy-and-edit the other. +# tree has COPYING and rezrov. work tree has COPYING and COPYING.1, +# both are slightly edited, and unchanged rezrov. So we say you +# edited one, and copy-and-edit the other. We do not say +# anything about rezrov. -GIT_DIFF_OPTS=--unified=0 git-diff-cache -C $tree | -sed -e 's/\([0-9][0-9]*\)/#/g' >current +GIT_DIFF_OPTS=--unified=0 git-diff-index -C -p $tree >current cat >expected <<\EOF -diff --git a/COPYING b/COPYING.# -similarity index #% -copy from COPYING -copy to COPYING.# ---- a/COPYING -+++ b/COPYING.# -@@ -# +# @@ -- HOWEVER, in order to allow a migration to GPLv# if that seems like -+ However, in order to allow a migration to GPLv# if that seems like diff --git a/COPYING b/COPYING --- a/COPYING +++ b/COPYING -@@ -# +# @@ +@@ -2 +2 @@ - Note that the only valid version of the GPL as far as this project + Note that the only valid version of the G.P.L as far as this project -@@ -# +# @@ -- HOWEVER, in order to allow a migration to GPLv# if that seems like -+ HOWEVER, in order to allow a migration to G.P.Lv# if that seems like -@@ -# +# @@ -- This file is licensed under the GPL v#, or a later version -+ This file is licensed under the G.P.L v#, or a later version +@@ -6 +6 @@ +- HOWEVER, in order to allow a migration to GPLv3 if that seems like ++ HOWEVER, in order to allow a migration to G.P.Lv3 if that seems like +@@ -12 +12 @@ +- This file is licensed under the GPL v2, or a later version ++ This file is licensed under the G.P.L v2, or a later version +diff --git a/COPYING b/COPYING.1 +copy from COPYING +copy to COPYING.1 +--- a/COPYING ++++ b/COPYING.1 +@@ -6 +6 @@ +- HOWEVER, in order to allow a migration to GPLv3 if that seems like ++ However, in order to allow a migration to GPLv3 if that seems like EOF test_expect_success \ - 'validate output from rename/copy detection' \ - 'diff -u current expected' + 'validate output from rename/copy detection (#2)' \ + 'compare_diff_patch current expected' test_expect_success \ 'prepare work tree once again' \ 'cat ../../COPYING >COPYING && - git-update-cache --add --remove COPYING COPYING.1' + git-update-index --add --remove COPYING COPYING.1' -# tree has COPYING. work tree has the same COPYING and COPYING.1, -# but COPYING is not edited. We say you copy-and-edit COPYING.1; -# this is only possible because -C mode now reports the unmodified -# file to the diff-core. +# tree has COPYING and rezrov. work tree has COPYING and COPYING.1, +# but COPYING is not edited. We say you copy-and-edit COPYING.1; this +# is only possible because -C mode now reports the unmodified file to +# the diff-core. Unchanged rezrov, although being fed to +# git-diff-index as well, should not be mentioned. -GIT_DIFF_OPTS=--unified=0 git-diff-cache -C $tree | -sed -e 's/\([0-9][0-9]*\)/#/g' >current +GIT_DIFF_OPTS=--unified=0 \ + git-diff-index -C --find-copies-harder -p $tree >current cat >expected <<\EOF -diff --git a/COPYING b/COPYING.# -similarity index #% +diff --git a/COPYING b/COPYING.1 copy from COPYING -copy to COPYING.# +copy to COPYING.1 --- a/COPYING -+++ b/COPYING.# -@@ -# +# @@ -- HOWEVER, in order to allow a migration to GPLv# if that seems like -+ However, in order to allow a migration to GPLv# if that seems like ++++ b/COPYING.1 +@@ -6 +6 @@ +- HOWEVER, in order to allow a migration to GPLv3 if that seems like ++ However, in order to allow a migration to GPLv3 if that seems like EOF test_expect_success \ - 'validate output from rename/copy detection' \ - 'diff -u current expected' + 'validate output from rename/copy detection (#3)' \ + 'compare_diff_patch current expected' test_done