From: Jeff King Date: Fri, 28 Feb 2014 07:14:01 GMT Subject: Re: [PATCH 1/2] t3200-branch: test setting branch as own upstream Message-ID: <20140228071401.GA1229@sigill.intra.peff.net> In-Reply-To: <531032DD.9000904@viscovery.net> On Fri, Feb 28, 2014 at 07:55:25AM +0100, Johannes Sixt wrote: > > 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. I didn't think we bothered to make "sh -x" work robustly. I don't mind if we do, but "git grep -E 'test_(i18n)?cmp .*err" shows many potential problem spots. Hmm. Looks like it is only a problem if you are calling a shell function (since it is the shell function's trace output you are seeing). So this test would be OK as-is, but testing for an error, like: test_must_fail git branch -u foo foo 2>stderr would not be, because we see the trace from test_must_fail. So some of the callsites found by my grep are actually probably fine. -Peff