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

Re: [PATCH 2/3] contrib/subtree/t: Added tests for .gitsubtree support

From
Paul Campbell <pcampbell@kemitix.net>
Date
Feb 17, 2013, 15:26 UTC
Message-ID
<CALeLG_n-WocsMTvRZHm6v-+wrCNVvCh6O2baVDALSE3JB8ibng@mail.gmail.com>
In-Reply-To
<20130217113723.GA9882@elie.Belkin>
On Sun, Feb 17, 2013 at 11:37 AM, Jonathan Nieder <jrnieder@gmail.com> wrote:
Show 13 quoted lines
> Paul Campbell wrote:
>
>> Is there was a better way to verify that the push operation succeeds
>> then grepping for a SHA1?
>
> IIRC then when a push fails, it will exit with nonzero status (so the
> usual &&-chaining would propagate the error).
>
> Alternatively, one can fetch, ls-remote, or enter the target repo and
> use history inspection tools to check that the result is as expected.
>
> Hope that helps,
> Jonathan
Thanks Jonathan.
Here's the updated version of the tests:
 contrib/subtree/t/t7900-subtree.sh | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)
diff --git a/contrib/subtree/t/t7900-subtree.sh
b/contrib/subtree/t/t7900-subtree.sh
index 80d3399..e7bb911 100755
--- a/contrib/subtree/t/t7900-subtree.sh
+++ b/contrib/subtree/t/t7900-subtree.sh
@@ -465,4 +465,37 @@ test_expect_success 'verify one file change per commit' '
         ))
 '

+# return to mainline
+cd ../..
+
+# .gitsubtree
+test_expect_success 'added repository appears in .gitsubtree' '
+	git subtree add --prefix=copy0 sub1 &&
+	grep "^copy0 \. sub1$" .gitsubtree
+'
+
+test_expect_success 'change in subtree is pushed okay' '
+	(cd copy0 && create new_file && git commit -m"Added new_file") &&
+	git ls-tree refs/heads/sub1 >output &&
+	! grep "new_file$" output &&
+	git subtree push --prefix=copy0 &&
+	git ls-tree refs/heads/sub1 >output &&
+	grep "new_file$" output
+'
+
+test_expect_success 'pull into subtree okay' '
+	git subtree add --prefix=copy1 sub1 &&
+	git subtree add --prefix=copy2 sub1 &&
+	(cd copy1 && create new_file_in_copy1 && git commit -m"Added
new_file_in_copy1") &&
+	git subtree push --prefix=copy1 &&
+	git subtree pull --prefix=copy2 | grep "^ create mode 100644
copy2/new_file_in_copy1$"
+'
+
+test_expect_success 'replace outdated entry in .gitsubtree' '
+	echo "copy3 . sub2" >>.gitsubtree &&
+	git subtree add --prefix=copy3 sub1 &&
+	! grep "^copy3 . sub2$" .gitsubtree &&
+	grep "^copy3 . sub1$" .gitsubtree
+'
+
 test_done
-- 
1.8.1.3.605.g02339dd


-- 
Paul [W] Campbell
Previous: Jonathan NiederNext: Jonathan Nieder
Message 5 of 6 in “contrib/subtree/t: Added tests for .gitsubtree support”
  1. 2/3 contrib/subtree/t: Added tests for .gitsubtree supportPaul Campbell, Feb 15, 2013
  2. Jonathan NiederFeb 15, 2013
  3. Paul CampbellFeb 15, 2013
  4. Jonathan NiederFeb 17, 2013
  5. Paul CampbellFeb 17, 2013
  6. Jonathan NiederFeb 18, 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.