Re: [RFC] column: show auto columns when pager is active
- Date: Tue, 10 Oct 2017 20:32:47 +0200
- From: Kevin Daudt <me@xxxxxxxxx>
- Subject: Re: [RFC] column: show auto columns when pager is active
On Tue, Oct 10, 2017 at 07:04:42PM +0200, Martin Ågren wrote:
> On 10 October 2017 at 16:29, Jeff King <peff@xxxxxxxx> wrote:
> > On Tue, Oct 10, 2017 at 10:10:19AM -0400, Jeff King wrote:
> > it will randomly succeed or fail, depending on whether sed manages to
> > read the input before the stdin terminal is closed.
> > I'm not sure of an easy way to fix test-terminal, but we could work
> > around it like this (which also uses "-p" to actually invoke the pager,
> > and uses a pager that makes it clear when it's being run):
> > diff --git a/t/t9002-column.sh b/t/t9002-column.sh
> > index 9441145bf0..d322c3b745 100755
> > --- a/t/t9002-column.sh
> > +++ b/t/t9002-column.sh
> > @@ -180,14 +180,14 @@ EOF
> > test_expect_success TTY '20 columns, mode auto, pager' '
> > cat >expected <<\EOF &&
> > -one seven
> > -two eight
> > -three nine
> > -four ten
> > -five eleven
> > -six
> > +paged:one seven
> > +paged:two eight
> > +paged:three nine
> > +paged:four ten
> > +paged:five eleven
> > +paged:six
> > EOF
> > - test_terminal env PAGER="cat|cat" git column --mode=auto <lista >actual &&
> > + test_terminal env PAGER="sed s/^/paged:/" sh -c "git -p column --mode=auto <lista" >actual &&
> > test_cmp expected actual
> > '
> > test_done
> Makes sense. FWIW, I don't see the flakyness with this.
> > All that said, I think I'd just as soon test a real command like "git
> > tag", which doesn't care about reading from stdin.
> For reference for Kevin, in case you consider testing, e.g., git tag,
> the main reason I referred to the test I posted as "hacky", was that I
> just inserted it at a more-or-less random place in t7006. So it had to
> play with `git reset` to avoid upsetting the later tests. It could
> obviously go to the end instead, but I was too lazy to move it and
> define a pager.
Thanks Jeff and Martin, I will use your tips to build a test based on
git tag instead.