On Thu, Aug 2, 2018 at 9:41 AM SZEDER Gábor <[email protected]> wrote:
>
> > Tests 5 and 8 in t/t7411-submodule-config.sh add two commits with
> > invalid lines in .gitmodules but then only the second commit is removed.
> >
> > This may affect future subsequent tests if they assume that the
> > .gitmodules file has no errors.
> >
> > Since those commits are not needed anymore remove both of them.
> >
> > The modified line is in the last test of the file, so this does not
> > change the current behavior, it only affects future tests.
> >
> > Signed-off-by: Antonio Ospite <[email protected]>
> > ---
> >
> > Note that test_when_finished is not used here, both to keep the current
> > style
> > and also because it does not work in sub-shells.
>
> That's true, but I think that this:
>
> test_when_finished git -C super reset --hard HEAD~2
>
> at the very beginning of the test should work.
Yeah that is a better way to do it.
Even better would be to have 2 of these for both tests 5 and 8,
such that each of them could be skipped individually and any following
tests still work fine.
> > t/t7411-submodule-config.sh | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/t/t7411-submodule-config.sh b/t/t7411-submodule-config.sh
> > index 0bde5850ac..248da0bc4f 100755
> > --- a/t/t7411-submodule-config.sh
> > +++ b/t/t7411-submodule-config.sh
> > @@ -135,7 +135,9 @@ test_expect_success 'error in history in
> > fetchrecursesubmodule lets continue' '
> > HEAD submodule \
> > >actual &&
> > test_cmp expect_error actual &&
> > - git reset --hard HEAD^
> > + # Remove both the commits which add errors to .gitmodules,
> > + # the one from this test and the one from a previous test.
> > + git reset --hard HEAD~2
I am a bit hesitant to removing the commits though, as it is expected to have
potentially broken history and submodules still working.
The config --unset already fixes the gitmodules file,
so I think we can rather do
git commit -a -m 'now the .gitmodules file is fixed at HEAD \
but has a messy history'
But as I have only read up to here, not knowing what the future tests will
bring this is all speculation at this point.