add login with tests