The parent patch made changes to the way `git submodule--helper list`
is called. From experience this is a sensitive topic and lots subtle things
can go wrong. As all submodule subcommands except `sync` are setup to
run `git submodule--helper list` in the original directory, I suspected
a possible breakage in `sync` not being able to specify an exact submodule
to run in, so let's add a test for that. Instead of adding a complete new
test we can modify an existing test to additionally test the additional
assertion of having just one submodule work fine.

Signed-off-by: Stefan Beller <sbel...@google.com>
---
 t/t7403-submodule-sync.sh | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/t/t7403-submodule-sync.sh b/t/t7403-submodule-sync.sh
index 79bc135..5dde123 100755
--- a/t/t7403-submodule-sync.sh
+++ b/t/t7403-submodule-sync.sh
@@ -28,6 +28,9 @@ test_expect_success setup '
                git submodule add ../submodule submodule &&
                test_tick &&
                git commit -m "submodule"
+               git submodule add ../submodule submodule2 &&
+               test_tick &&
+               git commit -m "second submodule"
        ) &&
        git clone super super-clone &&
        (
@@ -149,15 +152,16 @@ test_expect_success 'reset submodule URLs' '
        reset_submodule_urls super-clone
 '
 
-test_expect_success '"git submodule sync" should update submodule URLs - 
subdirectory' '
+test_expect_success '"git submodule sync" should update specified submodule 
URLs - subdirectory' '
        (
                cd super-clone &&
                git pull --no-recurse-submodules &&
                mkdir -p sub &&
                cd sub &&
-               git submodule sync >../../output
+               git submodule sync ../submodule >../../output
        ) &&
        grep "\\.\\./submodule" output &&
+       ! grep submodule2 output &&
        test -d "$(
                cd super-clone/submodule &&
                git config remote.origin.url
@@ -177,7 +181,7 @@ test_expect_success '"git submodule sync" should update 
submodule URLs - subdire
        )
 '
 
-test_expect_success '"git submodule sync --recursive" should update all 
submodule URLs - subdirectory' '
+test_expect_success '"git submodule sync --recursive" should update all 
specified submodule URLs - subdirectory' '
        (
                cd super-clone &&
                (
@@ -186,9 +190,10 @@ test_expect_success '"git submodule sync --recursive" 
should update all submodul
                ) &&
                mkdir -p sub &&
                cd sub &&
-               git submodule sync --recursive >../../output
+               git submodule sync --recursive ../submodule >../../output
        ) &&
        grep "\\.\\./submodule/sub-submodule" output &&
+       ! grep submodule2 output &&
        test -d "$(
                cd super-clone/submodule &&
                git config remote.origin.url
-- 
2.7.2.368.g934fe14

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to