diff mbox series

[v2,4/5] t1091/t3705: remove 'test-tool read-cache --table'

Message ID b98e5e6d2bc921ea76d8b5419d1f00e9db30a55a.1638992396.git.gitgitgadget@gmail.com (mailing list archive)
State Superseded
Headers show
Series Sparse index: fetch, pull, ls-files | expand

Commit Message

Derrick Stolee Dec. 8, 2021, 7:39 p.m. UTC
From: Derrick Stolee <dstolee@microsoft.com>

Now that 'git ls-files --sparse' exists, we can use it to verify the
state of a sparse index instead of 'test-tool read-cache table'. Replace
these usages within t1091-sparse-checkout-builtin.sh and
t3705-add-sparse-checkout.sh.

The important changes are due to the different output format. In t3705,
wWe need to use the '--stage' output to get a file mode and OID, but
it also includes a stage value and drops the object type. This leads
to some differences in how we handle looking for specific entries.

In t1091, the test focuses on enabling the sparse index, so we do not
need the --stage flag to demonstrate how the index changes, and instead
can use a diff.

Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
---
 t/t1091-sparse-checkout-builtin.sh | 25 ++++++++++++++++++++-----
 t/t3705-add-sparse-checkout.sh     |  8 ++++----
 2 files changed, 24 insertions(+), 9 deletions(-)

Comments

Elijah Newren Dec. 9, 2021, 5:20 a.m. UTC | #1
On Wed, Dec 8, 2021 at 11:40 AM Derrick Stolee via GitGitGadget
<gitgitgadget@gmail.com> wrote:
>
> From: Derrick Stolee <dstolee@microsoft.com>
>
> Now that 'git ls-files --sparse' exists, we can use it to verify the
> state of a sparse index instead of 'test-tool read-cache table'. Replace
> these usages within t1091-sparse-checkout-builtin.sh and
> t3705-add-sparse-checkout.sh.
>
> The important changes are due to the different output format. In t3705,
> wWe need to use the '--stage' output to get a file mode and OID, but

s/wWe/we/


> it also includes a stage value and drops the object type. This leads
> to some differences in how we handle looking for specific entries.
>
> In t1091, the test focuses on enabling the sparse index, so we do not
> need the --stage flag to demonstrate how the index changes, and instead
> can use a diff.
>
> Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
> ---
>  t/t1091-sparse-checkout-builtin.sh | 25 ++++++++++++++++++++-----
>  t/t3705-add-sparse-checkout.sh     |  8 ++++----
>  2 files changed, 24 insertions(+), 9 deletions(-)
>
> diff --git a/t/t1091-sparse-checkout-builtin.sh b/t/t1091-sparse-checkout-builtin.sh
> index 272ba1b566b..680e0043c36 100755
> --- a/t/t1091-sparse-checkout-builtin.sh
> +++ b/t/t1091-sparse-checkout-builtin.sh
> @@ -212,12 +212,27 @@ test_expect_success 'sparse-index enabled and disabled' '
>
>                 git -C repo sparse-checkout init --cone --sparse-index &&
>                 test_cmp_config -C repo true index.sparse &&
> -               test-tool -C repo read-cache --table >cache &&
> -               grep " tree " cache &&
> -
> +               git -C repo ls-files --sparse >sparse &&
>                 git -C repo sparse-checkout disable &&
> -               test-tool -C repo read-cache --table >cache &&
> -               ! grep " tree " cache &&
> +               git -C repo ls-files --sparse >full &&
> +
> +               cat >expect <<-\EOF &&
> +               @@ -1,4 +1,7 @@
> +                a
> +               -deep/
> +               -folder1/
> +               -folder2/
> +               +deep/a
> +               +deep/deeper1/a
> +               +deep/deeper1/deepest/a
> +               +deep/deeper2/a
> +               +folder1/a
> +               +folder2/a
> +               EOF
> +
> +               diff -u sparse full | tail -n +3 >actual &&
> +               test_cmp expect actual &&
> +
>                 git -C repo config --list >config &&
>                 ! grep index.sparse config
>         )
> diff --git a/t/t3705-add-sparse-checkout.sh b/t/t3705-add-sparse-checkout.sh
> index f3143c92908..81f3384eeed 100755
> --- a/t/t3705-add-sparse-checkout.sh
> +++ b/t/t3705-add-sparse-checkout.sh
> @@ -181,13 +181,13 @@ test_expect_success 'git add fails outside of sparse-checkout definition' '
>         # Avoid munging CRLFs to avoid an error message
>         git -c core.autocrlf=input add --sparse sparse_entry 2>stderr &&
>         test_must_be_empty stderr &&
> -       test-tool read-cache --table >actual &&
> -       grep "^100644 blob.*sparse_entry\$" actual &&
> +       git ls-files --stage >actual &&
> +       grep "^100644 .*sparse_entry\$" actual &&
>
>         git add --sparse --chmod=+x sparse_entry 2>stderr &&
>         test_must_be_empty stderr &&
> -       test-tool read-cache --table >actual &&
> -       grep "^100755 blob.*sparse_entry\$" actual &&
> +       git ls-files --stage >actual &&
> +       grep "^100755 .*sparse_entry\$" actual &&
>
>         git reset &&
>
> --
> gitgitgadget
diff mbox series

Patch

diff --git a/t/t1091-sparse-checkout-builtin.sh b/t/t1091-sparse-checkout-builtin.sh
index 272ba1b566b..680e0043c36 100755
--- a/t/t1091-sparse-checkout-builtin.sh
+++ b/t/t1091-sparse-checkout-builtin.sh
@@ -212,12 +212,27 @@  test_expect_success 'sparse-index enabled and disabled' '
 
 		git -C repo sparse-checkout init --cone --sparse-index &&
 		test_cmp_config -C repo true index.sparse &&
-		test-tool -C repo read-cache --table >cache &&
-		grep " tree " cache &&
-
+		git -C repo ls-files --sparse >sparse &&
 		git -C repo sparse-checkout disable &&
-		test-tool -C repo read-cache --table >cache &&
-		! grep " tree " cache &&
+		git -C repo ls-files --sparse >full &&
+
+		cat >expect <<-\EOF &&
+		@@ -1,4 +1,7 @@
+		 a
+		-deep/
+		-folder1/
+		-folder2/
+		+deep/a
+		+deep/deeper1/a
+		+deep/deeper1/deepest/a
+		+deep/deeper2/a
+		+folder1/a
+		+folder2/a
+		EOF
+
+		diff -u sparse full | tail -n +3 >actual &&
+		test_cmp expect actual &&
+
 		git -C repo config --list >config &&
 		! grep index.sparse config
 	)
diff --git a/t/t3705-add-sparse-checkout.sh b/t/t3705-add-sparse-checkout.sh
index f3143c92908..81f3384eeed 100755
--- a/t/t3705-add-sparse-checkout.sh
+++ b/t/t3705-add-sparse-checkout.sh
@@ -181,13 +181,13 @@  test_expect_success 'git add fails outside of sparse-checkout definition' '
 	# Avoid munging CRLFs to avoid an error message
 	git -c core.autocrlf=input add --sparse sparse_entry 2>stderr &&
 	test_must_be_empty stderr &&
-	test-tool read-cache --table >actual &&
-	grep "^100644 blob.*sparse_entry\$" actual &&
+	git ls-files --stage >actual &&
+	grep "^100644 .*sparse_entry\$" actual &&
 
 	git add --sparse --chmod=+x sparse_entry 2>stderr &&
 	test_must_be_empty stderr &&
-	test-tool read-cache --table >actual &&
-	grep "^100755 blob.*sparse_entry\$" actual &&
+	git ls-files --stage >actual &&
+	grep "^100755 .*sparse_entry\$" actual &&
 
 	git reset &&