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

[PATCH 05/25] t/lib-submodule-update: fix "absorbing" test

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Jul 2, 2018, 00:23 UTC
Message-ID
<20180702002405.3042-6-sunshine@sunshineco.com>
In-Reply-To
<20180702002405.3042-1-sunshine@sunshineco.com>

This test has been dysfunctional since it was added by 259f3ee296 (lib-submodule-update.sh: define tests for recursing into submodules, 2017-03-14), however, the problem went unnoticed due to a broken &&-chain.

The test wants to verify that replacing a submodule containing a .git directory will absorb the .git directory into the .git/modules/ of the superproject, and then replace the working tree content appropriate to the superproject. It is, therefore, incorrect to check if the submodule content still exists since the submodule will have been replaced by the content of the superproject.

Fix this by removing the submodule content check, which also happens to be the line that broke the &&-chain.

While at it, fix broken &&-chains in a couple neighboring tests.
Helped-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
---
 t/lib-submodule-update.sh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/t/lib-submodule-update.sh b/t/lib-submodule-update.sh
index 1f38a85371..e90ec79087 100755
--- a/t/lib-submodule-update.sh
+++ b/t/lib-submodule-update.sh
@@ -755,7 +755,7 @@ test_submodule_recursing_with_args_common() {
 			: >sub1/untrackedfile &&
 			test_must_fail $command replace_sub1_with_file &&
 			test_superproject_content origin/add_sub1 &&
-			test_submodule_content sub1 origin/add_sub1
+			test_submodule_content sub1 origin/add_sub1 &&
 			test -f sub1/untracked_file
 		)
 	'
@@ -842,7 +842,7 @@ test_submodule_switch_recursing_with_args () {
 			cd submodule_update &&
 			git branch -t add_sub1 origin/add_sub1 &&
 			: >sub1 &&
-			echo sub1 >.git/info/exclude
+			echo sub1 >.git/info/exclude &&
 			$command add_sub1 &&
 			test_superproject_content origin/add_sub1 &&
 			test_submodule_content sub1 origin/add_sub1
@@ -969,7 +969,6 @@ test_submodule_forced_switch_recursing_with_args () {
 			rm -rf .git/modules/sub1 &&
 			$command replace_sub1_with_directory &&
 			test_superproject_content origin/replace_sub1_with_directory &&
-			test_submodule_content sub1 origin/modify_sub1
 			test_git_directory_exists sub1
 		)
 	'
-- 
2.18.0.203.gfac676dfb9
Previous: Junio C HamanoNext: Eric Sunshine
Message 8 of 52 in “fix buggy tests, modernize tests, fix broken &&-chains”
  1. 00/25 fix buggy tests, modernize tests, fix broken &&-chainsEric Sunshine, Jul 2, 2018
  2. 01/25 t: use test_might_fail() instead of manipulating exit code manuallyEric Sunshine, Jul 2, 2018
  3. Stefan BellerJul 2, 2018
  4. Eric SunshineJul 2, 2018
  5. Junio C HamanoJul 3, 2018
  6. 04/25 t: drop unnecessary terminating semicolon in subshellEric Sunshine, Jul 2, 2018
  7. Junio C HamanoJul 3, 2018
  8. 05/25 t/lib-submodule-update: fix "absorbing" testEric Sunshine, Jul 2, 2018
  9. 03/25 t: use sane_unset() rather than 'unset' with broken &&-chainEric Sunshine, Jul 2, 2018
  10. 02/25 t: use test_write_lines() instead of series of 'echo' commandsEric Sunshine, Jul 2, 2018
  11. Stefan BellerJul 2, 2018
  12. 08/25 t5505: modernize and simplify hard-to-digest testEric Sunshine, Jul 2, 2018
  13. 07/25 t5406: use write_script() instead of birthing shell script manuallyEric Sunshine, Jul 2, 2018
  14. 10/25 t7201: drop pointless "exit 0" at end of subshellEric Sunshine, Jul 2, 2018
  15. 11/25 t7400: fix broken "submodule add/reconfigure --force" testEric Sunshine, Jul 2, 2018
  16. Johannes SchindelinJul 16, 2018
  17. Johannes SchindelinJul 16, 2018
  18. Eric SunshineJul 16, 2018
  19. Junio C HamanoJul 16, 2018
  20. Eric SunshineJul 16, 2018
  21. Johannes SchindelinJul 17, 2018
  22. Junio C HamanoJul 17, 2018
  23. 12/25 t7810: use test_expect_code() instead of hand-rolled comparisonEric Sunshine, Jul 2, 2018
  24. Stefan BellerJul 2, 2018
  25. Eric SunshineJul 2, 2018
  26. 15/25 t0000-t0999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  27. 16/25 t1000-t1999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  28. 17/25 t2000-t2999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  29. 25/25 t9119: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  30. 24/25 t9000-t9999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  31. 23/25 t7000-t7999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  32. 22/25 t6000-t6999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  33. 21/25 t5000-t5999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  34. SZEDER GáborJul 12, 2018
  35. Eric SunshineJul 12, 2018
  36. Jeff KingJul 12, 2018
  37. Junio C HamanoJul 12, 2018
  38. Junio C HamanoJul 12, 2018
  39. Eric SunshineJul 12, 2018
  40. Junio C HamanoJul 12, 2018
  41. Eric SunshineJul 12, 2018
  42. SZEDER GáborJul 17, 2018
  43. 20/25 t4000-t4999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  44. 19/25 t3030: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  45. 18/25 t3000-t3999: fix broken &&-chainsEric Sunshine, Jul 2, 2018
  46. 14/25 t9814: simplify convoluted check that command correctly errors outEric Sunshine, Jul 2, 2018
  47. 09/25 t6036: fix broken "merge fails but has appropriate contents" testsEric Sunshine, Jul 2, 2018
  48. 06/25 t5405: use test_must_fail() instead of checking exit code manuallyEric Sunshine, Jul 2, 2018
  49. 13/25 t9001: fix broken "invoke hook" testEric Sunshine, Jul 2, 2018
  50. Stefan BellerJul 2, 2018
  51. Eric SunshineJul 2, 2018
  52. Junio C HamanoJul 3, 2018

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.