t1300: write test expectations in the test's body

There are a bunch of tests in t1300 where we write the test expectation
handed over to `test_cmp ()` outside of the test body. This does not
match our modern test style, and there isn't really a reason why this
would need to happen outside of the test bodies.

Convert those to instead do so as part of the test itself. While at it,
normalize these tests to use `<<\EOF` for those that don't use variable
expansion and `<<-EOF` for those that aren't sensitive to indentation.

Note that there are two exceptions that we leave as-is for now since
they are reused across tests.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Patrick Steinhardt
2025-09-22 15:06:18 +02:00
committed by Junio C Hamano
parent f368df439b
commit f1371a3c95

View File

@@ -134,38 +134,39 @@ test_expect_success 'clear default config' '
rm -f .git/config rm -f .git/config
' '
cat > expect << EOF test_expect_success 'initial' '
cat >expect <<\EOF &&
[section] [section]
penguin = little blue penguin = little blue
EOF EOF
test_expect_success 'initial' '
git config ${mode_set} section.penguin "little blue" && git config ${mode_set} section.penguin "little blue" &&
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'mixed case' '
cat >expect <<\EOF &&
[section] [section]
penguin = little blue penguin = little blue
Movie = BadPhysics Movie = BadPhysics
EOF EOF
test_expect_success 'mixed case' '
git config ${mode_set} Section.Movie BadPhysics && git config ${mode_set} Section.Movie BadPhysics &&
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'similar section' '
cat >expect <<\EOF &&
[section] [section]
penguin = little blue penguin = little blue
Movie = BadPhysics Movie = BadPhysics
[Sections] [Sections]
WhatEver = Second WhatEver = Second
EOF EOF
test_expect_success 'similar section' '
git config ${mode_set} Sections.WhatEver Second && git config ${mode_set} Sections.WhatEver Second &&
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'uppercase section' '
cat >expect <<\EOF &&
[section] [section]
penguin = little blue penguin = little blue
Movie = BadPhysics Movie = BadPhysics
@@ -173,7 +174,6 @@ cat > expect << EOF
[Sections] [Sections]
WhatEver = Second WhatEver = Second
EOF EOF
test_expect_success 'uppercase section' '
git config ${mode_set} SECTION.UPPERCASE true && git config ${mode_set} SECTION.UPPERCASE true &&
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -186,7 +186,8 @@ test_expect_success 'replace with non-match (actually matching)' '
git config section.penguin "very blue" !kingpin git config section.penguin "very blue" !kingpin
' '
cat > expect << EOF test_expect_success 'append comments' '
cat >expect <<\EOF &&
[section] [section]
Movie = BadPhysics Movie = BadPhysics
UPPERCASE = true UPPERCASE = true
@@ -198,8 +199,6 @@ cat > expect << EOF
[Sections] [Sections]
WhatEver = Second WhatEver = Second
EOF EOF
test_expect_success 'append comments' '
git config --replace-all --comment="Pygoscelis papua" section.penguin gentoo && git config --replace-all --comment="Pygoscelis papua" section.penguin gentoo &&
git config ${mode_set} --comment="find fish" section.disposition peckish && git config ${mode_set} --comment="find fish" section.disposition peckish &&
git config ${mode_set} --comment="#abc" section.foo bar && git config ${mode_set} --comment="#abc" section.foo bar &&
@@ -265,14 +264,15 @@ test_expect_success 'unset with cont. lines' '
git config ${mode_unset} beta.baz git config ${mode_unset} beta.baz
' '
cat > expect <<\EOF test_expect_success 'unset with cont. lines is correct' '
cat >expect <<-\EOF &&
[alpha] [alpha]
bar = foo bar = foo
[beta] [beta]
foo = bar foo = bar
EOF EOF
test_cmp expect .git/config
test_expect_success 'unset with cont. lines is correct' 'test_cmp expect .git/config' '
cat > .git/config << EOF cat > .git/config << EOF
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
@@ -292,16 +292,15 @@ test_expect_success 'multiple unset' '
git config ${mode_unset_all} beta.haha git config ${mode_unset_all} beta.haha
' '
cat > expect << EOF test_expect_success 'multiple unset is correct' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
[nextSection] noNewline = ouch [nextSection] noNewline = ouch
EOF EOF
test_expect_success 'multiple unset is correct' '
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -318,37 +317,37 @@ test_expect_success '--replace-all' '
git config ${mode_replace_all} beta.haha gamma git config ${mode_replace_all} beta.haha gamma
' '
cat > expect << EOF test_expect_success 'all replaced' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
haha = gamma haha = gamma
[nextSection] noNewline = ouch [nextSection] noNewline = ouch
EOF EOF
test_expect_success 'all replaced' '
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'really mean test' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
haha = alpha haha = alpha
[nextSection] noNewline = ouch [nextSection] noNewline = ouch
EOF EOF
test_expect_success 'really mean test' '
git config ${mode_set} beta.haha alpha && git config ${mode_set} beta.haha alpha &&
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'really really mean test' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
@@ -356,7 +355,6 @@ noIndent= sillyValue ; 'nother silly comment
[nextSection] [nextSection]
nonewline = wow nonewline = wow
EOF EOF
test_expect_success 'really really mean test' '
git config ${mode_set} nextsection.nonewline wow && git config ${mode_set} nextsection.nonewline wow &&
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -365,23 +363,24 @@ test_expect_success 'get value' '
test_cmp_config alpha beta.haha test_cmp_config alpha beta.haha
' '
cat > expect << EOF test_expect_success 'unset' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
[nextSection] [nextSection]
nonewline = wow nonewline = wow
EOF EOF
test_expect_success 'unset' '
git config ${mode_unset} beta.haha && git config ${mode_unset} beta.haha &&
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'multivar' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
@@ -389,7 +388,6 @@ noIndent= sillyValue ; 'nother silly comment
nonewline = wow nonewline = wow
NoNewLine = wow2 for me NoNewLine = wow2 for me
EOF EOF
test_expect_success 'multivar' '
git config nextsection.NoNewLine "wow2 for me" "for me$" && git config nextsection.NoNewLine "wow2 for me" "for me$" &&
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -415,9 +413,10 @@ test_expect_success 'multi-valued get-all returns all' '
test_cmp expect actual test_cmp expect actual
' '
cat > expect << EOF test_expect_success 'multivar replace' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
@@ -425,7 +424,6 @@ noIndent= sillyValue ; 'nother silly comment
nonewline = wow3 nonewline = wow3
NoNewLine = wow2 for me NoNewLine = wow2 for me
EOF EOF
test_expect_success 'multivar replace' '
git config nextsection.nonewline "wow3" "wow$" && git config nextsection.nonewline "wow3" "wow$" &&
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -438,17 +436,16 @@ test_expect_success 'invalid unset' '
test_must_fail git config ${mode_unset} somesection.nonewline test_must_fail git config ${mode_unset} somesection.nonewline
' '
cat > expect << EOF test_expect_success 'multivar unset' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
[nextSection] [nextSection]
NoNewLine = wow2 for me NoNewLine = wow2 for me
EOF EOF
test_expect_success 'multivar unset' '
case "$mode" in case "$mode" in
legacy) legacy)
git config --unset nextsection.nonewline "wow3$";; git config --unset nextsection.nonewline "wow3$";;
@@ -466,9 +463,10 @@ test_expect_success 'hierarchical section' '
git config Version.1.2.3eX.Alpha beta git config Version.1.2.3eX.Alpha beta
' '
cat > expect << EOF test_expect_success 'hierarchical section value' '
cat >expect <<EOF &&
[beta] ; silly comment # another comment [beta] ; silly comment # another comment
noIndent= sillyValue ; 'nother silly comment noIndent= sillyValue ; ${SQ}nother silly comment
# empty line # empty line
; comment ; comment
@@ -479,19 +477,16 @@ noIndent= sillyValue ; 'nother silly comment
[Version "1.2.3eX"] [Version "1.2.3eX"]
Alpha = beta Alpha = beta
EOF EOF
test_expect_success 'hierarchical section value' '
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'working --list' '
cat >expect <<-\EOF &&
beta.noindent=sillyValue beta.noindent=sillyValue
nextsection.nonewline=wow2 for me nextsection.nonewline=wow2 for me
123456.a123=987 123456.a123=987
version.1.2.3eX.alpha=beta version.1.2.3eX.alpha=beta
EOF EOF
test_expect_success 'working --list' '
git config ${mode_prefix}list > output && git config ${mode_prefix}list > output &&
test_cmp expect output test_cmp expect output
' '
@@ -500,44 +495,40 @@ test_expect_success '--list without repo produces empty output' '
test_must_be_empty output test_must_be_empty output
' '
cat > expect << EOF test_expect_success '--name-only --list' '
cat >expect <<-\EOF &&
beta.noindent beta.noindent
nextsection.nonewline nextsection.nonewline
123456.a123 123456.a123
version.1.2.3eX.alpha version.1.2.3eX.alpha
EOF EOF
test_expect_success '--name-only --list' '
git config ${mode_prefix}list --name-only >output && git config ${mode_prefix}list --name-only >output &&
test_cmp expect output test_cmp expect output
' '
cat > expect << EOF test_expect_success '--get-regexp' '
cat >expect <<-\EOF &&
beta.noindent sillyValue beta.noindent sillyValue
nextsection.nonewline wow2 for me nextsection.nonewline wow2 for me
EOF EOF
test_expect_success '--get-regexp' '
git config ${mode_get_regexp} in >output && git config ${mode_get_regexp} in >output &&
test_cmp expect output test_cmp expect output
' '
cat > expect << EOF test_expect_success '--name-only --get-regexp' '
cat >expect <<-\EOF &&
beta.noindent beta.noindent
nextsection.nonewline nextsection.nonewline
EOF EOF
test_expect_success '--name-only --get-regexp' '
git config ${mode_get_regexp} --name-only in >output && git config ${mode_get_regexp} --name-only in >output &&
test_cmp expect output test_cmp expect output
' '
cat > expect << EOF test_expect_success '--add' '
cat >expect <<-\EOF &&
wow2 for me wow2 for me
wow4 for you wow4 for you
EOF EOF
test_expect_success '--add' '
git config --add nextsection.nonewline "wow4 for you" && git config --add nextsection.nonewline "wow4 for you" &&
git config ${mode_get_all} nextsection.nonewline > output && git config ${mode_get_all} nextsection.nonewline > output &&
test_cmp expect output test_cmp expect output
@@ -558,37 +549,32 @@ test_expect_success 'get variable with empty value' '
git config --get emptyvalue.variable ^$ git config --get emptyvalue.variable ^$
' '
echo novalue.variable > expect
test_expect_success 'get-regexp variable with no value' ' test_expect_success 'get-regexp variable with no value' '
echo novalue.variable >expect &&
git config ${mode_get_regexp} novalue > output && git config ${mode_get_regexp} novalue > output &&
test_cmp expect output test_cmp expect output
' '
echo 'novalue.variable true' > expect
test_expect_success 'get-regexp --bool variable with no value' ' test_expect_success 'get-regexp --bool variable with no value' '
echo "novalue.variable true" >expect &&
git config ${mode_get_regexp} --bool novalue > output && git config ${mode_get_regexp} --bool novalue > output &&
test_cmp expect output test_cmp expect output
' '
echo 'emptyvalue.variable ' > expect
test_expect_success 'get-regexp variable with empty value' ' test_expect_success 'get-regexp variable with empty value' '
echo "emptyvalue.variable " >expect &&
git config ${mode_get_regexp} emptyvalue > output && git config ${mode_get_regexp} emptyvalue > output &&
test_cmp expect output test_cmp expect output
' '
echo true > expect
test_expect_success 'get bool variable with no value' ' test_expect_success 'get bool variable with no value' '
echo true >expect &&
git config --bool novalue.variable > output && git config --bool novalue.variable > output &&
test_cmp expect output test_cmp expect output
' '
echo false > expect
test_expect_success 'get bool variable with empty value' ' test_expect_success 'get bool variable with empty value' '
echo false >expect &&
git config --bool emptyvalue.variable > output && git config --bool emptyvalue.variable > output &&
test_cmp expect output test_cmp expect output
' '
@@ -604,19 +590,19 @@ cat > .git/config << EOF
c = d c = d
EOF EOF
cat > expect << EOF test_expect_success 'new section is partial match of another' '
cat >expect <<\EOF &&
[a.b] [a.b]
c = d c = d
[a] [a]
x = y x = y
EOF EOF
test_expect_success 'new section is partial match of another' '
git config a.x y && git config a.x y &&
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'new variable inserts into proper section' '
cat >expect <<\EOF &&
[a.b] [a.b]
c = d c = d
[a] [a]
@@ -625,8 +611,6 @@ cat > expect << EOF
[b] [b]
x = y x = y
EOF EOF
test_expect_success 'new variable inserts into proper section' '
git config b.x y && git config b.x y &&
git config a.b c && git config a.b c &&
test_cmp expect .git/config test_cmp expect .git/config
@@ -642,11 +626,10 @@ cat > other-config << EOF
bahn = strasse bahn = strasse
EOF EOF
cat > expect << EOF test_expect_success 'alternative GIT_CONFIG' '
cat >expect <<-\EOF &&
ein.bahn=strasse ein.bahn=strasse
EOF EOF
test_expect_success 'alternative GIT_CONFIG' '
GIT_CONFIG=other-config git config ${mode_prefix}list >output && GIT_CONFIG=other-config git config ${mode_prefix}list >output &&
test_cmp expect output test_cmp expect output
' '
@@ -675,14 +658,13 @@ test_expect_success 'refer config from subdirectory' '
test_cmp_config -C x strasse --file=../other-config --get ein.bahn test_cmp_config -C x strasse --file=../other-config --get ein.bahn
' '
cat > expect << EOF test_expect_success '--set in alternative file' '
cat >expect <<\EOF &&
[ein] [ein]
bahn = strasse bahn = strasse
[anwohner] [anwohner]
park = ausweis park = ausweis
EOF EOF
test_expect_success '--set in alternative file' '
git config --file=other-config anwohner.park ausweis && git config --file=other-config anwohner.park ausweis &&
test_cmp expect other-config test_cmp expect other-config
' '
@@ -730,7 +712,8 @@ test_expect_success 'rename another section' '
git config ${mode_prefix}rename-section branch."1 234 blabl/a" branch.drei git config ${mode_prefix}rename-section branch."1 234 blabl/a" branch.drei
' '
cat > expect << EOF test_expect_success 'rename succeeded' '
cat >expect <<\EOF &&
# Hallo # Hallo
#Bello #Bello
[branch "zwei"] [branch "zwei"]
@@ -740,8 +723,6 @@ cat > expect << EOF
[branch "drei"] [branch "drei"]
weird weird
EOF EOF
test_expect_success 'rename succeeded' '
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -753,7 +734,8 @@ test_expect_success 'rename a section with a var on the same line' '
git config ${mode_prefix}rename-section branch.vier branch.zwei git config ${mode_prefix}rename-section branch.vier branch.zwei
' '
cat > expect << EOF test_expect_success 'rename succeeded' '
cat >expect <<\EOF &&
# Hallo # Hallo
#Bello #Bello
[branch "zwei"] [branch "zwei"]
@@ -765,8 +747,6 @@ weird
[branch "zwei"] [branch "zwei"]
z = 1 z = 1
EOF EOF
test_expect_success 'rename succeeded' '
test_cmp expect .git/config test_cmp expect .git/config
' '
@@ -816,32 +796,29 @@ test_expect_success 'remove section' '
git config ${mode_prefix}remove-section branch.zwei git config ${mode_prefix}remove-section branch.zwei
' '
cat > expect << EOF test_expect_success 'section was removed properly' '
cat >expect <<\EOF &&
# Hallo # Hallo
#Bello #Bello
[branch "drei"] [branch "drei"]
weird weird
EOF EOF
test_expect_success 'section was removed properly' '
test_cmp expect .git/config test_cmp expect .git/config
' '
cat > expect << EOF test_expect_success 'section ending' '
cat >expect <<\EOF &&
[gitcvs] [gitcvs]
enabled = true enabled = true
dbname = %Ggitcvs2.%a.%m.sqlite dbname = %Ggitcvs2.%a.%m.sqlite
[gitcvs "ext"] [gitcvs "ext"]
dbname = %Ggitcvs1.%a.%m.sqlite dbname = %Ggitcvs1.%a.%m.sqlite
EOF EOF
test_expect_success 'section ending' '
rm -f .git/config && rm -f .git/config &&
git config ${mode_set} gitcvs.enabled true && git config ${mode_set} gitcvs.enabled true &&
git config ${mode_set} gitcvs.ext.dbname %Ggitcvs1.%a.%m.sqlite && git config ${mode_set} gitcvs.ext.dbname %Ggitcvs1.%a.%m.sqlite &&
git config ${mode_set} gitcvs.dbname %Ggitcvs2.%a.%m.sqlite && git config ${mode_set} gitcvs.dbname %Ggitcvs2.%a.%m.sqlite &&
test_cmp expect .git/config test_cmp expect .git/config
' '
test_expect_success numbers ' test_expect_success numbers '
@@ -885,7 +862,8 @@ test_expect_success 'invalid stdin config' '
test_grep "bad config line 1 in standard input" output test_grep "bad config line 1 in standard input" output
' '
cat > expect << EOF test_expect_success bool '
cat >expect <<-\EOF &&
true true
false false
true true
@@ -895,9 +873,6 @@ false
true true
false false
EOF EOF
test_expect_success bool '
git config ${mode_set} bool.true1 01 && git config ${mode_set} bool.true1 01 &&
git config ${mode_set} bool.true2 -1 && git config ${mode_set} bool.true2 -1 &&
git config ${mode_set} bool.true3 YeS && git config ${mode_set} bool.true3 YeS &&
@@ -923,7 +898,8 @@ test_expect_success 'invalid bool (set)' '
test_must_fail git config --bool bool.nobool foobar' test_must_fail git config --bool bool.nobool foobar'
cat > expect <<\EOF test_expect_success 'set --bool' '
cat >expect <<\EOF &&
[bool] [bool]
true1 = true true1 = true
true2 = true true2 = true
@@ -934,9 +910,6 @@ cat > expect <<\EOF
false3 = false false3 = false
false4 = false false4 = false
EOF EOF
test_expect_success 'set --bool' '
rm -f .git/config && rm -f .git/config &&
git config --bool bool.true1 01 && git config --bool bool.true1 01 &&
git config --bool bool.true2 -1 && git config --bool bool.true2 -1 &&
@@ -948,15 +921,13 @@ test_expect_success 'set --bool' '
git config --bool bool.false4 FALSE && git config --bool bool.false4 FALSE &&
test_cmp expect .git/config' test_cmp expect .git/config'
cat > expect <<\EOF test_expect_success 'set --int' '
cat >expect <<\EOF &&
[int] [int]
val1 = 1 val1 = 1
val2 = -1 val2 = -1
val3 = 5242880 val3 = 5242880
EOF EOF
test_expect_success 'set --int' '
rm -f .git/config && rm -f .git/config &&
git config --int int.val1 01 && git config --int int.val1 01 &&
git config --int int.val2 -1 && git config --int int.val2 -1 &&
@@ -994,7 +965,8 @@ test_expect_success 'get --bool-or-int' '
test_cmp expect actual test_cmp expect actual
' '
cat >expect <<\EOF test_expect_success 'set --bool-or-int' '
cat >expect <<\EOF &&
[bool] [bool]
true1 = true true1 = true
false1 = false false1 = false
@@ -1005,8 +977,6 @@ cat >expect <<\EOF
int2 = 1 int2 = 1
int3 = -1 int3 = -1
EOF EOF
test_expect_success 'set --bool-or-int' '
rm -f .git/config && rm -f .git/config &&
git config --bool-or-int bool.true1 true && git config --bool-or-int bool.true1 true &&
git config --bool-or-int bool.false1 false && git config --bool-or-int bool.false1 false &&
@@ -1018,14 +988,13 @@ test_expect_success 'set --bool-or-int' '
test_cmp expect .git/config test_cmp expect .git/config
' '
cat >expect <<\EOF test_expect_success !MINGW 'set --path' '
cat >expect <<\EOF &&
[path] [path]
home = ~/ home = ~/
normal = /dev/null normal = /dev/null
trailingtilde = foo~ trailingtilde = foo~
EOF EOF
test_expect_success !MINGW 'set --path' '
rm -f .git/config && rm -f .git/config &&
git config --path path.home "~/" && git config --path path.home "~/" &&
git config --path path.normal "/dev/null" && git config --path path.normal "/dev/null" &&
@@ -1037,25 +1006,23 @@ then
test_set_prereq HOMEVAR test_set_prereq HOMEVAR
fi fi
cat >expect <<EOF test_expect_success HOMEVAR 'get --path' '
cat >expect <<-EOF &&
$HOME/ $HOME/
/dev/null /dev/null
foo~ foo~
EOF EOF
test_expect_success HOMEVAR 'get --path' '
git config --get --path path.home > result && git config --get --path path.home > result &&
git config --get --path path.normal >> result && git config --get --path path.normal >> result &&
git config --get --path path.trailingtilde >> result && git config --get --path path.trailingtilde >> result &&
test_cmp expect result test_cmp expect result
' '
cat >expect <<\EOF test_expect_success !MINGW 'get --path copes with unset $HOME' '
cat >expect <<-\EOF &&
/dev/null /dev/null
foo~ foo~
EOF EOF
test_expect_success !MINGW 'get --path copes with unset $HOME' '
( (
sane_unset HOME && sane_unset HOME &&
test_must_fail git config --get --path path.home \ test_must_fail git config --get --path path.home \
@@ -1112,12 +1079,11 @@ test_expect_success 'get --type=color' '
test_cmp expect actual test_cmp expect actual
' '
cat >expect << EOF test_expect_success 'set --type=color' '
cat >expect <<\EOF &&
[foo] [foo]
color = red color = red
EOF EOF
test_expect_success 'set --type=color' '
rm .git/config && rm .git/config &&
git config --type=color foo.color "red" && git config --type=color foo.color "red" &&
test_cmp expect .git/config test_cmp expect .git/config
@@ -1133,14 +1099,14 @@ test_expect_success 'set --type=color barfs on non-color' '
test_grep "cannot parse color" error test_grep "cannot parse color" error
' '
cat > expect << EOF test_expect_success 'quoting' '
cat >expect <<\EOF &&
[quote] [quote]
leading = " test" leading = " test"
ending = "test " ending = "test "
semicolon = "test;test" semicolon = "test;test"
hash = "test#test" hash = "test#test"
EOF EOF
test_expect_success 'quoting' '
rm -f .git/config && rm -f .git/config &&
git config ${mode_set} quote.leading " test" && git config ${mode_set} quote.leading " test" &&
git config ${mode_set} quote.ending "test " && git config ${mode_set} quote.ending "test " &&
@@ -1166,13 +1132,12 @@ inued
inued" inued"
EOF EOF
cat > expect <<\EOF test_expect_success 'value continued on next line' '
cat >expect <<-\EOF &&
section.continued=continued section.continued=continued
section.noncont=not continued section.noncont=not continued
section.quotecont=cont;inued section.quotecont=cont;inued
EOF EOF
test_expect_success 'value continued on next line' '
git config ${mode_prefix}list > result && git config ${mode_prefix}list > result &&
test_cmp expect result test_cmp expect result
' '