On Tue, Jun 18, 2019 at 01:21:25PM -0700, Jeff Hostetler via GitGitGadget wrote: > diff --git a/t/t6040-tracking-info.sh b/t/t6040-tracking-info.sh > index 716283b274..febf63f28a 100755 > --- a/t/t6040-tracking-info.sh > +++ b/t/t6040-tracking-info.sh > @@ -159,6 +159,19 @@ test_expect_success 'status -s -b --no-ahead-behind (diverged from upstream)' ' > test_i18ncmp expect actual > ' > > +cat >expect <<\EOF > +## b1...origin/master [different] > +EOF > + > +test_expect_success 'status.aheadbehind=false status -s -b (diverged from upstream)' ' > + ( > + cd test && > + git checkout b1 >/dev/null && > + git -c status.aheadbehind=false status -s -b | head -1 These tests specifically check 'git status', but the pipe hides its exit code. Please use an intermediate file instead. > + ) >actual && I found it odd to save the output of a whole subshell and redirect 'git checkout's stdout to /dev/null to prevent it from itnerfering with the stdout of the subshell, instead of saving only the stdout of the command the test focuses on. > + test_i18ncmp expect actual > +' > + > cat >expect <<\EOF > On branch b1 > Your branch and 'origin/master' have diverged, > @@ -174,6 +187,15 @@ test_expect_success 'status --long --branch' ' > test_i18ncmp expect actual > ' > > +test_expect_success 'status --long --branch' ' > + ( > + cd test && > + git checkout b1 >/dev/null && > + git -c status.aheadbehind=true status --long -b | head -3 > + ) >actual && > + test_i18ncmp expect actual > +' > + > cat >expect <<\EOF > On branch b1 > Your branch and 'origin/master' refer to different commits. > @@ -188,6 +210,15 @@ test_expect_success 'status --long --branch --no-ahead-behind' ' > test_i18ncmp expect actual > ' > > +test_expect_success 'status.aheadbehind=false status --long --branch' ' > + ( > + cd test && > + git checkout b1 >/dev/null && > + git -c status.aheadbehind=false status --long -b | head -2 > + ) >actual && > + test_i18ncmp expect actual > +' > + > cat >expect <<\EOF > ## b5...brokenbase [gone] > EOF