When a helper module is configured, it is now applied to all existing matching example groups. This means that the order in which example groups are defined and helper modules are configured no longer matters.
We only care that all the failures from the original run are still failing; additional failures can be ignored.
It would be nice to have a test for this but I’m not sure how to simulate a request from a different host :(.
This addresses a rubocop cyclomatic complexity failure.
- When an expected failure passes (or is pending) we don’t care about any other results. - When the last expected failure finishes, we don’t care about any later examples.
This will make it easier to implement `--bisect`, where we need access to the original CLI options.
- Do not mutate the provided args. - Include `:files_or_directories_to_run` in the returned options hash. After all, it’s part of the parsed options. This will help support the new `--bisect` option by making it easy for us to split CLI args into options (which get re-used throughout the bisect process) and files_or_directories_to_run (which get replaced during bisect).
Before we were relying upon the return value of `for_filtered_examples`, which is a bad idea.