From: Jeff King <peff@peff.net>
To: Finn Arne Gangstad <finnag@pvv.org>
Cc: git@vger.kernel.org, gitster@pobox.com
Subject: Re: [PATCH 0/3] git remote update: Check args and fallback to remotes
Date: Mon, 6 Apr 2009 16:18:23 -0400 [thread overview]
Message-ID: <20090406201823.GD28120@coredump.intra.peff.net> (raw)
In-Reply-To: <1239025262-16960-1-git-send-email-finnag@pvv.org>
On Mon, Apr 06, 2009 at 03:40:59PM +0200, Finn Arne Gangstad wrote:
> This series is on top of next.
>
> git remote update <non-existing> would previously silently do nothing.
> With this patch series, it will (with 1/3) error out when non-existing groups
> are given, and with 2/3 & 3/3 it will use a remote if a group cannot be found.
Great, this was on my todo list so I am happy that procrastination saved
me some work. :)
The patches look fine to me, except that there are no tests. The patch
below adds a "remote groups" test script. There is a slight bit of
overlap with the update tests from t5505, but I don't think it is a
problem.
It is intended to be applied before your series. Your 1/3 would switch
t5506.3 from expect_failure to expect_success, and 3/3 would switch
t5506.6 from failure to success.
-- >8 --
Subject: [PATCH] add tests for remote groups
This tries to systematically cover existing behavior, and
also mark some expect_failure cases for desired behavior.
Signed-off-by: Jeff King <peff@peff.net>
---
t/t5506-remote-groups.sh | 81 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 81 insertions(+), 0 deletions(-)
create mode 100755 t/t5506-remote-groups.sh
diff --git a/t/t5506-remote-groups.sh b/t/t5506-remote-groups.sh
new file mode 100755
index 0000000..6653a9c
--- /dev/null
+++ b/t/t5506-remote-groups.sh
@@ -0,0 +1,81 @@
+#!/bin/sh
+
+test_description='git remote group handling'
+. ./test-lib.sh
+
+mark() {
+ echo "$1" >mark
+}
+
+update_repo() {
+ (cd $1 &&
+ echo content >>file &&
+ git add file &&
+ git commit -F ../mark)
+}
+
+update_repos() {
+ update_repo one $1 &&
+ update_repo two $1
+}
+
+repo_fetched() {
+ if test "`git log -1 --pretty=format:%s $1 --`" = "`cat mark`"; then
+ echo >&2 "repo was fetched: $1"
+ return 0
+ fi
+ echo >&2 "repo was not fetched: $1"
+ return 1
+}
+
+test_expect_success 'setup' '
+ mkdir one && (cd one && git init) &&
+ mkdir two && (cd two && git init) &&
+ git remote add -m master one one &&
+ git remote add -m master two two
+'
+
+test_expect_success 'no group updates all' '
+ mark update-all &&
+ update_repos &&
+ git remote update &&
+ repo_fetched one &&
+ repo_fetched two
+'
+
+test_expect_failure 'nonexistant group produces error' '
+ mark nonexistant &&
+ update_repos &&
+ test_must_fail git remote update nonexistant &&
+ ! repo_fetched one &&
+ ! repo_fetched two
+'
+
+test_expect_success 'updating group updates all members' '
+ mark group-all &&
+ update_repos &&
+ git config --add remotes.all one &&
+ git config --add remotes.all two &&
+ git remote update all &&
+ repo_fetched one &&
+ repo_fetched two
+'
+
+test_expect_success 'updating group does not update non-members' '
+ mark group-some &&
+ update_repos &&
+ git config --add remotes.some one &&
+ git remote update some &&
+ repo_fetched one &&
+ ! repo_fetched two
+'
+
+test_expect_failure 'updating remote name updates that remote' '
+ mark remote-name &&
+ update_repos &&
+ git remote update one &&
+ repo_fetched one &&
+ ! repo_fetched two
+'
+
+test_done
--
1.6.2.2.585.g1e067
prev parent reply other threads:[~2009-04-06 20:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-06 13:40 [PATCH 0/3] git remote update: Check args and fallback to remotes Finn Arne Gangstad
2009-04-06 13:41 ` [PATCH 1/3] git remote update: Report error for non-existing groups Finn Arne Gangstad
2009-04-08 2:16 ` Junio C Hamano
2009-04-08 8:07 ` Finn Arne Gangstad
2009-04-08 8:20 ` Junio C Hamano
2009-04-08 17:08 ` Jeff King
2009-04-08 18:48 ` Junio C Hamano
2009-04-06 13:41 ` [PATCH 2/3] remote: New function remote_is_configured() Finn Arne Gangstad
2009-04-06 13:41 ` [PATCH 3/3] git remote update: Fallback to remote if group does not exist Finn Arne Gangstad
2009-04-06 20:18 ` Jeff King [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090406201823.GD28120@coredump.intra.peff.net \
--to=peff@peff.net \
--cc=finnag@pvv.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.