-
Notifications
You must be signed in to change notification settings - Fork 68
Description
A while back I opened a pull request to make TEST_QUEUE_SPLIT_GROUPS perform less pathologically (i.e. don't treat :all like :each). There were a couple problems with my first approach, but the pull request was closed without any comment or discussion from the maintainers.
I've reworked it since then to fix its shortcomings, and it has been performing quite well for canvas-lms (almost 20k non-selenium specs).
The tl;dr of it is it maintains queues at each level of the ExampleGroup hierarchy, such that no (sub-)group is ever split until its parent queue is empty. It's as if split groups is off, until there are no groups left, at which point the workers optimally swarm on the remaining items.
Now that test-queue is actively being maintained, would you have any interest in such a pull request? It would of course need to be rebased onto your latest work, and some of its independently developed things (e.g. TEST_QUEUE_LAZY_GROUPS) are now redundant.