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

[PATCH 7/7] remote-helpers: add tests for testgit helper

From
Sverre Rabbelier <srabbelier@gmail.com>
Date
Mar 29, 2010, 16:48 UTC
Message-ID
<1269881309-19690-8-git-send-email-srabbelier@gmail.com>
In-Reply-To
<1269881309-19690-1-git-send-email-srabbelier@gmail.com>
---
	I used a httpd server for the remote at first, but figured
	we should probably not depend on those tests being run. It
	was fairly trivial to make the testgit helper treat file://
	urls as 'remote', so I figured that'd work just as well.
 t/t5800-remote-helpers.sh |   70 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 0 deletions(-)
 create mode 100755 t/t5800-remote-helpers.sh
diff --git a/t/t5800-remote-helpers.sh b/t/t5800-remote-helpers.sh
new file mode 100755
index 0000000..33f546b
--- /dev/null
+++ b/t/t5800-remote-helpers.sh
@@ -0,0 +1,70 @@
+#!/bin/sh
+#
+# Copyright (c) 2010 Sverre Rabbelier
+#
+
+test_description='Test remote-helper import and export commands'
+
+. ./test-lib.sh
+
+test_expect_success 'setup repository' '
+	git init --bare server/.git &&
+	git clone server public
+	(cd public &&
+	 echo content >file &&
+	 git add file &&
+	 git commit -m one &&
+	 git push origin master)
+'
+
+test_expect_success 'cloning from local repo' '
+	git clone "testgit::${PWD}/server" localclone
+	test_cmp public/file localclone/file
+'
+
+test_expect_success 'cloning from remote repo' '
+	git clone "testgit::file://${PWD}/server" clone &&
+	test_cmp public/file clone/file
+'
+
+test_expect_success 'create new commit on remote' '
+	(cd public &&
+	 echo content >>file &&
+	 git commit -a -m two &&
+	 git push)
+'
+
+test_expect_success 'pulling from local repo' '
+	(cd localclone && git pull) &&
+	test_cmp public/file localclone/file
+'
+
+test_expect_success 'pulling from remote remote' '
+	(cd clone && git pull) &&
+	test_cmp public/file clone/file
+'
+
+test_expect_success 'pushing to local repo' '
+	(cd localclone &&
+	echo content >>file &&
+	git commit -a -m three &&
+	git push) &&
+	HEAD=$(git --git-dir=localclone/.git rev-parse --verify HEAD) &&
+	test $HEAD = $(git --git-dir=server/.git rev-parse --verify HEAD)
+'
+
+test_expect_success 'synch with changes from localclone' '
+	(cd clone &&
+	 git pull)
+'
+
+test_expect_success 'pushing remote local repo' '
+	(cd clone &&
+	echo content >>file &&
+	git commit -a -m four &&
+	git push) &&
+	HEAD=$(git --git-dir=clone/.git rev-parse --verify HEAD) &&
+	test $HEAD = $(git --git-dir=server/.git rev-parse --verify HEAD)
+'
+
+test_done
-- 
1.7.0.3.317.gbb04ec
Previous: Sverre RabbelierNext: Jonathan Nieder
Message 12 of 14 in “remote-helpers: exporting”
  1. 0/7 remote-helpers: exportingSverre Rabbelier, Mar 29, 2010
  2. 1/7 clone: pass the remote name to remote_getSverre Rabbelier, Mar 29, 2010
  3. 2/7 clone: also configure url for bare clonesSverre Rabbelier, Mar 29, 2010
  4. 3/7 fast-import: always create marks_file directoriesSverre Rabbelier, Mar 29, 2010
  5. 4/7 remote-helpers: allow requesing the path to the .git directorySverre Rabbelier, Mar 29, 2010
  6. 5/7 remote-helpers: add support for an export commandSverre Rabbelier, Mar 29, 2010
  7. Daniel BarkalowMar 29, 2010
  8. Sverre RabbelierMar 29, 2010
  9. Junio C HamanoApr 1, 2010
  10. Sverre RabbelierApr 1, 2010
  11. 6/7 remote-helpers: add testgit helperSverre Rabbelier, Mar 29, 2010
  12. 7/7 remote-helpers: add tests for testgit helperSverre Rabbelier, Mar 29, 2010
  13. Jonathan NiederApr 12, 2010
  14. Sverre RabbelierApr 12, 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.