threads / patch / 65188

patcht1900: add tests for git repo structure subcommand

Subject: [PATCH] t1900: add tests for git repo structure subcommand

## tl;dr

3 messages between Mar 10, 2026 and Mar 10, 2026. Diffs are folded; open one to read it.

replies: 2people: 3as markdown or json

Mansi Singh via GitGitGadget· Mar 10, 2026, 03:09 UTC · lore
From: Mansi Singh <mansimaanu8627@gmail.com>

The t1900 test file covers git repo info thoroughly but has no tests for the git repo structure subcommand. Add basic tests to verify that:

- git repo structure succeeds and produces no stderr output
- git repo structure --format=keyvalue outputs expected keys
- git repo structure --format=nul succeeds
- git repo structure rejects an unknown format
Signed-off-by: Mansi Singh <mansimaanu8627@gmail.com>
---
    t1900: add tests for git repo structure subcommand
    
    Add tests for the git repo structure subcommand in t1900-repo-info.sh.
    The tests verify that git repo structure outputs the expected fields
    (commits, trees, blobs, tags) in both default and key-value formats.
    
    Signed-off-by: Mansi Singh mansimaanu8627@gmail.com
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2066%2FMansiSingh17%2Frepo-add-structure-tests-v3-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2066/MansiSingh17/repo-add-structure-tests-v3-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/2066
 t/t1900-repo-info.sh | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
Show changes to t/t1900-repo-info.sh +22 −0
diff --git a/t/t1900-repo-info.sh b/t/t1900-repo-info.sh
index a9eb07abe8..b63d404075 100755
--- a/t/t1900-repo-info.sh
+++ b/t/t1900-repo-info.sh
@@ -149,4 +149,26 @@ test_expect_success 'git repo info --keys uses lines as its default output forma
 	test_cmp expect actual
 '
 
+
+test_expect_success 'git repo structure succeeds' '
+	git repo structure >actual 2>stderr &&
+	test_must_be_empty stderr
+'
+
+test_expect_success 'git repo structure --format=lines succeeds' '
+	git repo structure --format=lines >actual &&
+	grep "references.branches.count=" actual &&
+	grep "objects.commits.count=" actual
+'
+
+test_expect_success 'git repo structure --format=nul succeeds' '
+	git repo structure --format=nul >actual
+'
+
+test_expect_success 'git repo structure rejects unknown format' '
+	echo "fatal: invalid format ${SQ}foo${SQ}" >expect &&
+	test_must_fail git repo structure --format=foo 2>actual &&
+	test_cmp expect actual
+'
+
 test_done

base-commit: d181b9354cf85b44455ce3ca9e6af0b9559e0ae2
-- 
gitgitgadget
Junio C Hamano· Mar 10, 2026, 03:35 UTC · re: Mansi Singh via GitGitGadget · lore

Re: [PATCH] t1900: add tests for git repo structure subcommand

"Mansi Singh via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 10 quoted lines
> From: Mansi Singh <mansimaanu8627@gmail.com>
>
> The t1900 test file covers git repo info thoroughly but has
> no tests for the git repo structure subcommand. Add basic
> tests to verify that:
>
> - git repo structure succeeds and produces no stderr output
> - git repo structure --format=keyvalue outputs expected keys
> - git repo structure --format=nul succeeds
> - git repo structure rejects an unknown format

Ask those who have worked on the relevant command to review by adding them on the Cc: line.

K Jayatheerth· Mar 10, 2026, 13:34 UTC · re: Mansi Singh via GitGitGadget · lore

Re: [PATCH] t1900: add tests for git repo structure subcommand

Show 28 quoted lines
> From: Mansi Singh <mansimaanu8627@gmail.com>
> 
> The t1900 test file covers git repo info thoroughly but has
> no tests for the git repo structure subcommand. Add basic
> tests to verify that:
> 
> - git repo structure succeeds and produces no stderr output
> - git repo structure --format=keyvalue outputs expected keys
> - git repo structure --format=nul succeeds
> - git repo structure rejects an unknown format
> 
> Signed-off-by: Mansi Singh <mansimaanu8627@gmail.com>
> ---
>     t1900: add tests for git repo structure subcommand
> 
>     Add tests for the git repo structure subcommand in t1900-repo-info.sh.
>     The tests verify that git repo structure outputs the expected fields
>     (commits, trees, blobs, tags) in both default and key-value formats.
> 
>     Signed-off-by: Mansi Singh mansimaanu8627@gmail.com
> 
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2066%2FMansiSingh17%2Frepo-add-structure-tests-v3-v1
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2066/MansiSingh17/repo-add-structure-tests-v3-v1
> Pull-Request: https://github.com/gitgitgadget/git/pull/2066
> 
>  t/t1900-repo-info.sh | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
Hi,

The very next file in t/ i.e t1901.. is about repo structure

You might wanna check that out because I find most of these to be redundant

Regards
- Jayatheerth

← back to recent threads