Advertisement
Guest User

Untitled

a guest
Apr 6th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.42 KB | None | 0 0
  1. package nl.han.dea.login;
  2.  
  3. import nl.han.dea.datastore.UserData;
  4. import nl.han.dea.datastore.models.Login;
  5. import nl.han.dea.exceptions.LoginException;
  6. import org.junit.Assert;
  7. import org.junit.Before;
  8. import org.junit.Test;
  9. import org.junit.runner.RunWith;
  10. import org.mockito.InjectMocks;
  11. import org.mockito.Mock;
  12. import org.mockito.junit.MockitoJUnitRunner;
  13.  
  14.  
  15. import javax.ws.rs.core.Response;
  16.  
  17. import static org.mockito.ArgumentMatchers.any;
  18. import static org.mockito.Mockito.when;
  19.  
  20. @RunWith(MockitoJUnitRunner.Silent.class)
  21. public class LoginServiceTest {
  22.     // Constants of commonly used values
  23.     private final String USER = "zzzzz";
  24.     private final String PASSWORD = "12345";
  25.     private final String TOKEN = "1234-1234-1234";
  26.     private final String USERNAME = "Test T.";
  27.  
  28.     // Default objects
  29.     private LoginRequest loginRequest;
  30.     private LoginResponse loginResponse;
  31.     private LoginException loginException;
  32.     private Login login;
  33.  
  34.     @InjectMocks
  35.     private LoginService service;
  36.  
  37.     @Mock
  38.     private UserData userData;
  39.  
  40.     @Before
  41.     public void init() {
  42.         loginRequest = new LoginRequest(USER, PASSWORD);
  43.         loginResponse = new LoginResponse(TOKEN, USERNAME);
  44.         loginException = new LoginException("%");
  45.  
  46.         login = new Login();
  47.         login.setInput(USER, PASSWORD);
  48.         login.setOutput(TOKEN, USERNAME);
  49.     }
  50.  
  51.     @Test
  52.     public void shouldDoSuccessfulLogin() {
  53.         // Mockito prep
  54.         try {
  55.             when(userData.checkLogin(any(Login.class))).thenReturn(login);
  56.         } catch (LoginException e) { } // No need to catch an exception in 'when()', it won't throw
  57.  
  58.         // Var prep
  59.         Response response = service.doPostLogin(loginRequest);
  60.  
  61.         // Assert status code
  62.         int expected = 200;
  63.         int actual = response.getStatus();
  64.         Assert.assertEquals(expected, actual);
  65.     }
  66.  
  67.     @Test
  68.     public void shouldDoUnsuccessfulLogin() {
  69.         // Mockito prep
  70.         try {
  71.             when(userData.checkLogin(any(Login.class))).thenThrow(loginException);
  72.         } catch (LoginException e) { } // No need to catch an exception in 'when()', it won't throw
  73.  
  74.         // Var prep
  75.         LoginRequest request = new LoginRequest(USER, PASSWORD);
  76.         Response response = service.doPostLogin(request);
  77.  
  78.         // Assert status code
  79.         Assert.assertEquals(401, response.getStatus());
  80.     }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement