Previously the test always passed due to invoking cleanup on failure.
This is meant to exercise the code path not test for randomness, though it somewhat does that.
* Ensure play order is obeyed it was being ignored depending on other options also added tests for each order (except shuffle) both serial and not fixes #49846