remote-hg: add support for pushing
[gitweb.git] / t / t7409-submodule-detached-worktree.sh
old mode 100644 (file)
new mode 100755 (executable)
index db75642..2fec13d
@@ -15,7 +15,11 @@ TEST_NO_CREATE_REPO=1
 test_expect_success 'submodule on detached working tree' '
        git init --bare remote &&
        test_create_repo bundle1 &&
-       (cd bundle1 && test_commit "shoot") &&
+       (
+               cd bundle1 &&
+               test_commit "shoot" &&
+               git rev-parse --verify HEAD >../expect
+       ) &&
        mkdir home &&
        (
                cd home &&
@@ -23,14 +27,27 @@ test_expect_success 'submodule on detached working tree' '
                git clone --bare ../remote .dotfiles &&
                git submodule add ../bundle1 .vim/bundle/sogood &&
                test_commit "sogood" &&
+               (
+                       unset GIT_WORK_TREE GIT_DIR &&
+                       cd .vim/bundle/sogood &&
+                       git rev-parse --verify HEAD >actual &&
+                       test_cmp ../../../../expect actual
+               ) &&
                git push origin master
        ) &&
        mkdir home2 &&
        (
                cd home2 &&
-               export GIT_WORK_TREE="$(pwd)" GIT_DIR="$(pwd)/.dotfiles" &&
                git clone --bare ../remote .dotfiles &&
-               git submodule update --init
+               export GIT_WORK_TREE="$(pwd)" GIT_DIR="$(pwd)/.dotfiles" &&
+               git checkout master &&
+               git submodule update --init &&
+               (
+                       unset GIT_WORK_TREE GIT_DIR &&
+                       cd .vim/bundle/sogood &&
+                       git rev-parse --verify HEAD >actual &&
+                       test_cmp ../../../../expect actual
+               )
        )
 '
 
@@ -42,6 +59,7 @@ test_expect_success 'submodule on detached working pointed by core.worktree' '
                git clone --bare ../remote "$GIT_DIR" &&
                git config core.bare false &&
                git config core.worktree .. &&
+               git checkout master &&
                git submodule add ../bundle1 .vim/bundle/dupe &&
                test_commit "dupe" &&
                git push origin master
@@ -52,9 +70,8 @@ test_expect_success 'submodule on detached working pointed by core.worktree' '
                git config core.bare false &&
                git config core.worktree .. &&
                git pull &&
-               git submodule update &&
-               git submodule status &&
-               test -d .vim/bundle/dupe
+               git submodule update --init &&
+               test -f .vim/bundle/dupe/shoot.t
        )
 '