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

[PATCH 1/7] t4018 (funcname patterns): make .gitattributes state easier to track

From
Jonathan Nieder <jrnieder@gmail.com>
Date
May 21, 2011, 19:11 UTC
Message-ID
<20110521191133.GB10530@elie>
In-Reply-To
<20110521185314.GA10530@elie>

Most, but not all, tests in this script rely on attributes declaring that files with a .java extension should use the "java" driver:

	*.java diff=java

Split out a "set up" test to put such a .gitattributes in place after the tests that do not want it have run, to make it more likely that individual tests other than this setup test can be safely modified, rearranged, or skipped. Presumably this setup code will learn to request other drivers for other extensions in the same place when the test suite learns to exercise other diff drivers.

Similarly, make sure that early test assertions that do not use these default attributes set up .gitattributes appropriately for themselves, so tests that run before can be modified with less risk of breaking something.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
 t/t4018-diff-funcname.sh |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/t/t4018-diff-funcname.sh b/t/t4018-diff-funcname.sh
index 3646930..24eb1a3 100755
--- a/t/t4018-diff-funcname.sh
+++ b/t/t4018-diff-funcname.sh
@@ -36,11 +36,12 @@ builtin_patterns="bibtex cpp csharp fortran html java objc pascal perl php pytho
 for p in $builtin_patterns
 do
 	test_expect_success "builtin $p pattern compiles" '
-		echo "*.java diff=$p" > .gitattributes &&
+		echo "*.java diff=$p" >.gitattributes &&
 		! { git diff --no-index Beer.java Beer-correct.java 2>&1 |
 			grep "fatal" > /dev/null; }
 	'
 	test_expect_success "builtin $p wordRegex pattern compiles" '
+		echo "*.java diff=$p" >.gitattributes &&
 		! { git diff --no-index --word-diff \
 			Beer.java Beer-correct.java 2>&1 |
 			grep "fatal" > /dev/null; }
@@ -53,8 +54,11 @@ test_expect_success 'default behaviour' '
 	grep "^@@.*@@ public class Beer"
 '
 
+test_expect_success 'set up .gitattributes declaring drivers to test' '
+	echo "*.java diff=java" >.gitattributes
+'
+
 test_expect_success 'preset java pattern' '
-	echo "*.java diff=java" >.gitattributes &&
 	git diff --no-index Beer.java Beer-correct.java |
 	grep "^@@.*@@ public static void main("
 '
-- 
1.7.5.1
Previous: Jonathan NiederNext: Jonathan Nieder
Message 5 of 13 in “Problems with Git's "perl" userdiff driver”
  1. Ævar Arnfjörð BjarmasonMay 15, 2011
  2. Junio C HamanoMay 15, 2011
  3. Ævar Arnfjörð BjarmasonMay 15, 2011
  4. 0/7 Re: Problems with Git's "perl" userdiff driverJonathan Nieder, May 21, 2011
  5. 1/7 t4018 (funcname patterns): make .gitattributes state easier to trackJonathan Nieder, May 21, 2011
  6. 2/7 t4018 (funcname patterns): make configuration easier to trackJonathan Nieder, May 21, 2011
  7. 3/7 t4018 (funcname patterns): minor cleanupsJonathan Nieder, May 21, 2011
  8. 4/7 userdiff/perl: anchor "sub" and "package" patterns on the leftJonathan Nieder, May 21, 2011
  9. 5/7 userdiff/perl: match full line of POD headersJonathan Nieder, May 21, 2011
  10. 6/7 userdiff/perl: catch sub with brace on second lineJonathan Nieder, May 21, 2011
  11. 8/7 userdiff/perl: tighten BEGIN/END block pattern to reject here-doc delimitersJonathan Nieder, May 22, 2011
  12. 7/7 tests: make test_expect_code quieter on successJonathan Nieder, May 21, 2011
  13. Ævar Arnfjörð BjarmasonMay 22, 2011

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.