Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package nl.han.dea.login;
- import nl.han.dea.datastore.UserData;
- import nl.han.dea.datastore.models.Login;
- import nl.han.dea.exceptions.LoginException;
- import org.junit.Assert;
- import org.junit.Before;
- import org.junit.Test;
- import org.junit.runner.RunWith;
- import org.mockito.InjectMocks;
- import org.mockito.Mock;
- import org.mockito.junit.MockitoJUnitRunner;
- import javax.ws.rs.core.Response;
- import static org.mockito.ArgumentMatchers.any;
- import static org.mockito.Mockito.when;
- @RunWith(MockitoJUnitRunner.Silent.class)
- public class LoginServiceTest {
- // Constants of commonly used values
- private final String USER = "zzzzz";
- private final String PASSWORD = "12345";
- private final String TOKEN = "1234-1234-1234";
- private final String USERNAME = "Test T.";
- // Default objects
- private LoginRequest loginRequest;
- private LoginResponse loginResponse;
- private LoginException loginException;
- private Login login;
- @InjectMocks
- private LoginService service;
- @Mock
- private UserData userData;
- @Before
- public void init() {
- loginRequest = new LoginRequest(USER, PASSWORD);
- loginResponse = new LoginResponse(TOKEN, USERNAME);
- loginException = new LoginException("%");
- login = new Login();
- login.setInput(USER, PASSWORD);
- login.setOutput(TOKEN, USERNAME);
- }
- @Test
- public void shouldDoSuccessfulLogin() {
- // Mockito prep
- try {
- when(userData.checkLogin(any(Login.class))).thenReturn(login);
- } catch (LoginException e) { } // No need to catch an exception in 'when()', it won't throw
- // Var prep
- Response response = service.doPostLogin(loginRequest);
- // Assert status code
- int expected = 200;
- int actual = response.getStatus();
- Assert.assertEquals(expected, actual);
- }
- @Test
- public void shouldDoUnsuccessfulLogin() {
- // Mockito prep
- try {
- when(userData.checkLogin(any(Login.class))).thenThrow(loginException);
- } catch (LoginException e) { } // No need to catch an exception in 'when()', it won't throw
- // Var prep
- LoginRequest request = new LoginRequest(USER, PASSWORD);
- Response response = service.doPostLogin(request);
- // Assert status code
- Assert.assertEquals(401, response.getStatus());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement