From 4338d230f0539030f44cb420dc49fa31ed4aa5da Mon Sep 17 00:00:00 2001 From: Petar Dzepina Date: Thu, 3 Nov 2022 02:23:53 +0100 Subject: [PATCH] fixed findingsDto bug Signed-off-by: Petar Dzepina --- .../securityanalytics/action/FindingDto.java | 29 +++++++++++- .../findings/FindingDtoTests.java | 44 +++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 src/test/java/org/opensearch/securityanalytics/findings/FindingDtoTests.java diff --git a/src/main/java/org/opensearch/securityanalytics/action/FindingDto.java b/src/main/java/org/opensearch/securityanalytics/action/FindingDto.java index 6e109aef8..6916b318e 100644 --- a/src/main/java/org/opensearch/securityanalytics/action/FindingDto.java +++ b/src/main/java/org/opensearch/securityanalytics/action/FindingDto.java @@ -45,7 +45,7 @@ public FindingDto( Instant timestamp, List documents ) { - this.detectorId = id; + this.detectorId = detectorId; this.id = id; this.relatedDocIds = relatedDocIds; this.index = index; @@ -89,4 +89,31 @@ public void writeTo(StreamOutput out) throws IOException { out.writeList(documents); } + public String getId() { + return id; + } + + public List getRelatedDocIds() { + return relatedDocIds; + } + + public String getIndex() { + return index; + } + + public List getDocLevelQueries() { + return docLevelQueries; + } + + public Instant getTimestamp() { + return timestamp; + } + + public List getDocuments() { + return documents; + } + + public String getDetectorId() { + return detectorId; + } } diff --git a/src/test/java/org/opensearch/securityanalytics/findings/FindingDtoTests.java b/src/test/java/org/opensearch/securityanalytics/findings/FindingDtoTests.java new file mode 100644 index 000000000..7877410be --- /dev/null +++ b/src/test/java/org/opensearch/securityanalytics/findings/FindingDtoTests.java @@ -0,0 +1,44 @@ +/* + * Copyright OpenSearch Contributors + * SPDX-License-Identifier: Apache-2.0 + */ +package org.opensearch.securityanalytics.findings; + +import java.time.Instant; +import java.util.List; +import org.opensearch.commons.alerting.model.DocLevelQuery; +import org.opensearch.commons.alerting.model.FindingDocument; +import org.opensearch.securityanalytics.action.FindingDto; +import org.opensearch.test.OpenSearchTestCase; + +public class FindingDtoTests extends OpenSearchTestCase { + + + public void testFindingDTO_creation() { + + FindingDocument findingDocument1 = new FindingDocument("test_index1", "doc1", true, "document 1 payload"); + FindingDocument findingDocument2 = new FindingDocument("test_index1", "doc2", true, "document 2 payload"); + FindingDocument findingDocument3 = new FindingDocument("test_index1", "doc3", true, "document 3 payload"); + + Instant now = Instant.now(); + + FindingDto findingDto = new FindingDto( + "detectorId", + "findingId", + List.of("doc1", "doc2", "doc3"), + "my_index", + List.of(new DocLevelQuery("1","myQuery","fieldA:valABC", List.of())), + now, + List.of(findingDocument1, findingDocument2, findingDocument3) + ); + + assertEquals("detectorId", findingDto.getDetectorId()); + assertEquals("findingId", findingDto.getId()); + assertEquals(List.of("doc1", "doc2", "doc3"), findingDto.getRelatedDocIds()); + assertEquals("my_index", findingDto.getIndex()); + assertEquals(List.of(new DocLevelQuery("1","myQuery","fieldA:valABC", List.of())), findingDto.getDocLevelQueries()); + assertEquals(now, findingDto.getTimestamp()); + assertEquals(List.of(findingDocument1, findingDocument2, findingDocument3), findingDto.getDocuments()); + } + +}