git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "Elijah Newren via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Elijah Newren <newren@gmail.com>, Elijah Newren <newren@gmail.com>
Subject: [PATCH v2 10/11] t642[23]: be more flexible for add/add conflicts involving pair renames
Date: Sat, 08 Aug 2020 17:01:19 +0000	[thread overview]
Message-ID: <a9a02a0ca51f16b07fe0b28d16f5a3c2888227ca.1596906081.git.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.827.v2.git.git.1596906081.gitgitgadget@gmail.com>

From: Elijah Newren <newren@gmail.com>

Much like the last commit accepted 'add/add' and 'rename/add'
interchangably, we also want to do the same for 'add/add' and
'rename/rename'.  This also allows us to avoid the ambiguity in meaning
with 'rename/rename' (is it two separate files renamed to the same
location, or one file renamed on both sides but differently)?

Signed-off-by: Elijah Newren <newren@gmail.com>
---
 t/t6422-merge-rename-corner-cases.sh | 18 ++++++++++++------
 t/t6423-merge-rename-directories.sh  |  4 ++--
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/t/t6422-merge-rename-corner-cases.sh b/t/t6422-merge-rename-corner-cases.sh
index f3929b65c0..3375eaf4e7 100755
--- a/t/t6422-merge-rename-corner-cases.sh
+++ b/t/t6422-merge-rename-corner-cases.sh
@@ -583,7 +583,7 @@ test_expect_success 'handle rename/rename (2to1) conflict correctly' '
 		git checkout B^0 &&
 
 		test_must_fail git merge -s recursive C^0 >out &&
-		test_i18ngrep "CONFLICT (rename/rename)" out &&
+		test_i18ngrep "CONFLICT (\(.*\)/\1)" out &&
 
 		git ls-files -s >out &&
 		test_line_count = 2 out &&
@@ -959,11 +959,17 @@ test_expect_failure 'rrdd-check: rename/rename(2to1)/delete/delete conflict' '
 		git checkout A^0 &&
 		test_must_fail git merge -s recursive B^0 >out 2>err &&
 
-		# Not sure whether the output should contain just one
-		# "CONFLICT (rename/rename/delete/delete)" line, or if it
-		# should break it into three: "CONFLICT (rename/rename)" and
-		# two "CONFLICT (rename/delete)" lines; allow for either.
-		test_i18ngrep "CONFLICT (rename/rename)" out &&
+		# Instead of requiring the output to contain one combined line
+		#   CONFLICT (rename/rename/delete/delete)
+		# or perhaps two lines:
+		#   CONFLICT (rename/rename): ...
+		#   CONFLICT (rename/delete): info about pair 1
+		#   CONFLICT (rename/delete): info about pair 2
+		# and instead of requiring "rename/rename" instead of "add/add",
+		# be flexible in the type of console output message(s) reported
+		# for this particular case; we will be more stringent about the
+		# contents of the index and working directory.
+		test_i18ngrep "CONFLICT (\(.*\)/\1)" out &&
 		test_i18ngrep "CONFLICT (rename.*delete)" out &&
 		test_must_be_empty err &&
 
diff --git a/t/t6423-merge-rename-directories.sh b/t/t6423-merge-rename-directories.sh
index 2b4a482277..f7ecbb886d 100755
--- a/t/t6423-merge-rename-directories.sh
+++ b/t/t6423-merge-rename-directories.sh
@@ -275,7 +275,7 @@ test_expect_success '1d: Directory renames cause a rename/rename(2to1) conflict'
 		git checkout A^0 &&
 
 		test_must_fail git -c merge.directoryRenames=true merge -s recursive B^0 >out &&
-		test_i18ngrep "CONFLICT (rename/rename)" out &&
+		test_i18ngrep "CONFLICT (\(.*\)/\1)" out &&
 
 		git ls-files -s >out &&
 		test_line_count = 8 out &&
@@ -1686,7 +1686,7 @@ test_expect_success '7b: rename/rename(2to1), but only due to transitive rename'
 		git checkout A^0 &&
 
 		test_must_fail git -c merge.directoryRenames=true merge -s recursive B^0 >out &&
-		test_i18ngrep "CONFLICT (rename/rename)" out &&
+		test_i18ngrep "CONFLICT (\(.*\)/\1)" out &&
 
 		git ls-files -s >out &&
 		test_line_count = 4 out &&
-- 
gitgitgadget


  parent reply	other threads:[~2020-08-08 17:01 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-05 16:29 [PATCH] Collect merge-related tests to t64xx Elijah Newren via GitGitGadget
2020-08-08 17:01 ` [PATCH v2 00/11] Start preparing merge-related tests to work with multiple merge backends Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 01/11] Collect merge-related tests to t64xx Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 02/11] t6418: tighten delete/normalize conflict testcase Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 03/11] t6422: fix bad check against missing file Elijah Newren via GitGitGadget
2020-08-09  2:30     ` Eric Sunshine
2020-08-08 17:01   ` [PATCH v2 04/11] t6416, t6422: fix incorrect untracked file count Elijah Newren via GitGitGadget
2020-08-09  3:12     ` Eric Sunshine
2020-08-09  5:34       ` Elijah Newren
2020-08-08 17:01   ` [PATCH v2 05/11] t6423: fix test setup for a couple tests Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 06/11] t6422: fix multiple errors with the mod6 test expectations Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 07/11] t6416, t6423: clarify some comments and fix some typos Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 08/11] t6423: add an explanation about why one of the tests does not pass Elijah Newren via GitGitGadget
2020-08-08 17:01   ` [PATCH v2 09/11] t6422, t6426: be more flexible for add/add conflicts involving renames Elijah Newren via GitGitGadget
2020-08-08 17:01   ` Elijah Newren via GitGitGadget [this message]
2020-08-08 17:01   ` [PATCH v2 11/11] t6425: be more flexible with rename/delete conflict messages Elijah Newren via GitGitGadget
2020-08-10 22:29   ` [PATCH v3 00/11] Start preparing merge-related tests to work with multiple merge backends Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 01/11] Collect merge-related tests to t64xx Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 02/11] t6418: tighten delete/normalize conflict testcase Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 03/11] t6422: fix bad check against missing file Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 04/11] t6416, t6422: fix incorrect untracked file count Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 05/11] t6423: fix test setup for a couple tests Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 06/11] t6422: fix multiple errors with the mod6 test expectations Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 07/11] t6416, t6423: clarify some comments and fix some typos Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 08/11] t6423: add an explanation about why one of the tests does not pass Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 09/11] t6422, t6426: be more flexible for add/add conflicts involving renames Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 10/11] t642[23]: be more flexible for add/add conflicts involving pair renames Elijah Newren via GitGitGadget
2020-08-10 22:29     ` [PATCH v3 11/11] t6425: be more flexible with rename/delete conflict messages Elijah Newren via GitGitGadget

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a9a02a0ca51f16b07fe0b28d16f5a3c2888227ca.1596906081.git.gitgitgadget@gmail.com \
    --to=gitgitgadget@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=newren@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).