On Fri, Apr 05, 2019 at 04:55:37PM +0200, Johannes Schindelin wrote:
> Hi Denton,
> 
> On Mon, 1 Apr 2019, Denton Liu wrote:
> 
> > diff --git a/t/t3431-rebase-fork-point.sh b/t/t3431-rebase-fork-point.sh
> > new file mode 100755
> > index 0000000000..8e2483b73e
> > --- /dev/null
> > +++ b/t/t3431-rebase-fork-point.sh
> > @@ -0,0 +1,53 @@
> > +#!/bin/sh
> > +#
> > +# Copyright (c) 2019 Denton Liu
> > +#
> > +
> > +test_description='git rebase --fork-point test'
> > +
> > +. ./test-lib.sh
> > +
> > +# A---B---D---E       (master)
> > +#     \
> > +#      C*---F---G (side)
> > +#
> > +# C was formerly part of master but is side out
> > +#
> > +test_expect_success setup '
> > +   test_commit A &&
> > +   test_commit B &&
> > +   test_commit C &&
> > +   git branch -t side &&
> > +   git reset --hard HEAD^ &&
> > +   test_commit D &&
> > +   test_commit E &&
> > +   git checkout side &&
> > +   test_commit F &&
> > +   test_commit G
> > +'
> > +
> > +test_rebase() {
> > +   expected="$1" &&
> > +   shift &&
> > +   test_expect_success "git rebase $@" "
> > +           git checkout master &&
> > +           git reset --hard E &&
> > +           git checkout side &&
> > +           git reset --hard G &&
> > +           git rebase $@ &&
> 
> I think we need this patch, to make the macOS build happy:

Thanks for digging into this, both.

Out of curiosity, t3432 is written similarly:

        test_rebase_same_head() {
                status="$1" &&
                shift &&
                test_expect_$status "git rebase $@ with $changes is no-op" "
                        oldhead=\$(git rev-parse HEAD) &&
                        test_when_finished 'git reset --hard \$oldhead' &&
                        git rebase $@ &&
                        newhead=\$(git rev-parse HEAD) &&
                        test_cmp_rev \$oldhead \$newhead
                "
        }

and is also invoked similarly

        test_rebase_same_head success ''

but it doesn't seem to fail. Any ideas on why?

Thanks,

Denton

> 
> -- snip --
> Subject: fixup??? t3431: add rebase --fork-point tests
> 
> Try to fix the Mac build, which currently fails thusly:
> 
>     ++ git reset --hard G
>     HEAD is now at d8775ba G
>     ++ git rebase $'\177'
>     fatal: invalid upstream '?'
>     error: last command exited with $?=128
> 
> Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de>
> 
> diff --git a/t/t3431-rebase-fork-point.sh b/t/t3431-rebase-fork-point.sh
> index 4607e65de6..b41a0c0b68 100755
> --- a/t/t3431-rebase-fork-point.sh
> +++ b/t/t3431-rebase-fork-point.sh
> @@ -34,7 +34,7 @@ test_rebase() {
>               git reset --hard E &&
>               git checkout side &&
>               git reset --hard G &&
> -             git rebase $@ &&
> +             eval git rebase \"$@\" &&
>               test_write_lines $expected >expect &&
>               git log --pretty=%s >actual &&
>               test_cmp expect actual
> -- snap --
> 
> Ciao,
> Dscho
> 
> > +           test_write_lines $expected >expect &&
> > +           git log --pretty=%s >actual &&
> > +           test_cmp expect actual
> > +   "
> > +}
> > +
> > +test_rebase 'G F E D B A' ''
> > +test_rebase 'G F D B A' '--onto D'
> > +test_rebase 'G F C E D B A' '--no-fork-point'
> > +test_rebase 'G F C D B A' '--no-fork-point --onto D'
> > +test_rebase 'G F E D B A' '--fork-point refs/heads/master'
> > +test_rebase 'G F D B A' '--fork-point --onto D refs/heads/master'
> > +test_rebase 'G F C E D B A' 'refs/heads/master'
> > +test_rebase 'G F C D B A' '--onto D refs/heads/master'
> > +
> > +test_done
> > --
> > 2.21.0.695.gaf8658f249
> >
> >

Reply via email to