i18n: init-db: mark parseopt strings for translation
[gitweb.git] / t / t7406-submodule-update.sh
index 33b292b8a8e992c98774ad6e51270a9babc7e6de..ce61d4c0fa3d916757e09224ed79bc191fb0cb3d 100755 (executable)
@@ -611,4 +611,42 @@ test_expect_success 'submodule update places git-dir in superprojects git-dir re
        )
 '
 
+test_expect_success 'submodule add properly re-creates deeper level submodules' '
+       (cd super &&
+        git reset --hard master &&
+        rm -rf deeper/ &&
+        git submodule add ../submodule deeper/submodule
+       )
+'
+
+test_expect_success 'submodule update properly revives a moved submodule' '
+       (cd super &&
+        git commit -am "pre move" &&
+        git status >expect&&
+        H=$(cd submodule2; git rev-parse HEAD) &&
+        git rm --cached submodule2 &&
+        rm -rf submodule2 &&
+        mkdir -p "moved/sub module" &&
+        git update-index --add --cacheinfo 160000 $H "moved/sub module" &&
+        git config -f .gitmodules submodule.submodule2.path "moved/sub module"
+        git commit -am "post move" &&
+        git submodule update &&
+        git status >actual &&
+        test_cmp expect actual
+       )
+'
+
+test_expect_success SYMLINKS 'submodule update can handle symbolic links in pwd' '
+       mkdir -p linked/dir &&
+       ln -s linked/dir linkto &&
+       (
+               cd linkto &&
+               git clone "$TRASH_DIRECTORY"/super_update_r2 super &&
+               (
+                       cd super &&
+                       git submodule update --init --recursive
+               )
+       )
+'
+
 test_done