From: Johannes Sixt Date: Fri, 28 Feb 2014 06:55:25 GMT Subject: Re: [PATCH 1/2] t3200-branch: test setting branch as own upstream Message-ID: <531032DD.9000904@viscovery.net> In-Reply-To: <20140228053703.GA32556@sigill.intra.peff.net> Am 2/28/2014 6:37, schrieb Jeff King: > On Fri, Feb 28, 2014 at 12:04:18PM +0900, Brian Gesiak wrote: > >> No test asserts that "git branch -u refs/heads/my-branch my-branch" >> emits a warning. Add a test that does so. > > For an operation like "git branch foo origin" where setting up the > tracking is a side effect, a warning makes sense. But the sole purpose > of the command above is to set the upstream, and we didn't do it; should > this warning actually be upgraded to an error? > >> +test_expect_success '--set-upstream-to shows warning if used to set branch as own upstream' ' >> + git branch --set-upstream-to refs/heads/my13 my13 2>actual && >> + cat >expected <> +warning: Not setting branch my13 as its own upstream. >> +EOF >> + test_cmp expected actual >> +' > > This should use test_i18ncmp, as the string you are matching is > internationalized. More generally, stderr output shouldn't be tested with test_cmp or test_i18ncmp at all, but with grep and test_i18ngrep. The reason is that when you run the test with 'sh -x t3200* -v -i', the trace output is also in stderr, and the test_cmp/test_i18ncmp fails due to the unexpected extra text. -- Hannes