Re: [PATCH] fix flaky untracked-cache test
- From
Lars Schneider <larsxschneider@gmail.com>
- Date
- Oct 21, 2015, 22:47 UTC
- Message-ID
- <B454F5BF-A18E-4D36-9B97-F7D51DC48EB0@gmail.com>
- In-Reply-To
- <1445284095-6602-1-git-send-email-dturner@twopensource.com>
Looks good to me, Ack.
Test run with 74301d6 + my TravisCI patch: https://travis-ci.org/larsxschneider/git/builds/86702932 ... on Linux it failed in 1/2 cases after 53min ... on OSX it failed in 2/2 cases after 6min
Test run with 74301d6 + my TravisCI patch + David's t7063 patch: https://travis-ci.org/larsxschneider/git/builds/86707133 .. on Linux it failed in 0/2 cases after 77min ...on OSX it failed in 0/2 cases after 48min (no error, CI system timed out, click on the builds to see detailed log output)
Cheers, Lars
On 19 Oct 2015, at 21:48, David Turner <dturner@twopensource.com> wrote:
Show 35 quoted lines
> Dirty the test worktree's root directory, as the test expects. > > When testing the untracked-cache, we previously assumed that checking > out master would be sufficient to mark the mtime of the worktree's > root directory as racily-dirty. But sometimes, the checkout would > happen at 12345.999 seconds and the status at 12346.001 seconds, > meaning that the worktree's root directory would not be racily-dirty. > And since it was not truly dirty, occasionally the test would fail. > By making the root truly dirty, the test will always succeed. > > Tested by running a few hundred times. > > Signed-off-by: David Turner <dturner@twopensource.com> > --- > t/t7063-status-untracked-cache.sh | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/t/t7063-status-untracked-cache.sh b/t/t7063-status-untracked-cache.sh > index 37a24c1..0e8d0d4 100755 > --- a/t/t7063-status-untracked-cache.sh > +++ b/t/t7063-status-untracked-cache.sh > @@ -412,7 +412,9 @@ test_expect_success 'create/modify files, some of which are gitignored' ' > echo two bis >done/two && > echo three >done/three && # three is gitignored > echo four >done/four && # four is gitignored at a higher level > - echo five >done/five # five is not gitignored > + echo five >done/five && # five is not gitignored > + echo test >base && #we need to ensure that the root dir is touched > + rm base > ' > > test_expect_success 'test sparse status with untracked cache' ' > -- > 2.4.2.644.g97b850b-twtrsrc >