Approval tests need cleanup
As the number of tests, first party reporters, and normalization regexes increases, the runtime of ApprovalTests (running tools/scripts/approvalTests.py on the SelfTest binary) also increases, and it has gotten to a point where the runtime is becoming significant. Thus we should clean up the approval tests and improve their performance.
I see 2 possible approaches:
- [ ] Reduce the number of tests which are run as part of ApprovalTests. We already prevent some tests from being run because their output is platform-specific in a manner that is very annoying to sanitize, so we can just disable more tests from being run during approval tests. (They would still be run as part of unit tests, and lot of tests are very similar in which part of Catch2 they exercise during output)
- [x] Make the normalization smarter. Some of the normalization checks are specific to just one or two reporters, but they are done on outputs of all reporters. By restricting which normalization checks are done on which reporters outputs, and other improvements to their usage, the performance of ApprovalTests would likely be improved significantly.
Removed bunch of less-used or completely unused normalization checks in 4ff8b27bb6bed4b8b309e56cd269b4f1fbc24e89. The approvals will need a reduction in how many tests are run for further improvements.
Also the multireporter approvals made approvals quite costly to run, so we need to cut them down a bit soon.