git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 6/7] t1303 (config): style tweaks

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Sep 7, 2010, 01:53 UTC
Message-ID
<20100907015317.GG1182@burratino>
In-Reply-To
<20100907014135.GA1182@burratino>

This test already has impeccable style, with one exception: there is an unnecessary use of a subshell. Use a {} block instead. While at it:

 - guard setup commands with test_expect_success, so the commands
   are printed when the test is run with "-v" and errors in setup
   can be caught;
 - use echo instead of printf to print simple text ending with a
   newline, so the later use of printf stands out more;
 - put a single space before () in function definitions, for
   consistency with other shell scripts in git;
 - reorder arguments to test_cmp as "test_cmp expected actual".
Cc: Jeff King <peff@peff.net>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
 t/t1303-wacky-config.sh |   28 ++++++++++++++++------------
 1 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/t/t1303-wacky-config.sh b/t/t1303-wacky-config.sh
index 080117c..ce7ce1c 100755
--- a/t/t1303-wacky-config.sh
+++ b/t/t1303-wacky-config.sh
@@ -3,16 +3,20 @@
 test_description='Test wacky input to git config'
 . ./test-lib.sh
 
-setup() {
-	(printf "[section]\n" &&
-	printf "  key = foo") >.git/config
-}
-
-check() {
-	echo "$2" >expected
-	git config --get "$1" >actual 2>&1
-	test_cmp actual expected
-}
+test_expect_success 'setup: helper functions' '
+	setup () {
+		{
+			echo "[section]" &&
+			printf "  key = foo"
+		} >.git/config
+	} &&
+
+	check () {
+		echo "$2" >expected
+		git config --get "$1" >actual 2>&1
+		test_cmp expected actual
+	}
+'
 
 test_expect_success 'modify same key' '
 	setup &&
@@ -34,14 +38,14 @@ test_expect_success 'add key in different section' '
 	check section2.key bar
 '
 
-SECTION="test.q\"s\\sq'sp e.key"
 test_expect_success 'make sure git config escapes section names properly' '
+	SECTION="test.q\"s\\sq'\''sp e.key" &&
 	git config "$SECTION" bar &&
 	check "$SECTION" bar
 '
 
-LONG_VALUE=$(printf "x%01021dx a" 7)
 test_expect_success 'do not crash on special long config line' '
+	LONG_VALUE=$(printf "x%01021dx a" 7) &&
 	setup &&
 	git config section.key "$LONG_VALUE" &&
 	check section.key "fatal: bad config file line 2 in .git/config"
-- 
1.7.2.3
Previous: Nguyen Thai Ngoc DuyNext: Jeff King
Message 13 of 27 in “Several tests: cd inside subshell instead of around”
  1. Several tests: cd inside subshell instead of aroundJens Lehmann, Sep 6, 2010
  2. Jonathan NiederSep 6, 2010
  3. Jens LehmannSep 6, 2010
  4. 0/7 Re: [PATCH] Several tests: cd inside subshell instead of aroundJonathan Nieder, Sep 7, 2010
  5. 1/7 tests: subshell indentation stylefixJonathan Nieder, Sep 7, 2010
  6. Jonathan NiederSep 7, 2010
  7. 2/7 t1450 (fsck): remove dangling objectsJonathan Nieder, Sep 7, 2010
  8. 3/7 t2105 (gitfile): add missing &&Jonathan Nieder, Sep 7, 2010
  9. Brad KingSep 7, 2010
  10. 4/7 t0004 (unwritable files): simplify error handlingJonathan Nieder, Sep 7, 2010
  11. 5/7 t1302 (core.repositoryversion): style tweaksJonathan Nieder, Sep 7, 2010
  12. Nguyen Thai Ngoc DuySep 7, 2010
  13. 6/7 t1303 (config): style tweaksJonathan Nieder, Sep 7, 2010
  14. Jeff KingSep 7, 2010
  15. Junio C HamanoSep 7, 2010
  16. Jonathan NiederSep 7, 2010
  17. guarding everything with test_expect_success (Re: [PATCH 6/7] t1303 (config): style tweaks)Jonathan Nieder, Sep 7, 2010
  18. Jeff KingSep 7, 2010
  19. Jonathan NiederSep 7, 2010
  20. 7/7 t2016 (checkout -p): use printf for multiline y/n inputJonathan Nieder, Sep 7, 2010
  21. Thomas RastSep 7, 2010
  22. Jonathan NiederSep 7, 2010
  23. Junio C HamanoSep 6, 2010
  24. Jonathan NiederSep 7, 2010
  25. Junio C HamanoSep 7, 2010
  26. Jonathan NiederSep 7, 2010
  27. t1020: Get rid of 'cd "$HERE"' at the start of each testJens Lehmann, Sep 7, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.