Refactor tests and add new ones to improve coverage
Add CI-based reporting