more methods to virtual for mocking