Refactor test Fixtures to a central location
Description
We have lots of test fixtures in the unit test suite that all present slightly varied versions of a system to test.
We should centralize it and make sure as much as possible is mocked out, and then allow a way for test cases to swap out mocks for real components which are to be exercised by the test logic.
This issue has gone three weeks without activity. In another week, I will close it.
But! If you comment or otherwise update it, I will reset the clock, and if you label it Status: Backlog or Status: In Progress, I will leave it alone ... forever!
"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀
We should do an "opportunistic" refactoring while adding new tests or update old ones. We also need docs on CONTRIBUTING develop docs to explain the concept of centralised fixture. Add the following item to the PR checklist template:
- Refactor test fixtures to central location if possible