Re: [PATCH 3/3] t3503: test cherry picking and reverting root commits
- From
Jeff King <peff@peff.net>
- Date
- May 12, 2011, 12:37 UTC
- Message-ID
- <20110512123703.GA21078@sigill.intra.peff.net>
- In-Reply-To
- <4DCBD087.90302@viscovery.net>
On Thu, May 12, 2011 at 02:20:23PM +0200, Johannes Sixt wrote:
Show 13 quoted lines
> Am 5/12/2011 13:10, schrieb Jeff King:
> > +test_expect_success 'cherry-pick a root commit with an external strategy' '
> > +
> > + git cherry-pick --strategy=resolve master &&
> > + test first = $(cat file1)
>
> What if file1 does not exist? Then cat fails loudly. But this does not
> fail the entire command immediately; rather, the test command fails, but
> not because of a non-equality, but because of an invalid usage ("syntax
> error"). IOW, the test does the right thing, but for the wrong reason.
>
> Yes, an earlier test gave a bad precedent, and the following fixup (to
> be squashed in) fixes it, too.Yeah, sorry, I blindly copied the earlier test without thinking. If we are going to tweak, my preference is actually to use test_cmp. And while we're at it, I should be using test_path_is_missing.
So:
diff --git a/t/t3503-cherry-pick-root.sh b/t/t3503-cherry-pick-root.sh index 1f9ed67..9aefe3a 100755 --- a/t/t3503-cherry-pick-root.sh +++ b/t/t3503-cherry-pick-root.sh @@ -23,28 +23,30 @@ test_expect_success setup ' test_expect_success 'cherry-pick a root commit' ' git cherry-pick master && - test first = $(cat file1) + echo first >expect && + test_cmp expect file1 ' test_expect_success 'revert a root commit' ' git revert master && - ! test -f file1 + test_path_is_missing file1 ' test_expect_success 'cherry-pick a root commit with an external strategy' ' git cherry-pick --strategy=resolve master && - test first = $(cat file1) + echo first >expect && + test_cmp expect file1 ' test_expect_success 'revert a root commit with an external strategy' ' git revert --strategy=resolve master && - ! test -f file1 + test_path_is_missing file1 '