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

[PATCH 1/6] t5000: integrate export-subst tests into regular tests

From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
Date
May 20, 2013, 09:58 UTC
Message-ID
<1369043909-59207-2-git-send-email-rene.scharfe@lsrfire.ath.cx>
In-Reply-To
<1369043909-59207-1-git-send-email-rene.scharfe@lsrfire.ath.cx>

Instead of creating extra archives for testing substitutions, set the attribute export-subst and overwrite the marked file with the expected (expanded) content right between commiting and archiving. Thus placeholder expansion based on the committed content is performed with each archive creation and the comparision with the contents of directory a yields the correct result. We can then remove the special tests for export-subst.

Signed-off-by: René Scharfe <rene.scharfe@lsrfire.ath.cx>
---
 t/t5000-tar-tree.sh | 38 ++++++--------------------------------
 1 file changed, 6 insertions(+), 32 deletions(-)
diff --git a/t/t5000-tar-tree.sh b/t/t5000-tar-tree.sh
index 3fbd366..68b5698 100755
--- a/t/t5000-tar-tree.sh
+++ b/t/t5000-tar-tree.sh
@@ -62,6 +62,12 @@ test_expect_success \
      git update-ref HEAD $(TZ=GMT GIT_COMMITTER_DATE="2005-05-27 22:00:00" \
      git commit-tree $treeid </dev/null)'
 
+test_expect_success 'setup export-subst' '
+	echo "substfile?" export-subst >>.git/info/attributes &&
+	git log --max-count=1 "--pretty=format:A${SUBSTFORMAT}O" HEAD \
+		>a/substfile1
+'
+
 test_expect_success \
     'create bare clone' \
     'git clone --bare . bare.git &&
@@ -148,38 +154,6 @@ test_expect_success \
     'validate file contents with prefix' \
     'diff -r a c/prefix/a'
 
-test_expect_success \
-    'create archives with substfiles' \
-    'cp .git/info/attributes .git/info/attributes.before &&
-     echo "substfile?" export-subst >>.git/info/attributes &&
-     git archive HEAD >f.tar &&
-     git archive --prefix=prefix/ HEAD >g.tar &&
-     mv .git/info/attributes.before .git/info/attributes'
-
-test_expect_success \
-    'extract substfiles' \
-    '(mkdir f && cd f && "$TAR" xf -) <f.tar'
-
-test_expect_success \
-     'validate substfile contents' \
-     'git log --max-count=1 "--pretty=format:A${SUBSTFORMAT}O" HEAD \
-      >f/a/substfile1.expected &&
-      test_cmp f/a/substfile1.expected f/a/substfile1 &&
-      test_cmp a/substfile2 f/a/substfile2
-'
-
-test_expect_success \
-    'extract substfiles from archive with prefix' \
-    '(mkdir g && cd g && "$TAR" xf -) <g.tar'
-
-test_expect_success \
-     'validate substfile contents from archive with prefix' \
-     'git log --max-count=1 "--pretty=format:A${SUBSTFORMAT}O" HEAD \
-      >g/prefix/a/substfile1.expected &&
-      test_cmp g/prefix/a/substfile1.expected g/prefix/a/substfile1 &&
-      test_cmp a/substfile2 g/prefix/a/substfile2
-'
-
 test_expect_success 'git archive with --output, override inferred format' '
 	git archive --format=tar --output=d4.zip HEAD &&
 	test_cmp b.tar d4.zip
-- 
1.8.2.3
Previous: René ScharfeNext: Eric Sunshine
Message 2 of 15 in “t5000: add test for pax extended header generation”
  1. 0/6 t5000: add test for pax extended header generationRené Scharfe, May 20, 2013
  2. 1/6 t5000: integrate export-subst tests into regular testsRené Scharfe, May 20, 2013
  3. Eric SunshineMay 20, 2013
  4. René ScharfeMay 20, 2013
  5. 2/6 t5000, t5003: create directories for extracted files lazilyRené Scharfe, May 20, 2013
  6. 3/6 t5000: factor out check_tarRené Scharfe, May 20, 2013
  7. Eric SunshineMay 20, 2013
  8. René ScharfeMay 20, 2013
  9. 4/6 t5000: use check_tar for prefix testRené Scharfe, May 20, 2013
  10. 5/6 t5000: simplify tar-tree testsRené Scharfe, May 20, 2013
  11. 6/6 t5000: test long filenamesRené Scharfe, May 20, 2013
  12. Eric SunshineMay 20, 2013
  13. (unknown)Marty Landman, May 20, 2013
  14. René ScharfeMay 20, 2013
  15. Junio C HamanoMay 20, 2013

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.