* [PATCH] t7610-mergetool: add test cases for tempfile behavior
@ 2016-03-09 5:36 David Aguilar
2016-03-09 20:43 ` Junio C Hamano
0 siblings, 1 reply; 2+ messages in thread
From: David Aguilar @ 2016-03-09 5:36 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Git Mailing List, Charles Bailey
Ensure that mergetool.keepTemporaries is honored when resolving
delete/delete conflicts.
Ensure that stderr stays empty, and that worktree directories
created by mergetool to are removed.
Signed-off-by: David Aguilar <davvid@gmail.com>
---
t/t7610-mergetool.sh | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh
index f1668be..cf2eceb 100755
--- a/t/t7610-mergetool.sh
+++ b/t/t7610-mergetool.sh
@@ -273,6 +273,40 @@ test_expect_success 'mergetool delete/delete conflict' '
git reset --hard HEAD
'
+test_expect_success 'mergetool honors tempfile config for deleted files' '
+ test_config mergetool.keepTemporaries false &&
+ ! git merge move-to-b &&
+ echo d | git mergetool a/a/file.txt &&
+ ! test -d a &&
+ git reset --hard HEAD
+'
+
+test_expect_success 'mergetool produces no errors when keepBackup is used' '
+ test_config mergetool.keepBackup true &&
+ ! git merge move-to-b &&
+ : >expect &&
+ echo d | git mergetool a/a/file.txt 2>actual &&
+ test_cmp expect actual &&
+ ! test -d a &&
+ git reset --hard HEAD
+'
+
+test_expect_success 'mergetool keeps tempfiles when aborting delete/delete' '
+ test_config mergetool.keepTemporaries true &&
+ ! git merge move-to-b &&
+ ! (echo a; echo n) | git mergetool a/a/file.txt &&
+ test -d a/a &&
+ cat >expect <<\-EOF &&
+file_BASE_.txt
+file_LOCAL_.txt
+file_REMOTE_.txt
+-EOF
+ ls -1 a/a | sed -e "s/[0-9]*//g" >actual &&
+ test_cmp expect actual &&
+ git clean -fdx &&
+ git reset --hard HEAD
+'
+
test_expect_success 'deleted vs modified submodule' '
git checkout -b test6 branch1 &&
git submodule update -N &&
--
2.8.0.rc1.3.g475af66.dirty
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] t7610-mergetool: add test cases for tempfile behavior
2016-03-09 5:36 [PATCH] t7610-mergetool: add test cases for tempfile behavior David Aguilar
@ 2016-03-09 20:43 ` Junio C Hamano
0 siblings, 0 replies; 2+ messages in thread
From: Junio C Hamano @ 2016-03-09 20:43 UTC (permalink / raw)
To: David Aguilar; +Cc: Git Mailing List, Charles Bailey
David Aguilar <davvid@gmail.com> writes:
> Ensure that mergetool.keepTemporaries is honored when resolving
> delete/delete conflicts.
>
> Ensure that stderr stays empty, and that worktree directories
> created by mergetool to are removed.
>
> Signed-off-by: David Aguilar <davvid@gmail.com>
> ---
> t/t7610-mergetool.sh | 34 ++++++++++++++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
Thanks.
> diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh
> index f1668be..cf2eceb 100755
> --- a/t/t7610-mergetool.sh
> +++ b/t/t7610-mergetool.sh
> @@ -273,6 +273,40 @@ test_expect_success 'mergetool delete/delete conflict' '
> git reset --hard HEAD
> '
>
> +test_expect_success 'mergetool honors tempfile config for deleted files' '
> + test_config mergetool.keepTemporaries false &&
> + ! git merge move-to-b &&
We'd like to catch a newly built Git segfaulting, so let's change
this to:
test_must_fail git merge move-to-b &&
Two other "! git merge" in this patch need be changed the same way.
> + echo d | git mergetool a/a/file.txt &&
> + ! test -d a &&
> + git reset --hard HEAD
> +'
> +
> +test_expect_success 'mergetool produces no errors when keepBackup is used' '
> + test_config mergetool.keepBackup true &&
> + ! git merge move-to-b &&
> + : >expect &&
> + echo d | git mergetool a/a/file.txt 2>actual &&
> + test_cmp expect actual &&
> + ! test -d a &&
> + git reset --hard HEAD
> +'
> +
> +test_expect_success 'mergetool keeps tempfiles when aborting delete/delete' '
> + test_config mergetool.keepTemporaries true &&
> + ! git merge move-to-b &&
> + ! (echo a; echo n) | git mergetool a/a/file.txt &&
> + test -d a/a &&
> + cat >expect <<\-EOF &&
> +file_BASE_.txt
> +file_LOCAL_.txt
> +file_REMOTE_.txt
> +-EOF
Let's use EOF not -EOF as the end marker for here document, but use
a dash in front of the marker to allow us indent the contents of the
here document, like this:
cat >expect <<-\EOF &&
file_BASE_.txt
file_LOCAL_.txt
file_REMOTE_.txt
EOF
While at it, let's lose the extra SP after "cat".
> + ls -1 a/a | sed -e "s/[0-9]*//g" >actual &&
> + test_cmp expect actual &&
> + git clean -fdx &&
> + git reset --hard HEAD
> +'
> test_expect_success 'deleted vs modified submodule' '
> git checkout -b test6 branch1 &&
> git submodule update -N &&
I'll queue this patch with the above-mentioned fixups squashed in,
but I suspect that another new test added by the previous patches
have the same "! git merge" issue we'd want to correct before we
start to move the topic to 'next' and to 'master', so perhaps you'd
want to reroll these three patches as two patches (i.e. squashing
this one to 1/2, correcting the test in 2/2) after 2.8 final ships?
Thanks.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-03-09 20:43 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-09 5:36 [PATCH] t7610-mergetool: add test cases for tempfile behavior David Aguilar
2016-03-09 20:43 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).