Guest User

Untitled

a guest
Mar 22nd, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.02 KB | None | 0 0
  1. @POST
  2. @Path("/video/add")
  3. @Consumes(MediaType.APPLICATION_JSON)
  4. @Produces(MediaType.APPLICATION_JSON)
  5. public Response addVideoData(
  6. @Context HttpServletRequest request,
  7. AttachmentDTO attachmentDTO) {
  8. ...
  9. }
  10.  
  11. @Test
  12. public void videoAdd_requestObjectIsNull_ResponseStatusIsOK() throws Exception {
  13. // arrange
  14. Builder builder = target("/target/video/add").request();
  15. // action
  16. final Response response = builder.post(Entity.entity(attachemntDTO, MediaType.APPLICATION_JSON));
  17. // assertion
  18. ...
  19. }
  20.  
  21. public class HttpServletRequestFactory implements Factory<HttpServlet> {
  22.  
  23. @Override
  24. public HttpServletRequest provide() {
  25. return RequestHelper.getMockServletRequest();
  26. }
  27.  
  28. @Override
  29. public void dispose(HttpSession t) {
  30. }
  31. }
  32.  
  33. @Override
  34. public Application configure() {
  35. ResourceConfig config = new ResourceConfig(...);
  36. config.register(new AbstractBinder(){
  37. @Override
  38. public void configure() {
  39. bindFactory(HttpServletRequestFactory.class).to(HttpServletRequest.class);
  40. }
  41. });
  42. }
  43.  
  44. <dependency>
  45. <groupId>org.glassfish.jersey.test-framework.providers</groupId>
  46. <artifactId>jersey-test-framework-provider-grizzly2</artifactId>
  47. <version>${jersey.version}</version>
  48. </dependency>
  49.  
  50. import javax.servlet.http.HttpServletRequest;
  51. import javax.ws.rs.GET;
  52. import javax.ws.rs.Path;
  53. import javax.ws.rs.core.Application;
  54. import javax.ws.rs.core.Context;
  55. import javax.ws.rs.core.Response;
  56. import org.glassfish.hk2.api.Factory;
  57. import org.glassfish.hk2.utilities.binding.AbstractBinder;
  58. import org.glassfish.jersey.server.ResourceConfig;
  59. import org.glassfish.jersey.test.JerseyTest;
  60. import org.junit.Assert;
  61. import org.junit.Test;
  62.  
  63. public class MockHttpSevletRequestTest extends JerseyTest {
  64.  
  65. @Path("http")
  66. public static class HttpResource {
  67. @GET
  68. public Response getResponse(@Context HttpServletRequest request) {
  69. return Response.ok(request.getMethod()).build();
  70. }
  71. }
  72.  
  73. @Override
  74. public Application configure() {
  75. ResourceConfig config = new ResourceConfig(HttpResource.class);
  76. config.register(new AbstractBinder() {
  77. @Override
  78. public void configure() {
  79. bindFactory(HttpServletRequestFactory.class)
  80. .to(HttpServletRequest.class);
  81. }
  82. });
  83. return config;
  84. }
  85.  
  86. public static class HttpServletRequestFactory implements Factory<HttpServletRequest> {
  87.  
  88. @Override
  89. public HttpServletRequest provide() {
  90. return new MockHttpServletRequest();
  91. }
  92.  
  93. @Override
  94. public void dispose(HttpServletRequest t) {
  95. }
  96. }
  97.  
  98. @Test
  99. public void test() {
  100. String response = target("http").request().get(String.class);
  101. System.out.println(response);
  102. Assert.assertEquals("POST", response);
  103. }
  104. }
  105.  
  106. public class MockHttpServletRequest implements HttpServletRequest {
  107.  
  108. @Override
  109. public String getMethod() {
  110. return "POST";
  111. }
  112. ...
  113. }
Add Comment
Please, Sign In to add comment