From 1ef5f15a131b3cd543be09f2b808351919a18b5b Mon Sep 17 00:00:00 2001 From: Surya Sashank Nistala Date: Mon, 10 Jul 2023 09:29:24 -0700 Subject: [PATCH] add test to verify workflow with auditDelegateMonitor flag null Signed-off-by: Surya Sashank Nistala --- .../action/GetWorkflowResponseTests.kt | 40 ++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/src/test/kotlin/org/opensearch/commons/alerting/action/GetWorkflowResponseTests.kt b/src/test/kotlin/org/opensearch/commons/alerting/action/GetWorkflowResponseTests.kt index a5dc84e0..e1977357 100644 --- a/src/test/kotlin/org/opensearch/commons/alerting/action/GetWorkflowResponseTests.kt +++ b/src/test/kotlin/org/opensearch/commons/alerting/action/GetWorkflowResponseTests.kt @@ -4,13 +4,20 @@ import org.junit.jupiter.api.Assertions import org.junit.jupiter.api.Test import org.opensearch.common.io.stream.BytesStreamOutput import org.opensearch.common.io.stream.StreamInput +import org.opensearch.commons.alerting.model.CompositeInput +import org.opensearch.commons.alerting.model.IntervalSchedule +import org.opensearch.commons.alerting.model.Workflow +import org.opensearch.commons.alerting.randomDelegate +import org.opensearch.commons.alerting.randomUser import org.opensearch.commons.alerting.randomWorkflow import org.opensearch.rest.RestStatus +import java.time.Instant +import java.time.temporal.ChronoUnit class GetWorkflowResponseTests { @Test - fun testGetWorkflowRequest() { + fun testGetWorkflowResponse() { val workflow = randomWorkflow(auditDelegateMonitorAlerts = false) val response = GetWorkflowResponse( id = "id", version = 1, seqNo = 1, primaryTerm = 1, status = RestStatus.OK, workflow = workflow @@ -24,4 +31,35 @@ class GetWorkflowResponseTests { Assertions.assertEquals(workflow.name, newRes.workflow!!.name) Assertions.assertEquals(workflow.owner, newRes.workflow!!.owner) } + + @Test + fun testGetWorkflowResponseWhereAuditDelegateMonitorAlertsFlagIsNotSet() { + val workflow = Workflow( + id = "", + version = Workflow.NO_VERSION, + name = "test", + enabled = true, + schemaVersion = 2, + schedule = IntervalSchedule(1, ChronoUnit.MINUTES), + lastUpdateTime = Instant.now(), + enabledTime = Instant.now(), + workflowType = Workflow.WorkflowType.COMPOSITE, + user = randomUser(), + inputs = listOf(CompositeInput(org.opensearch.commons.alerting.model.Sequence(listOf(randomDelegate())))), + owner = "", + triggers = listOf() + ) + val response = GetWorkflowResponse( + id = "id", version = 1, seqNo = 1, primaryTerm = 1, status = RestStatus.OK, workflow = workflow + ) + val out = BytesStreamOutput() + response.writeTo(out) + val sin = StreamInput.wrap(out.bytes().toBytesRef().bytes) + val newRes = GetWorkflowResponse(sin) + Assertions.assertEquals("id", newRes.id) + Assertions.assertTrue(newRes.workflow!!.auditDelegateMonitorAlerts!!) + Assertions.assertEquals(workflow.name, newRes.workflow!!.name) + Assertions.assertEquals(workflow.owner, newRes.workflow!!.owner) + Assertions.assertEquals(workflow.auditDelegateMonitorAlerts, newRes.workflow!!.auditDelegateMonitorAlerts) + } }