rev-parse(1): logically group options
[gitweb.git] / t / t7400-submodule-basic.sh
index 825c8b94572981ff896e584973938eacc231fd99..7e2342130938c4d476f7d97464da9d8388479d98 100755 (executable)
@@ -133,6 +133,7 @@ test_expect_success 'submodule add --branch' '
        (
                cd addtest &&
                git submodule add -b initial "$submodurl" submod-branch &&
+               test "initial" = "$(git config -f .gitmodules submodule.submod-branch.branch)" &&
                git submodule init
        ) &&
 
@@ -776,18 +777,22 @@ test_expect_success 'submodule deinit . deinits all initialized submodules' '
        git config submodule.example.foo bar &&
        git config submodule.example2.frotz nitfol &&
        test_must_fail git submodule deinit &&
-       git submodule deinit . &&
+       git submodule deinit . >actual &&
        test -z "$(git config --get-regexp "submodule\.example\.")" &&
        test -z "$(git config --get-regexp "submodule\.example2\.")" &&
+       test_i18ngrep "Cleared directory .init" actual &&
+       test_i18ngrep "Cleared directory .example2" actual &&
        rmdir init example2
 '
 
 test_expect_success 'submodule deinit deinits a submodule when its work tree is missing or empty' '
        git submodule update --init &&
        rm -rf init example2/* example2/.git &&
-       git submodule deinit init example2 &&
+       git submodule deinit init example2 >actual &&
        test -z "$(git config --get-regexp "submodule\.example\.")" &&
        test -z "$(git config --get-regexp "submodule\.example2\.")" &&
+       test_i18ngrep ! "Cleared directory .init" actual &&
+       test_i18ngrep "Cleared directory .example2" actual &&
        rmdir init
 '
 
@@ -797,8 +802,9 @@ test_expect_success 'submodule deinit fails when the submodule contains modifica
        test_must_fail git submodule deinit init &&
        test -n "$(git config --get-regexp "submodule\.example\.")" &&
        test -f example2/.git &&
-       git submodule deinit -f init &&
+       git submodule deinit -f init >actual &&
        test -z "$(git config --get-regexp "submodule\.example\.")" &&
+       test_i18ngrep "Cleared directory .init" actual &&
        rmdir init
 '
 
@@ -808,8 +814,9 @@ test_expect_success 'submodule deinit fails when the submodule contains untracke
        test_must_fail git submodule deinit init &&
        test -n "$(git config --get-regexp "submodule\.example\.")" &&
        test -f example2/.git &&
-       git submodule deinit -f init &&
+       git submodule deinit -f init >actual &&
        test -z "$(git config --get-regexp "submodule\.example\.")" &&
+       test_i18ngrep "Cleared directory .init" actual &&
        rmdir init
 '
 
@@ -822,8 +829,9 @@ test_expect_success 'submodule deinit fails when the submodule HEAD does not mat
        test_must_fail git submodule deinit init &&
        test -n "$(git config --get-regexp "submodule\.example\.")" &&
        test -f example2/.git &&
-       git submodule deinit -f init &&
+       git submodule deinit -f init >actual &&
        test -z "$(git config --get-regexp "submodule\.example\.")" &&
+       test_i18ngrep "Cleared directory .init" actual &&
        rmdir init
 '
 
@@ -831,14 +839,18 @@ test_expect_success 'submodule deinit is silent when used on an uninitialized su
        git submodule update --init &&
        git submodule deinit init >actual &&
        test_i18ngrep "Submodule .example. (.*) unregistered for path .init" actual &&
+       test_i18ngrep "Cleared directory .init" actual &&
        git submodule deinit init >actual &&
        test_i18ngrep ! "Submodule .example. (.*) unregistered for path .init" actual &&
+       test_i18ngrep "Cleared directory .init" actual &&
        git submodule deinit . >actual &&
        test_i18ngrep ! "Submodule .example. (.*) unregistered for path .init" actual &&
        test_i18ngrep "Submodule .example2. (.*) unregistered for path .example2" actual &&
+       test_i18ngrep "Cleared directory .init" actual &&
        git submodule deinit . >actual &&
        test_i18ngrep ! "Submodule .example. (.*) unregistered for path .init" actual &&
        test_i18ngrep ! "Submodule .example2. (.*) unregistered for path .example2" actual &&
+       test_i18ngrep "Cleared directory .init" actual &&
        rmdir init example2
 '
 
@@ -856,4 +868,19 @@ test_expect_success 'submodule deinit fails when submodule has a .git directory
        test -n "$(git config --get-regexp "submodule\.example\.")"
 '
 
+test_expect_success 'submodule with UTF-8 name' '
+       svname=$(printf "\303\245 \303\244\303\266") &&
+       mkdir "$svname" &&
+       (
+               cd "$svname" &&
+               git init &&
+               >sub &&
+               git add sub &&
+               git commit -m "init sub"
+       ) &&
+       test_config core.precomposeunicode true &&
+       git submodule add ./"$svname" &&
+       git submodule >&2 &&
+       test -n "$(git submodule | grep "$svname")"
+'
 test_done