END_TIME is not populated by bpmn as expected 03/88003/1
authorSangalang, Felix <felix.sangalang@att.com>
Fri, 17 May 2019 14:16:27 +0000 (10:16 -0400)
committerBenjamin, Max (mb388a) <mb388a@us.att.com>
Fri, 17 May 2019 14:16:36 +0000 (10:16 -0400)
Removed/Cleaned-up unnecessary lines/codes.
Updated junit tests for END_TIME to any(Timestamp.class).
END_TIME is not populated by bpmn when rainy day retry or rollback is
executed.

Change-Id: I614d66ca767629bf43aac8eee981423e5393015e
Issue-ID: SO-1887
Signed-off-by: Benjamin, Max (mb388a) <mb388a@us.att.com>
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBFailure.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBFailureTest.java

index 4fc4d85..5f357f5 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.onap.so.bpmn.infrastructure.workflow.tasks;
 
+import java.sql.Timestamp;
 import java.util.Optional;
 import org.camunda.bpm.engine.delegate.BpmnError;
 import org.camunda.bpm.engine.delegate.DelegateExecution;
@@ -53,6 +54,10 @@ public class WorkflowActionBBFailure {
                 errorMsg = "Failed to determine error message";
             }
             request.setStatusMessage(errorMsg);
+            request.setProgress(Long.valueOf(100));
+            request.setRequestStatus("FAILED");
+            request.setLastModifiedBy("CamundaBPMN");
+            request.setEndTime(new Timestamp(System.currentTimeMillis()));
             requestDbclient.updateInfraActiveRequests(request);
         } catch (Exception e) {
             logger.error(
@@ -113,6 +118,7 @@ public class WorkflowActionBBFailure {
             request.setProgress(Long.valueOf(100));
             request.setRequestStatus("FAILED");
             request.setLastModifiedBy("CamundaBPMN");
+            request.setEndTime(new Timestamp(System.currentTimeMillis()));
             requestDbclient.updateInfraActiveRequests(request);
         } catch (Exception e) {
             workflowAction.buildAndThrowException(execution, "Error Updating Request Database", e);
index a6ce88f..52a2cf7 100644 (file)
@@ -23,11 +23,14 @@ package org.onap.so.bpmn.infrastructure.workflow.tasks;
 import static org.junit.Assert.assertEquals;
 import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.ArgumentMatchers.isA;
+import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.doNothing;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.when;
+import java.sql.Timestamp;
 import org.camunda.bpm.engine.delegate.DelegateExecution;
 import org.camunda.bpm.extension.mockito.delegate.DelegateExecutionFake;
+import org.junit.After;
 import org.junit.Before;
 import org.junit.Rule;
 import org.junit.Test;
@@ -84,6 +87,7 @@ public class WorkflowActionBBFailureTest extends BaseTaskTest {
         Mockito.verify(reqMock, Mockito.times(1)).setRequestStatus("FAILED");
         Mockito.verify(reqMock, Mockito.times(1)).setProgress(Long.valueOf(100));
         Mockito.verify(reqMock, Mockito.times(1)).setLastModifiedBy("CamundaBPMN");
+        Mockito.verify(reqMock, Mockito.times(1)).setEndTime(any(Timestamp.class));
     }
 
     @Test
@@ -142,4 +146,20 @@ public class WorkflowActionBBFailureTest extends BaseTaskTest {
         String errorMsg = (String) execution.getVariable("ErrorMessage");
         assertEquals("error in test case", errorMsg);
     }
+
+    @Test
+    public void updateRequestErrorStatusMessageTest() {
+        String reqId = "reqId123";
+        execution.setVariable("mso-request-id", reqId);
+        WorkflowException we = new WorkflowException("WorkflowAction", 1231, "Error Case");
+        execution.setVariable("WorkflowException", we);
+
+        doReturn(reqMock).when(requestsDbClient).getInfraActiveRequestbyRequestId(reqId);
+        workflowActionBBFailure.updateRequestErrorStatusMessage(execution);
+        Mockito.verify(reqMock, Mockito.times(1)).setStatusMessage("Error Case");
+        Mockito.verify(reqMock, Mockito.times(1)).setRequestStatus("FAILED");
+        Mockito.verify(reqMock, Mockito.times(1)).setProgress(Long.valueOf(100));
+        Mockito.verify(reqMock, Mockito.times(1)).setLastModifiedBy("CamundaBPMN");
+        Mockito.verify(reqMock, Mockito.times(1)).setEndTime(any(Timestamp.class));
+    }
 }