Subject: | prove runs tests in unusual order |
The prove tool is nice, but runs the tests in an unusual order. Specifically, in whatever order is returned when reading the directory.
Although this means it runs them in a mostly deterministic order, it's an order that doesn't match the order that 'make test' will latter run it in.
While it could be argued that this is a good thing, the --shuffle option already exists specifically to handle this case.
The trivial fix (which should be enough) would be to change
115: return @hits;
to
115: return sort @hits;
This is a small thing, but when you intentionally rely on the test order (for example you have ordered it explicitly so that the first test that fails is where the ACTUAL bug is) then it becomes a problem.
"Random and deterministic" and "Random and non-deterministic" is not the best choice to offer people :)