Test AaiController's get-tenants existing flow
[vid.git] / vid-app-common / src / test / java / org / onap / vid / mso / rest / TaskTest.java
index f6d0c76..bc1735b 100644 (file)
@@ -34,28 +34,39 @@ import org.testng.annotations.Test;
 public class TaskTest {
 
     private final ObjectMapper mapper = new ObjectMapper();
-    private final String TASK_JSON = ""
-        + "{ "
-        + "  \"taskId\": \"taskId\", "
-        + "  \"type\": \"type\", "
-        + "  \"nfRole\": \"nfRole\", "
-        + "  \"subscriptionServiceType\": \"subscriptionServiceType\", "
-        + "  \"originalRequestId\": \"originalRequestId\", "
-        + "  \"originalRequestorId\": \"originalRequestorId\", "
-        + "  \"buildingBlockName\": \"buildingBlockName\", "
-        + "  \"buildingBlockStep\": \"buildingBlockStep\", "
-        + "  \"errorSource\": \"errorSource\", "
-        + "  \"errorCode\": \"errorCode\", "
-        + "  \"errorMessage\": \"errorMessage\", "
-        + "  \"validResponses\": [ "
-        + "    \"a\", "
-        + "    \"b\", "
-        + "    \"c\" "
-        + "  ] "
-        + "} ";
+
+    private String templateTaskJson(String insertion) {
+        return ""
+            + "{ "
+            + "  \"taskId\": \"taskId\", "
+            + "  \"type\": \"type\", "
+            + "  \"nfRole\": \"nfRole\", "
+            + "  \"subscriptionServiceType\": \"subscriptionServiceType\", "
+            + "  \"originalRequestId\": \"originalRequestId\", "
+            + "  \"originalRequestorId\": \"originalRequestorId\", "
+            + "  \"buildingBlockName\": \"buildingBlockName\", "
+            + "  \"buildingBlockStep\": \"buildingBlockStep\", "
+            + "  \"errorSource\": \"errorSource\", "
+            + "  \"errorCode\": \"errorCode\", "
+            + "  \"errorMessage\": \"errorMessage\", "
+            + insertion
+            + "  \"validResponses\": [ "
+            + "    \"a\", "
+            + "    \"b\", "
+            + "    \"c\" "
+            + "  ] "
+            + "} ";
+    }
+
+    private final String TASK_JSON = templateTaskJson(""
+        + "  \"description\": \"description\", "
+        + "  \"timeout\": \"timeout\", "
+    );
+
+    private final String TASK_JSON_WITHOUT_TIMEOUT = templateTaskJson("");
 
     private Task newTaskWithPopulatedFields() {
-        Task task = TestUtils.setStringsInStringProperties(new Task());
+        Task task = TestUtils.setStringsInStringFields(new Task());
         task.setValidResponses(ImmutableList.of("a", "b", "c"));
         return task;
     }
@@ -80,4 +91,19 @@ public class TaskTest {
             is(newTaskWithPopulatedFields())
         );
     }
+
+    @Test
+    public void deserializeTaskWithoutTimeout() throws IOException {
+        /*
+        SO may return no timeout, and therefore no description as well
+         */
+        final Task taskWithoutTimeout = newTaskWithPopulatedFields();
+        taskWithoutTimeout.setDescription(null);
+        taskWithoutTimeout.setTimeout(null);
+
+        assertThat(
+            mapper.readValue(TASK_JSON_WITHOUT_TIMEOUT, Task.class),
+            is(taskWithoutTimeout)
+        );
+    }
 }