The initial version of this module was a quick script to help us speed things up during our upgrades, and it kept evolving and getting more cluttered. The current state of it means its quite hard to see what is going on for each check, and makes it quite tricky and messy to add new checks.
This refactor doesn't touch any of the functional tests, as they're used as a baseline to prove the refactor works.
It does break each check into its own class, and adds unit tests to those classes which are very helpful for development and debugging.
[x] Disable 2.2 series tests
[x] Ensure all cases are covered in 2.3 and 2.4 tests
[x] Turn off 2.2 series tests in `.travis.yml
[x] Test extracting one check type into own class (Email html check)
[x] and necessary refactors for a unit test
[x] Extract other checks into own classes, add tests
Checklist
[x] Pull request has a meaningful description of its purpose
[x] All commits are accompanied by meaningful commit messages
This PR refactors the handling of checks.
The initial version of this module was a quick script to help us speed things up during our upgrades, and it kept evolving and getting more cluttered. The current state of it means its quite hard to see what is going on for each check, and makes it quite tricky and messy to add new checks.
This refactor doesn't touch any of the functional tests, as they're used as a baseline to prove the refactor works.
It does break each check into its own class, and adds unit tests to those classes which are very helpful for development and debugging.
Checklist