abstraction layer to allow injecting stub login button