Changes for Checkstyle 8.32
[policy/models.git] / models-interactions / model-impl / rest / src / test / java / org / onap / policy / rest / RestTest.java
index 903ec2f..8c241c8 100644 (file)
@@ -24,10 +24,16 @@ package org.onap.policy.rest;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
 import javax.ws.rs.Consumes;
 import javax.ws.rs.DELETE;
 import javax.ws.rs.DefaultValue;
 import javax.ws.rs.GET;
+import javax.ws.rs.HttpMethod;
 import javax.ws.rs.POST;
 import javax.ws.rs.PUT;
 import javax.ws.rs.Path;
@@ -45,7 +51,7 @@ import org.onap.policy.rest.RestManager.Pair;
 
 @Path("RestTest")
 public class RestTest {
-
+    private static final String MERGE_PATCH_PLUS_JSON = "application/merge-patch+json";
 
     private static final String NAME_PARAM = "Bob";
     private static final String AGE_PARAM = "10";
@@ -64,6 +70,8 @@ public class RestTest {
     private static String putUriBlank;
     private static String postUri;
     private static String postUriBlank;
+    private static String patchUri;
+    private static String patchUriBlank;
 
     private static HttpServletServer server;
 
@@ -81,6 +89,8 @@ public class RestTest {
         putUriBlank = baseUri + "RestTest/PutBlank";
         postUri = baseUri + "RestTest/PostHello/" + NAME_PARAM + "?age=" + AGE_PARAM;
         postUriBlank = baseUri + "RestTest/PostBlank";
+        patchUri = baseUri + "RestTest/PatchHello/" + NAME_PARAM + "?age=" + AGE_PARAM;
+        patchUriBlank = baseUri + "RestTest/PatchBlank";
 
         server = HttpServletServerFactoryInstance.getServerFactory()
             .build("RestTest", LOCALHOST, port, "/" + BASE, false, true);
@@ -123,51 +133,69 @@ public class RestTest {
         mgr.delete(null, "user", null, null, null, null);
     }
 
+    @Test(expected = NullPointerException.class)
+    public void testPatchUrlNull() {
+        RestManager mgr = new RestManager();
+        mgr.patch(null, "user", null, null, PAYLOAD);
+    }
+
     @Test
     public void testUsernameNull() {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(getUri, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("GOT: " + EXPECT_STRING, result.second);
 
         result = mgr.delete(deleteUri, null, null, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("DELETE: " + EXPECT_STRING, result.second);
 
         result = mgr.delete(deleteUri, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("DELETE: " + EXPECT_STRING, result.second);
 
         result = mgr.put(putUri, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + EXPECT_STRING, result.second);
 
         result = mgr.put(putUriBlank, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + RETURN_STRING, result.second);
 
         result = mgr.post(postUri, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + EXPECT_STRING, result.second);
 
         result = mgr.post(postUriBlank, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + RETURN_STRING, result.second);
+
+        result = mgr.patch(patchUri, null, null, null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + EXPECT_STRING, result.second);
+
+        result = mgr.patch(patchUriBlank, null, null, null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + RETURN_STRING, result.second);
     }
 
     @Test
@@ -175,40 +203,52 @@ public class RestTest {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(getUri, "", null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("GOT: " + EXPECT_STRING, result.second);
 
         result = mgr.delete(deleteUri, "", null, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("DELETE: " + EXPECT_STRING, result.second);
 
         result = mgr.put(putUri, "", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + EXPECT_STRING, result.second);
 
         result = mgr.put(putUriBlank, "", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + RETURN_STRING, result.second);
 
         result = mgr.post(postUri, "", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + EXPECT_STRING, result.second);
 
         result = mgr.post(postUriBlank, "", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + RETURN_STRING, result.second);
+
+        result = mgr.patch(patchUri, "", null, null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + EXPECT_STRING, result.second);
+
+        result = mgr.patch(patchUriBlank, "", null, null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + RETURN_STRING, result.second);
     }
 
     @Test
@@ -216,40 +256,52 @@ public class RestTest {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(getUri, "user", null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("GOT: " + EXPECT_STRING, result.second);
 
         result = mgr.delete(deleteUri, "user", null, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("DELETE: " + EXPECT_STRING, result.second);
 
         result = mgr.put(putUri, "user", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + EXPECT_STRING, result.second);
 
         result = mgr.put(putUriBlank, "user", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + RETURN_STRING, result.second);
 
         result = mgr.post(postUri, "user", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + EXPECT_STRING, result.second);
 
         result = mgr.post(postUriBlank, "user", null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + RETURN_STRING, result.second);
+
+        result = mgr.patch(patchUri, "user", null, null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + EXPECT_STRING, result.second);
+
+        result = mgr.patch(patchUriBlank, "user", null, null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + RETURN_STRING, result.second);
     }
 
     @Test
@@ -257,16 +309,19 @@ public class RestTest {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(baseUri + "RestTest/GetHello/", null, null, null);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
 
         result = mgr.delete(baseUri + "RestTest/DeleteHello/", null, null, null, null, null);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
 
         result = mgr.put(baseUri + "RestTest/PutHello/", null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
 
         result = mgr.post(baseUri + "RestTest/PostHello/", null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
+
+        result = mgr.patch(baseUri + "RestTest/PatchHello/", null, null, null, PAYLOAD);
+        assertEquals((Integer) 404, result.first);
     }
 
     @Test
@@ -274,29 +329,36 @@ public class RestTest {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(baseUri + "RestTest/GetHello/" + NAME_PARAM, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("GOT: " + RETURN_STRING + NAME_PARAM + " aged 90", result.second);
 
         result = mgr.delete(baseUri + "RestTest/DeleteHello/" + NAME_PARAM, null, null, null, null, null);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("DELETE: " + RETURN_STRING + NAME_PARAM + " aged 90", result.second);
 
         result = mgr.put(baseUri + "RestTest/PutHello/" + NAME_PARAM, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("PUT: " + PAYLOAD + RETURN_STRING + NAME_PARAM + " aged 90", result.second);
 
         result = mgr.post(baseUri + "RestTest/PostHello/" + NAME_PARAM, null, null,
             null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)200, result.first);
+        assertEquals((Integer) 200, result.first);
         assertTrue(result.second != null);
         assertTrue(result.second.length() > 0);
         assertEquals("POST: " + PAYLOAD + RETURN_STRING + NAME_PARAM + " aged 90", result.second);
+
+        result = mgr.patch(baseUri + "RestTest/PatchHello/" + NAME_PARAM, null, null,
+            null, PAYLOAD);
+        assertEquals((Integer) 200, result.first);
+        assertTrue(result.second != null);
+        assertTrue(result.second.length() > 0);
+        assertEquals("PATCH: " + PAYLOAD + RETURN_STRING + NAME_PARAM + " aged 90", result.second);
     }
 
     @Test
@@ -304,16 +366,19 @@ public class RestTest {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(baseUri + "NonExistant/URL/", null, null, null);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
 
         result = mgr.delete(baseUri + "NonExistant/URL/", null, null, null, null, null);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
 
         result = mgr.put(baseUri + "NonExistant/URL/", null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
 
         result = mgr.post(baseUri + "NonExistant/URL/", null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)404, result.first);
+        assertEquals((Integer) 404, result.first);
+
+        result = mgr.patch(baseUri + "NonExistant/URL/", null, null, null, PAYLOAD);
+        assertEquals((Integer) 404, result.first);
     }
 
     @Test
@@ -321,32 +386,35 @@ public class RestTest {
         RestManager mgr = new RestManager();
 
         Pair<Integer, String> result = mgr.get(deleteUri, null, null, null);
-        assertEquals((Integer)405, result.first);
+        assertEquals((Integer) 405, result.first);
 
         result = mgr.delete(getUri, null, null, null, null, null);
-        assertEquals((Integer)405, result.first);
+        assertEquals((Integer) 405, result.first);
 
         result = mgr.delete(getUri, null, null, null);
-        assertEquals((Integer)405, result.first);
+        assertEquals((Integer) 405, result.first);
 
         result = mgr.put(getUri, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)405, result.first);
+        assertEquals((Integer) 405, result.first);
 
         result = mgr.post(getUri, null, null, null, MediaType.TEXT_PLAIN, PAYLOAD);
-        assertEquals((Integer)405, result.first);
+        assertEquals((Integer) 405, result.first);
+
+        result = mgr.patch(getUri, null, null, null, PAYLOAD);
+        assertEquals((Integer) 405, result.first);
     }
 
     @GET
     @Path("/GetHello/{name}")
     @Produces(MediaType.TEXT_PLAIN)
-    public String getIt( @PathParam("name") String name, @DefaultValue("90") @QueryParam("age") String age) {
+    public String getIt(@PathParam("name") String name, @DefaultValue("90") @QueryParam("age") String age) {
         return "GOT: " + RETURN_STRING + name + " aged " + age;
     }
 
     @DELETE
     @Path("/DeleteHello/{name}")
     @Produces(MediaType.TEXT_PLAIN)
-    public String deleteIt( @PathParam("name") String name, @DefaultValue("90") @QueryParam("age") String age) {
+    public String deleteIt(@PathParam("name") String name, @DefaultValue("90") @QueryParam("age") String age) {
         return "DELETE: " + RETURN_STRING + name + " aged " + age;
     }
 
@@ -365,7 +433,7 @@ public class RestTest {
     @PUT
     @Path("/PutBlank")
     @Produces(MediaType.TEXT_PLAIN)
-    public String putIt( String payload) {
+    public String putIt(String payload) {
         return "PUT: " + payload + RETURN_STRING;
     }
 
@@ -384,7 +452,33 @@ public class RestTest {
     @POST
     @Path("/PostBlank")
     @Produces(MediaType.TEXT_PLAIN)
-    public String postBlank( String payload) {
+    public String postBlank(String payload) {
         return "POST: " + payload + RETURN_STRING;
     }
+
+    @Target({ElementType.METHOD})
+    @Retention(RetentionPolicy.RUNTIME)
+    @HttpMethod("PATCH")
+    @Documented
+    public static @interface Patch {
+    }
+
+    @Patch
+    @Path("/PatchHello/{name}")
+    @Consumes(MERGE_PATCH_PLUS_JSON)
+    @Produces(MERGE_PATCH_PLUS_JSON)
+    public String patchIt(
+        String payload,
+        @PathParam("name") String name,
+        @DefaultValue("90") @QueryParam("age") String age) {
+
+        return "PATCH: " + payload + RETURN_STRING + name + " aged " + age;
+    }
+
+    @Patch
+    @Path("/PatchBlank")
+    @Produces(MERGE_PATCH_PLUS_JSON)
+    public String patchBlank(String payload) {
+        return "PATCH: " + payload + RETURN_STRING;
+    }
 }