-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
... includes the mean tests I mentioned on the list. Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
- Loading branch information
Johannes Schindelin
authored and
Junio C Hamano
committed
Nov 20, 2005
1 parent
2d2465c
commit 942c1f5
Showing
1 changed file
with
180 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,180 @@ | ||
#!/bin/sh | ||
# | ||
# Copyright (c) 2005 Johannes Schindelin | ||
# | ||
|
||
test_description='Test git-config-set in different settings' | ||
|
||
. ./test-lib.sh | ||
|
||
test -f .git/config && rm .git/config | ||
|
||
git-config-set core.penguin "little blue" | ||
|
||
cat > expect << EOF | ||
# | ||
# This is the config file | ||
# | ||
[core] | ||
penguin = little blue | ||
EOF | ||
|
||
test_expect_success 'initial' 'cmp .git/config expect' | ||
|
||
git-config-set Core.Movie BadPhysics | ||
|
||
cat > expect << EOF | ||
# | ||
# This is the config file | ||
# | ||
[core] | ||
penguin = little blue | ||
Movie = BadPhysics | ||
EOF | ||
|
||
test_expect_success 'mixed case' 'cmp .git/config expect' | ||
|
||
git-config-set Cores.WhatEver Second | ||
|
||
cat > expect << EOF | ||
# | ||
# This is the config file | ||
# | ||
[core] | ||
penguin = little blue | ||
Movie = BadPhysics | ||
[Cores] | ||
WhatEver = Second | ||
EOF | ||
|
||
test_expect_success 'similar section' 'cmp .git/config expect' | ||
|
||
git-config-set CORE.UPPERCASE true | ||
|
||
cat > expect << EOF | ||
# | ||
# This is the config file | ||
# | ||
[core] | ||
penguin = little blue | ||
Movie = BadPhysics | ||
UPPERCASE = true | ||
[Cores] | ||
WhatEver = Second | ||
EOF | ||
|
||
test_expect_success 'similar section' 'cmp .git/config expect' | ||
|
||
cat > .git/config << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
haha ="beta" # last silly comment | ||
[nextSection] noNewline = ouch | ||
EOF | ||
|
||
git-config-set beta.haha alpha | ||
|
||
cat > expect << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
haha = alpha | ||
[nextSection] noNewline = ouch | ||
EOF | ||
|
||
test_expect_success 'really mean test' 'cmp .git/config expect' | ||
|
||
git-config-set nextsection.nonewline wow | ||
|
||
cat > expect << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
haha = alpha | ||
[nextSection] | ||
nonewline = wow | ||
EOF | ||
|
||
test_expect_success 'really really mean test' 'cmp .git/config expect' | ||
|
||
git-config-set beta.haha | ||
|
||
cat > expect << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
[nextSection] | ||
nonewline = wow | ||
EOF | ||
|
||
test_expect_success 'unset' 'cmp .git/config expect' | ||
|
||
git-config-set nextsection.NoNewLine "wow2 for me" "for me$" | ||
|
||
cat > expect << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
[nextSection] | ||
nonewline = wow | ||
NoNewLine = wow2 for me | ||
EOF | ||
|
||
test_expect_success 'multivar' 'cmp .git/config expect' | ||
|
||
git-config-set nextsection.nonewline "wow3" "wow$" | ||
|
||
cat > expect << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
[nextSection] | ||
nonewline = wow3 | ||
NoNewLine = wow2 for me | ||
EOF | ||
|
||
test_expect_success 'multivar replace' 'cmp .git/config expect' | ||
|
||
test_expect_failure 'ambiguous unset' \ | ||
'git-config-set --unset nextsection.nonewline' | ||
|
||
test_expect_failure 'invalid unset' \ | ||
'git-config-set --unset somesection.nonewline' | ||
|
||
git-config-set --unset nextsection.nonewline "wow3$" | ||
|
||
cat > expect << EOF | ||
[beta] ; silly comment # another comment | ||
noIndent= sillyValue ; 'nother silly comment | ||
# empty line | ||
; comment | ||
[nextSection] | ||
NoNewLine = wow2 for me | ||
EOF | ||
|
||
test_expect_success 'multivar unset' 'cmp .git/config expect' | ||
|
||
test_expect_failure 'invalid key' 'git-config-set inval.2key blabla' | ||
|
||
test_expect_success 'correct key' 'git-config-set 123456.a123 987' | ||
|
||
test_done | ||
|