Advertisement
khermano

AuthenticationTestIT.java

Mar 20th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.66 KB | None | 0 0
  1. package org.xstefank.api;
  2.  
  3. import org.jboss.arquillian.container.test.api.Deployment;
  4. import org.jboss.arquillian.container.test.api.RunAsClient;
  5. import org.jboss.arquillian.test.api.ArquillianResource;
  6. import org.jboss.shrinkwrap.api.ShrinkWrap;
  7. import org.jboss.shrinkwrap.api.spec.WebArchive;
  8. import org.junit.Assert;
  9. import org.junit.Test;
  10. import org.junit.runner.RunWith;
  11. import org.jboss.arquillian.junit.Arquillian;
  12. import org.xstefank.JaxRsApplication;
  13.  
  14. import javax.ws.rs.client.Client;
  15. import javax.ws.rs.client.ClientBuilder;
  16. import javax.ws.rs.client.WebTarget;
  17. import javax.ws.rs.core.HttpHeaders;
  18. import javax.ws.rs.core.MediaType;
  19. import javax.ws.rs.core.Response;
  20. import javax.ws.rs.core.UriBuilder;
  21. import java.net.URL;
  22.  
  23. @RunWith(Arquillian.class)
  24. @RunAsClient
  25. public class AuthenticationTestIT {
  26.  
  27.     private static final String RETURN_STATUS_UNAUTHORIZED_PATH = "/test/fakeGithub/ReturnStatusUnauthorized";
  28.     private static final String RETURN_STATUS_INTERNAL_SERVER_ERROR_PATH = "/test/fakeGithub/ReturnStatusInternalServerError";
  29.  
  30.     @Deployment(testable = false)
  31.     public static WebArchive createDeployment() {
  32.         return ShrinkWrap
  33.                 .create(WebArchive.class, "test.war")
  34.                 .addClasses(FakeGitHub.class, JaxRsApplication.class);
  35.     }
  36.  
  37.     @ArquillianResource
  38.     private URL deploymentUrl;
  39.  
  40.     @Test (expected=IllegalArgumentException.class)
  41.     public void testAuthenticationStatusUnauthorized() {
  42.         Assert.assertEquals(Response.Status.UNAUTHORIZED.getStatusCode(), getEndPointResponse(RETURN_STATUS_UNAUTHORIZED_PATH).getStatus());
  43.         testMethodGetJsonFromUri(RETURN_STATUS_UNAUTHORIZED_PATH);
  44.     }
  45.  
  46.     @Test (expected=IllegalArgumentException.class)
  47.     public void testAuthenticationStatusInternalServerError() {
  48.         Assert.assertEquals(Response.Status.INTERNAL_SERVER_ERROR.getStatusCode(), getEndPointResponse(RETURN_STATUS_INTERNAL_SERVER_ERROR_PATH).getStatus());
  49.         testMethodGetJsonFromUri(RETURN_STATUS_INTERNAL_SERVER_ERROR_PATH);
  50.     }
  51.  
  52.     private Response getEndPointResponse(String endpointPath) {
  53.         Client restClient = ClientBuilder.newClient();
  54.         WebTarget target = restClient.target(UriBuilder.fromPath(deploymentUrl.toString()).path(endpointPath).build());
  55.  
  56.         return target.request()
  57.                 .header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON)
  58.                 .header(HttpHeaders.AUTHORIZATION, "token " + "")
  59.                 .get();
  60.     }
  61.  
  62.     private void testMethodGetJsonFromUri(String endpointPath) {
  63.         GitHubAPI.getJsonFromUri(UriBuilder.fromPath(deploymentUrl.toString()).path(endpointPath).build());
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement