Component class with tests