Re: [PATCH 1/2] add basic branch display tests
- From
Jeff King <peff@peff.net>
- Date
- Feb 19, 2009, 03:45 UTC
- Message-ID
- <20090219034504.GA19862@coredump.intra.peff.net>
- In-Reply-To
- <20090219033444.GA18970@coredump.intra.peff.net>
On Wed, Feb 18, 2009 at 10:34:44PM -0500, Jeff King wrote:
> We were not testing the output of "git branch" anywhere.
There is one thing that occurred to me while writing these tests that I wanted to mention.
When we show a remote symref with "git branch -r", it looks like this:
Show 9 quoted lines
> +cat >expect <<'EOF' > + origin/HEAD -> origin/branch-one > + origin/branch-one > + origin/branch-two > +EOF > +test_expect_success 'git branch -r shows remote branches' ' > + git branch -r >actual && > + test_cmp expect actual > +'
which makes sense. <remote>/<symref> -> <remote>/<branch>
Show 12 quoted lines
> +cat >expect <<'EOF' > + branch-one > + branch-two > +* master > + remotes/origin/HEAD -> origin/branch-one > + remotes/origin/branch-one > + remotes/origin/branch-two > +EOF > +test_expect_success 'git branch -a shows local and remote branches' ' > + git branch -a >actual && > + test_cmp expect actual > +'
But here we stick the "remotes/" head on, since we are showing both types. But the right hand side of the symref doesn't get the same treatment.
I don't think it's a big deal, but I wasn't sure if it was intentional, a bug, or simply that nobody cares (and since I have now codified it in a test script, it seems like we should make sure it is intentional).
I also had a brief thought that reprinting the <remote> is pointless. That is, printing
origin/HEAD -> master
shows what is happening with less text due to the context (i.e., we already know we are talking about remote "origin" -- and if it isn't in origin, we already show more). But that is probably a bad idea; that context is missing if you were to try to do something like "git show"; <remote>/<branch> would work, but <branch> wouldn't.
-Peff