Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShuqi Liang <cheskaqiqi@gmail.com>2023-05-08 23:21:40 +0300
committerJunio C Hamano <gitster@pobox.com>2023-05-09 00:41:30 +0300
commit6e210175c786247722bafca4103508421fa7dd30 (patch)
tree6378123ed78a62943f5623097d4d09f75e672534 /t/t1092-sparse-checkout-compatibility.sh
parent7580f92ffa970b9484ac214f7b53cec5e26ca4bc (diff)
t1092: update a write-tree test
* 'on all' in the title of the test 'write-tree on all' was unclear; remove it. * Add a baseline 'test_all_match git write-tree' before making any changes to the index, providing a reference point for the 'write-tree' prior to any modifications. * Add a comparison of the output of 'git status --porcelain=v2' to test the working tree after 'write-tree' exits. * Ensure SKIP_WORKTREE files weren't materialized on disk by using "test_path_is_missing". Signed-off-by: Shuqi Liang <cheskaqiqi@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t1092-sparse-checkout-compatibility.sh')
-rwxr-xr-xt/t1092-sparse-checkout-compatibility.sh18
1 files changed, 14 insertions, 4 deletions
diff --git a/t/t1092-sparse-checkout-compatibility.sh b/t/t1092-sparse-checkout-compatibility.sh
index 0c784813f1..3aa6356a85 100755
--- a/t/t1092-sparse-checkout-compatibility.sh
+++ b/t/t1092-sparse-checkout-compatibility.sh
@@ -2080,22 +2080,32 @@ test_expect_success 'grep sparse directory within submodules' '
test_cmp actual expect
'
-test_expect_success 'write-tree on all' '
+test_expect_success 'write-tree' '
init_repos &&
+ test_all_match git write-tree &&
+
write_script edit-contents <<-\EOF &&
echo text >>"$1"
EOF
+ # make a change inside the sparse cone
run_on_all ../edit-contents deep/a &&
- run_on_all git update-index deep/a &&
+ test_all_match git update-index deep/a &&
test_all_match git write-tree &&
+ test_all_match git status --porcelain=v2 &&
+ # make a change outside the sparse cone
run_on_all mkdir -p folder1 &&
run_on_all cp a folder1/a &&
run_on_all ../edit-contents folder1/a &&
- run_on_all git update-index folder1/a &&
- test_all_match git write-tree
+ test_all_match git update-index folder1/a &&
+ test_all_match git write-tree &&
+ test_all_match git status --porcelain=v2 &&
+
+ # check that SKIP_WORKTREE files are not materialized
+ test_path_is_missing sparse-checkout/folder2/a &&
+ test_path_is_missing sparse-index/folder2/a
'
test_expect_success 'sparse-index is not expanded: write-tree' '