From: Josh Steadmon Date: Thu, 14 Apr 2022 18:37:26 GMT Subject: Re: [PATCH 1/4] t1092: add compatibility tests for 'git show' Message-ID: In-Reply-To: <8c2fdb5a4fc3317c05324da54692036e36fc15f3.1649349442.git.gitgitgadget@gmail.com> On 2022.04.07 16:37, Derrick Stolee via GitGitGadget wrote: > From: Derrick Stolee > > Signed-off-by: Derrick Stolee > --- > t/t1092-sparse-checkout-compatibility.sh | 16 ++++++++++++++++ > 1 file changed, 16 insertions(+) > > diff --git a/t/t1092-sparse-checkout-compatibility.sh b/t/t1092-sparse-checkout-compatibility.sh > index 236ab530284..74792b5ebbc 100755 > --- a/t/t1092-sparse-checkout-compatibility.sh > +++ b/t/t1092-sparse-checkout-compatibility.sh > @@ -1151,6 +1151,22 @@ test_expect_success 'clean' ' > test_sparse_match test_path_is_dir folder1 > ' > > +test_expect_success 'show (cached blobs/trees)' ' > + init_repos && > + > + test_all_match git show :a && > + test_all_match git show :deep/a && > + test_sparse_match git show :folder1/a && > + > + # Asking "git show" for directories in the index > + # does not work as implemented. The error message is > + # different for a full checkout and a sparse checkout > + # when the directory is outside of the cone. > + test_all_match test_must_fail git show :deep/ && > + test_must_fail git -C full-checkout show :folder1/ && > + test_sparse_match test_must_fail git show :folder1/ > +' A reminder that directories are not present in a non-sparse index would help those of us unfamiliar with the differences between sparse/non-sparse indexes to understand why the full-checkout cases fail here. Initially I was confused why any of these lookups would fail because my mental model was "a sparse-index is a proper subset of the non-sparse index". > + > test_expect_success 'submodule handling' ' > init_repos && > > -- > gitgitgadget >