Re: [PATCH] Improved and extended t5404
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Nov 14, 2007, 21:52 UTC
- Message-ID
- <7vabpgfqa4.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <20071113230234.GI3268@steel.home>
Alex Riesen <raa.lkml@gmail.com> writes:
> Ignore exit code of git push in t5404, as it is not relevant for the > test: it already checks whether the references updated correctly.
I think the Subject: goes a lot better with a description like this:
Enhance the test to check the case where X does Y and to make sure Z happens.
Because we haven't settled on what the exit status from "git push" command itself should be in such a partial failure case, do not check the exit status from it for now.
Show 12 quoted lines
> diff --git a/t/t5404-tracking-branches.sh b/t/t5404-tracking-branches.sh > index 20718d4..a51bbdc 100755 > --- a/t/t5404-tracking-branches.sh > +++ b/t/t5404-tracking-branches.sh > @@ -10,6 +10,7 @@ test_expect_success 'setup' ' > git commit -m 1 && > git branch b1 && > git branch b2 && > + git branch b3 && > git clone . aa && > git checkout b1 && > ...
So it makes another ref "b3" point at the initial commit,...
Show 9 quoted lines
> ... > test_expect_success 'check tracking branches updated correctly after push' ' > cd aa && > b1=$(git rev-parse origin/b1) && > b2=$(git rev-parse origin/b2) && > + b3=$(git rev-parse origin/b3) && > git checkout -b b1 origin/b1 && > echo aa-b1 >>file && > git commit -a -m aa-b1 &&
... then records what was cloned,...
Show 13 quoted lines
> @@ -32,9 +36,28 @@ test_expect_success 'check tracking branches updated correctly after push' '
> git checkout master &&
> echo aa-master >>file &&
> git commit -a -m aa-master &&
> + {
> + git push
> + test "$(git rev-parse origin/b1)" = "$b1" &&
> + test "$(git rev-parse origin/b2)" = "$b2" &&
> + test "$(git rev-parse origin/b3)" = "$b3" &&
> + test "$(git rev-parse origin/master)" = \
> + "$(git rev-parse master)"
> + }
> +'... and checks that untouched "b3" stays the same (iow, tests up-to-date case).
Show 8 quoted lines
> +
> +test_expect_success 'delete remote branch' '
> + git push origin :refs/heads/b3
> + {
> + git rev-parse origin/b3
> + test $? != 0 || \
> + say "Hmm... Maybe tracking ref should be deleted?"
> + } &&Ah, you meant that tracking should be deleted so this should be fixed in the code but the test is disabled for now. Let's be a bit more explicit about such a temporary disabled test, like this:
git push origin :refs/heads/b3
# The remote-tracking branch origin/b3 should be deleted;
# we need to update the code and enable this test.
: git rev-parse --verify origin/b3 &&Show 6 quoted lines
> + cd "$start_dir" &&
> + {
> + git rev-parse refs/heads/b3
> + test $? != 0
> + }
> '