testsuite: Work around #12554
authorBen Gamari <ben@well-typed.com>
Sat, 15 Oct 2016 18:18:14 +0000 (18:18 +0000)
committerBen Gamari <ben@smart-cactus.org>
Mon, 17 Oct 2016 18:33:29 +0000 (14:33 -0400)
commit9cb4459893c1c56553b413786cea3171b4e665ca
treece1c35ee9cb94d6d9f82fc592000367a5be2c46c
parent3adaacde6b8ad6f41e1554598a9fd93d9e605bc2
testsuite: Work around #12554

It seems that Python 2.7.11 and "recent" msys2 releases are broken,
holding open file locks unexpected. This causes rmtree to intermittently
fail. Even worse, it would fail silently (since we pass
ignore_errors=True), causing makedirs to fail later.

We now explicitly check for the existence of the test directory before
attempting to delete it and disable ignore_errors. Moreover, on Windows
we now try multiple times to rmtree the testdir, working around the
apparently msys bug.

This is all just terrible, but Phyx and I spent several hours trying to
track down the issue to no available. The workaround is better than
nothing.
testsuite/driver/testlib.py