t1502: protect runs of SPs used in the indentation

The expected output from the argument help use runs of SPs to align the description of each option; a careless use of --whitespace=fix can turn leading parts of them into appropriate number of HTs. Prevent such a breakage by prefixing all the expected lines with leading vertical bars in the original and stripping them with a small sed script. Signed-off-by: Junio C Hamano <gitster@pobox.com>

Junio C Hamano committed Mar 23, 2014 at 15:26 UTC ce7f8745aa773dfe2fc0a1b8c327b50c7ce4a31e
1 file changed +56 -56
t/t1502-rev-parse-parseopt.sh
+56 -56
@@ -3,64 +3,64 @@
3 test_description='test git rev-parse --parseopt'
4 . ./test-lib.sh
5
6 -cat > expect <<\END_EXPECT
7 -cat <<\EOF
8 -usage: some-command [options] <args>...
9 -
10 - some-command does foo and bar!
11 -
12 - -h, --help show the help
13 - --foo some nifty option --foo
14 - --bar ... some cool option --bar with an argument
15 - -b, --baz a short and long option
16 -
17 -An option group Header
18 - -C[...] option C with an optional argument
19 - -d, --data[=...] short and long option with an optional argument
20 -
21 -Argument hints
22 - -b <arg> short option required argument
23 - --bar2 <arg> long option required argument
24 - -e, --fuz <with-space>
25 - short and long option required argument
26 - -s[<some>] short option optional argument
27 - --long[=<data>] long option optional argument
28 - -g, --fluf[=<path>] short and long option optional argument
29 - --longest <very-long-argument-hint>
30 - a very long argument hint
31 -
32 -Extras
33 - --extra1 line above used to cause a segfault but no longer does
34 -
35 -EOF
6 +sed -e 's/^|//' >expect <<\END_EXPECT
7 +|cat <<\EOF
8 +|usage: some-command [options] <args>...
9 +|
10 +| some-command does foo and bar!
11 +|
12 +| -h, --help show the help
13 +| --foo some nifty option --foo
14 +| --bar ... some cool option --bar with an argument
15 +| -b, --baz a short and long option
16 +|
17 +|An option group Header
18 +| -C[...] option C with an optional argument
19 +| -d, --data[=...] short and long option with an optional argument
20 +|
21 +|Argument hints
22 +| -b <arg> short option required argument
23 +| --bar2 <arg> long option required argument
24 +| -e, --fuz <with-space>
25 +| short and long option required argument
26 +| -s[<some>] short option optional argument
27 +| --long[=<data>] long option optional argument
28 +| -g, --fluf[=<path>] short and long option optional argument
29 +| --longest <very-long-argument-hint>
30 +| a very long argument hint
31 +|
32 +|Extras
33 +| --extra1 line above used to cause a segfault but no longer does
34 +|
35 +|EOF
36 END_EXPECT
37
38 -cat > optionspec << EOF
39 -some-command [options] <args>...
40 -
41 -some-command does foo and bar!
42 ---
43 -h,help show the help
44 -
45 -foo some nifty option --foo
46 -bar= some cool option --bar with an argument
47 -b,baz a short and long option
48 -
49 - An option group Header
50 -C? option C with an optional argument
51 -d,data? short and long option with an optional argument
52 -
53 - Argument hints
54 -b=arg short option required argument
55 -bar2=arg long option required argument
56 -e,fuz=with-space short and long option required argument
57 -s?some short option optional argument
58 -long?data long option optional argument
59 -g,fluf?path short and long option optional argument
60 -longest=very-long-argument-hint a very long argument hint
61 -
62 -Extras
63 -extra1 line above used to cause a segfault but no longer does
38 +sed -e 's/^|//' >optionspec <<\EOF
39 +|some-command [options] <args>...
40 +|
41 +|some-command does foo and bar!
42 +|--
43 +|h,help show the help
44 +|
45 +|foo some nifty option --foo
46 +|bar= some cool option --bar with an argument
47 +|b,baz a short and long option
48 +|
49 +| An option group Header
50 +|C? option C with an optional argument
51 +|d,data? short and long option with an optional argument
52 +|
53 +| Argument hints
54 +|b=arg short option required argument
55 +|bar2=arg long option required argument
56 +|e,fuz=with-space short and long option required argument
57 +|s?some short option optional argument
58 +|long?data long option optional argument
59 +|g,fluf?path short and long option optional argument
60 +|longest=very-long-argument-hint a very long argument hint
61 +|
62 +|Extras
63 +|extra1 line above used to cause a segfault but no longer does
64 EOF
65
66 test_expect_success 'test --parseopt help output' '