[SO] Macro flow for PNF-Modify operation
[so.git] / bpmn / so-bpmn-building-blocks / src / test / java / org / onap / so / bpmn / common / AAISetPNFInMaintBBTest.java
diff --git a/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/common/AAISetPNFInMaintBBTest.java b/bpmn/so-bpmn-building-blocks/src/test/java/org/onap/so/bpmn/common/AAISetPNFInMaintBBTest.java
new file mode 100644 (file)
index 0000000..4ff5687
--- /dev/null
@@ -0,0 +1,32 @@
+package org.onap.so.bpmn.common;
+
+import org.camunda.bpm.engine.delegate.BpmnError;
+import org.camunda.bpm.engine.runtime.ProcessInstance;
+import org.junit.Test;
+import org.onap.so.bpmn.BaseBPMNTest;
+import java.io.IOException;
+import static org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doThrow;
+
+public class AAISetPNFInMaintBBTest extends BaseBPMNTest {
+    @Test
+    public void sunnyDayAAISetPnfInMaintBBTest() throws InterruptedException, IOException {
+        ProcessInstance pi = runtimeService.startProcessInstanceByKey("AAISetPnfInMaintBB", variables);
+        assertThat(pi).isNotNull().isStarted().hasPassedInOrder("Start_AAISetPnfInMaintBB", "Task_SetInMaint",
+                "End_AAISetPnfInMaintBB");
+    }
+
+    @Test
+    public void rainyDayAAISetPnfInMaintBBTest() {
+        doThrow(new BpmnError("7000", "TESTING ERRORS")).when(aaiFlagTasks)
+                .modifyPnfInMaintFlag(any(BuildingBlockExecution.class), any(boolean.class));
+
+        ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("AAISetPnfInMaintBB", variables);
+        assertThat(processInstance).isNotNull();
+        assertThat(processInstance).isStarted().hasPassedInOrder("Start_AAISetPnfInMaintBB", "Task_SetInMaint")
+                .hasNotPassed("End_AAISetPnfInMaintBB");
+        assertThat(processInstance).isEnded();
+    }
+
+}