]> git.ipfire.org Git - thirdparty/git.git/blobdiff - t/t7506-status-submodule.sh
Merge branch 'rs/preserve-merges-unused-code-removal'
[thirdparty/git.git] / t / t7506-status-submodule.sh
index b4b74dbe29dd53ae8029cec20be4b6fef2cd6a1e..3fcb44767f51052f637683a34cbb8a2f21c777cc 100755 (executable)
@@ -22,6 +22,10 @@ sanitize_output () {
        mv output2 output
 }
 
+sanitize_diff () {
+       sed -e "/^index [0-9a-f,]*\.\.[0-9a-f]*/d" "$1"
+}
+
 
 test_expect_success 'setup' '
        test_create_repo_with_commit sub &&
@@ -193,9 +197,9 @@ test_expect_success 'status with added and untracked file in modified submodule
 
 test_expect_success 'setup .git file for sub' '
        (cd sub &&
-        rm -f new-file
+        rm -f new-file &&
         REAL="$(pwd)/../.real" &&
-        mv .git "$REAL"
+        mv .git "$REAL" &&
         echo "gitdir: $REAL" >.git) &&
         echo .real >>.gitignore &&
         git commit -m "added .real to .gitignore" .gitignore
@@ -209,12 +213,12 @@ test_expect_success 'status with added file in modified submodule with .git file
 
 test_expect_success 'status with a lot of untracked files in the submodule' '
        (
-               cd sub
+               cd sub &&
                i=0 &&
                while test $i -lt 1024
                do
-                       >some-file-$i
-                       i=$(( $i + 1 ))
+                       >some-file-$i &&
+                       i=$(( $i + 1 )) || exit 1
                done
        ) &&
        git status --porcelain sub 2>err.actual &&
@@ -269,7 +273,6 @@ short_sha1_merge_sub1=$(cd sub1 && git rev-parse --short HEAD)
 short_sha1_merge_sub2=$(cd sub2 && git rev-parse --short HEAD)
 cat >diff_expect <<\EOF
 diff --cc .gitmodules
-index badaa4c,44f999a..0000000
 --- a/.gitmodules
 +++ b/.gitmodules
 @@@ -1,3 -1,3 +1,9 @@@
@@ -286,7 +289,6 @@ EOF
 
 cat >diff_submodule_expect <<\EOF
 diff --cc .gitmodules
-index badaa4c,44f999a..0000000
 --- a/.gitmodules
 +++ b/.gitmodules
 @@@ -1,3 -1,3 +1,9 @@@
@@ -306,7 +308,8 @@ test_expect_success 'diff with merge conflict in .gitmodules' '
                cd super &&
                git diff >../diff_actual 2>&1
        ) &&
-       test_cmp diff_expect diff_actual
+       sanitize_diff diff_actual >diff_sanitized &&
+       test_cmp diff_expect diff_sanitized
 '
 
 test_expect_success 'diff --submodule with merge conflict in .gitmodules' '
@@ -314,7 +317,8 @@ test_expect_success 'diff --submodule with merge conflict in .gitmodules' '
                cd super &&
                git diff --submodule >../diff_submodule_actual 2>&1
        ) &&
-       test_cmp diff_submodule_expect diff_submodule_actual
+       sanitize_diff diff_submodule_actual >diff_sanitized &&
+       test_cmp diff_submodule_expect diff_sanitized
 '
 
 # We'll setup different cases for further testing:
@@ -325,7 +329,8 @@ test_expect_success 'setup superproject with untracked file in nested submodule'
        (
                cd super &&
                git clean -dfx &&
-               rm .gitmodules &&
+               git rm .gitmodules &&
+               git commit -m "remove .gitmodules" &&
                git submodule add -f ./sub1 &&
                git submodule add -f ./sub2 &&
                git submodule add -f ./sub1 sub3 &&