]> git.ipfire.org Git - thirdparty/git.git/commitdiff
help tests: test "git" and "git help [-a|-g] spacing
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Mon, 21 Feb 2022 19:38:46 +0000 (20:38 +0100)
committerJunio C Hamano <gitster@pobox.com>
Wed, 23 Feb 2022 21:41:36 +0000 (13:41 -0800)
There's logic in "help.c"'s "print_cmd_by_category()" to emit "help"
output with particular spacing, which doesn't make much sense when
emitting only one section with "help -g".

Let's add tests for the current spacing in preparation for a
subsequent whitespace formatting fix, and make sure that that fix
doesn't cause regressions for the "git" and "git help" output.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t0012-help.sh

index cbd725ccac875a4ee387c0100c4b8e12d4194441..9ac3f5d3c4b3b91d016f5ae56c2182b994b1c1e9 100755 (executable)
@@ -138,6 +138,51 @@ test_expect_success 'git help --config-sections-for-completion' '
        test_cmp human.munged sections
 '
 
+test_section_spacing () {
+       cat >expect &&
+       "$@" >out &&
+       grep -E "(^[^ ]|^$)" out >actual
+}
+
+test_section_spacing_trailer () {
+       test_section_spacing "$@" &&
+       test_expect_code 1 git >out &&
+       sed -n '/list available subcommands/,$p' <out >>expect
+}
+
+
+for cmd in git "git help"
+do
+       test_expect_success "'$cmd' section spacing" '
+               test_section_spacing_trailer git help <<-\EOF &&
+               usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
+
+               These are common Git commands used in various situations:
+
+               start a working area (see also: git help tutorial)
+
+               work on the current change (see also: git help everyday)
+
+               examine the history and state (see also: git help revisions)
+
+               grow, mark and tweak your common history
+
+               collaborate (see also: git help workflows)
+
+               EOF
+               test_cmp expect actual
+       '
+done
+
+test_expect_success "'git help -g' section spacing" '
+       test_section_spacing_trailer git help -g <<-\EOF &&
+
+       The Git concept guides are:
+
+       EOF
+       test_cmp expect actual
+'
+
 test_expect_success 'generate builtin list' '
        mkdir -p sub &&
        git --list-cmds=builtins >builtins