git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 3/4] t5572: describe '--rebase' tests a little more

From
Philippe Blain via GitGitGadget <gitgitgadget@gmail.com>
Date
Nov 14, 2020, 00:34 UTC
Message-ID
<4a124031400c38d7b44298a3328e4e81d756b637.1605314085.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.789.git.1605314085.gitgitgadget@gmail.com>
From: Philippe Blain <levraiphilippeblain@gmail.com>

It can be hard at first glance to distinguish what is different between the two tests 'recursive rebasing pull' and 'pull rebase recursing fails with conflicts' in 't5572-pull-submodule.sh', and to understand how they relate to the scenarios described in a6d7eb2c7a (pull: optionally rebase submodules (remote submodule changes only), 2017-06-23), which implemented '--recurse-submodules' for 'git pull' and added these tests.

Rename the tests to be more descriptive and add some bullet points comments describing the different scenarios.

Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
---
 t/t5572-pull-submodule.sh | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/t/t5572-pull-submodule.sh b/t/t5572-pull-submodule.sh
index 7f658dba6d..7d9e12df4d 100755
--- a/t/t5572-pull-submodule.sh
+++ b/t/t5572-pull-submodule.sh
@@ -101,7 +101,12 @@ test_expect_success " --[no-]recurse-submodule and submodule.recurse" '
 	test_path_is_file super/sub/merge_strategy_4.t
 '
 
-test_expect_success 'recursive rebasing pull' '
+test_expect_success 'pull --rebase --recurse-submodules (remote superproject submodule changes, local submodule changes)' '
+	# This tests the following scenario :
+	# - local submodule has new commits
+	# - local superproject does not have new commits
+	# - upstream superproject has new commits that change the submodule pointer
+
 	# change upstream
 	test_commit -C child rebase_strategy &&
 	git -C parent submodule update --remote &&
@@ -116,7 +121,10 @@ test_expect_success 'recursive rebasing pull' '
 	test_path_is_file super/sub/local_stuff.t
 '
 
-test_expect_success 'pull rebase recursing fails with conflicts' '
+test_expect_success 'pull --rebase --recurse-submodules fails if both sides record submodule changes' '
+	# This tests the following scenario :
+	# - local superproject has new commits that change the submodule pointer
+	# - upstream superproject has new commits that change the submodule pointer
 
 	# local changes in submodule recorded in superproject:
 	test_commit -C super/sub local_stuff_2 &&
-- 
gitgitgadget
Previous: Philippe Blain via GitGitGadgetNext: Philippe Blain via GitGitGadget
Message 3 of 5 in “Fix 'pull --rebase --recurse-submodules' when local and upstream branches have no fork-point”
  1. 0/4 Fix 'pull --rebase --recurse-submodules' when local and upstream branches have no fork-pointPhilippe Blain via GitGitGadget, Nov 14, 2020
  2. 1/4 pull --rebase: compute rebase arguments in separate functionPhilippe Blain via GitGitGadget, Nov 14, 2020
  3. 3/4 t5572: describe '--rebase' tests a little morePhilippe Blain via GitGitGadget, Nov 14, 2020
  4. 2/4 t5572: add notes on a peculiar testPhilippe Blain via GitGitGadget, Nov 14, 2020
  5. 4/4 pull: check for local submodule modifications with the right rangePhilippe Blain via GitGitGadget, Nov 14, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.