diff options
authorJohannes Sixt <>2020-01-07 04:53:10 (GMT)
committerJunio C Hamano <>2020-01-27 20:56:02 (GMT)
commite8a1c686aee560e07e4419f5adba1b1245289dd9 (patch)
parent1c9fd32fd2b5e1b8f2807d93f3a138d5846dbaf0 (diff)
t3504: do check for conflict marker after failed cherry-pick
The test with disabled rerere should make sure that the cherry-picked result does not have the conflict replaced with a recorded resolution. It attempts to do so by ensuring that the file content is _not_ equal to some other file. That by itself is a very dubious check because just about every random result of an incomplete cherry-pick would satisfy the condition. In this case, the intent was to check that the conflicting file does _not_ contain the resolved content. But the check actually uses the wrong reference file, but not the resolved content. Needless to say that the non-equality is satisfied. And, on top of it, it uses a commit that does not even touch the file that is checked. Do check for the expected result, which is content from both sides of the merge and merge conflicts. (The latter we check for just the middle separator for brevity.) As a side-effect, this also removes an incorrect use of test_must_fail. Signed-off-by: Johannes Sixt <> Signed-off-by: Denton Liu <> Signed-off-by: Junio C Hamano <>
1 files changed, 4 insertions, 2 deletions
diff --git a/t/ b/t/
index a267b2d..80a0d08 100755
--- a/t/
+++ b/t/
@@ -94,8 +94,10 @@ test_expect_success 'cherry-pick --rerere-autoupdate more than once' '
test_expect_success 'cherry-pick conflict without rerere' '
test_config rerere.enabled false &&
- test_must_fail git cherry-pick master &&
- test_must_fail test_cmp expect foo
+ test_must_fail git cherry-pick foo-master &&
+ grep ===== foo &&
+ grep foo-dev foo &&
+ grep foo-master foo