diff options
Diffstat (limited to 'dcae-analytics-cdap-common/src/test/java/org')
3 files changed, 113 insertions, 9 deletions
diff --git a/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/BaseAnalyticsCDAPCommonUnitTest.java b/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/BaseAnalyticsCDAPCommonUnitTest.java index 825cdf0..55a2198 100644 --- a/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/BaseAnalyticsCDAPCommonUnitTest.java +++ b/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/BaseAnalyticsCDAPCommonUnitTest.java @@ -35,8 +35,8 @@ import org.openecomp.dcae.apod.analytics.test.BaseDCAEAnalyticsUnitTest; */ public abstract class BaseAnalyticsCDAPCommonUnitTest extends BaseDCAEAnalyticsUnitTest { - protected static final String CEF_MESSAGE_FILE_LOCATION = "data/json/cef_message.json"; - protected static final String TCA_POLICY_FILE_LOCATION = "data/json/tca_policy.json"; + protected static final String CEF_MESSAGE_FILE_LOCATION = "data/json/cef/cef_message.json"; + protected static final String TCA_POLICY_FILE_LOCATION = "data/json/policy/tca_policy.json"; protected static final ObjectMapper ANALYTICS_MODEL_OBJECT_MAPPER = Suppliers.memoize(new AnalyticsModelObjectMapperSupplier()).get(); diff --git a/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAAlertsAbatementPersisterTest.java b/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAAlertsAbatementPersisterTest.java new file mode 100644 index 0000000..36d72fa --- /dev/null +++ b/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAAlertsAbatementPersisterTest.java @@ -0,0 +1,103 @@ +package org.openecomp.dcae.apod.analytics.cdap.common.persistance.tca; + +import co.cask.cdap.api.dataset.DatasetProperties; +import co.cask.cdap.api.dataset.lib.ObjectMappedTable; +import com.google.common.base.Joiner; +import com.google.common.collect.ImmutableList; +import org.junit.Before; +import org.junit.Test; +import org.openecomp.dcae.apod.analytics.cdap.common.BaseAnalyticsCDAPCommonUnitTest; +import org.openecomp.dcae.apod.analytics.common.utils.PersistenceUtils; +import org.openecomp.dcae.apod.analytics.model.domain.cef.CommonEventHeader; +import org.openecomp.dcae.apod.analytics.model.domain.cef.Event; +import org.openecomp.dcae.apod.analytics.model.domain.cef.EventListener; +import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.MetricsPerEventName; +import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.Threshold; +import org.openecomp.dcae.apod.analytics.model.facade.tca.TCAVESResponse; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +/** + * Author: rs153v (Rajiv Singla) . Creation Date: 9/13/2017. + */ +public class TCAAlertsAbatementPersisterTest extends BaseAnalyticsCDAPCommonUnitTest { + + private static final String EVENT_NAME = "testEventName"; + private static final String SOURCE_NAME = "testSourceName"; + private static final String REPORTING_ENTITY_NAME = "testReportingEntityName"; + private static final String THRESHOLD_CLOSED_LOOP_CONTROL_NAME = "testControlLoopName"; + private static final String THRESHOLD_FIELD_PATH = "testFieldPath"; + private static final String EXPECTED_LOOKUP_KEY = Joiner.on(PersistenceUtils.ROW_KEY_DELIMITER).join( + ImmutableList.of(EVENT_NAME, SOURCE_NAME, REPORTING_ENTITY_NAME, + THRESHOLD_CLOSED_LOOP_CONTROL_NAME, THRESHOLD_FIELD_PATH)); + + private ObjectMappedTable<TCAAlertsAbatementEntity> alertsAbatementTable; + private EventListener eventListener; + private MetricsPerEventName violatedMetricsPerEventName; + private TCAVESResponse tcavesResponse; + private String abatementTS; + private Event event; + private CommonEventHeader commonEventHeader; + private Threshold violatedThreshold; + + @Before + public void before() throws Exception { + alertsAbatementTable = mock(ObjectMappedTable.class); + eventListener = mock(EventListener.class); + event = mock(Event.class); + commonEventHeader = mock(CommonEventHeader.class); + + when(eventListener.getEvent()).thenReturn(event); + when(event.getCommonEventHeader()).thenReturn(commonEventHeader); + when(commonEventHeader.getEventName()).thenReturn(EVENT_NAME); + when(commonEventHeader.getSourceName()).thenReturn(SOURCE_NAME); + when(commonEventHeader.getReportingEntityName()).thenReturn(REPORTING_ENTITY_NAME); + + violatedMetricsPerEventName = mock(MetricsPerEventName.class); + when(violatedMetricsPerEventName.getEventName()).thenReturn(EVENT_NAME); + violatedThreshold = mock(Threshold.class); + when(violatedMetricsPerEventName.getThresholds()).thenReturn(ImmutableList.of(violatedThreshold)); + when(violatedThreshold.getClosedLoopControlName()).thenReturn(THRESHOLD_CLOSED_LOOP_CONTROL_NAME); + when(violatedThreshold.getFieldPath()).thenReturn(THRESHOLD_FIELD_PATH); + tcavesResponse = mock(TCAVESResponse.class); + abatementTS = "1234"; + } + + @Test + public void testGetDatasetProperties() throws Exception { + final DatasetProperties datasetProperties = TCAAlertsAbatementPersister.getDatasetProperties(20000); + assertNotNull(datasetProperties); + } + + @Test + public void testPersist() throws Exception { + + TCAAlertsAbatementPersister.persist(eventListener, violatedMetricsPerEventName, tcavesResponse, + abatementTS, alertsAbatementTable); + verify(alertsAbatementTable, times(1)).write(anyString(), + any(TCAAlertsAbatementEntity.class)); + + } + + @Test + public void testLookUpByKey() throws Exception { + TCAAlertsAbatementPersister.lookUpByKey(eventListener, violatedMetricsPerEventName, alertsAbatementTable); + verify(alertsAbatementTable, times(1)).read(eq(EXPECTED_LOOKUP_KEY)); + } + + @Test + public void testCreateKey() throws Exception { + final String createdKey = TCAAlertsAbatementPersister.createKey(eventListener, violatedMetricsPerEventName); + assertEquals(createdKey, EXPECTED_LOOKUP_KEY); + + } + +} diff --git a/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAMessageStatusPersisterTest.java b/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAMessageStatusPersisterTest.java index a062b37..7dfd74d 100644 --- a/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAMessageStatusPersisterTest.java +++ b/dcae-analytics-cdap-common/src/test/java/org/openecomp/dcae/apod/analytics/cdap/common/persistance/tca/TCAMessageStatusPersisterTest.java @@ -28,11 +28,12 @@ import org.junit.Before; import org.junit.Test; import org.openecomp.dcae.apod.analytics.cdap.common.BaseAnalyticsCDAPCommonUnitTest; import org.openecomp.dcae.apod.analytics.model.domain.cef.CommonEventHeader; +import org.openecomp.dcae.apod.analytics.model.domain.cef.Domain; import org.openecomp.dcae.apod.analytics.model.domain.cef.Event; import org.openecomp.dcae.apod.analytics.model.domain.cef.EventListener; import org.openecomp.dcae.apod.analytics.model.domain.cef.EventSeverity; import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.Direction; -import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.MetricsPerFunctionalRole; +import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.MetricsPerEventName; import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.TCAPolicy; import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.Threshold; import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFProcessorContext; @@ -51,8 +52,8 @@ import static org.mockito.Mockito.when; public class TCAMessageStatusPersisterTest extends BaseAnalyticsCDAPCommonUnitTest { private static final int TEST_INSTANCE_ID = 0; - private static final String TEST_DOMAIN = "TEST_DOMAIN"; - private static final String TEST_FUNCTIONAL_ROLE = "TEST_FUNCIONAL_ROLE"; + private static final Domain TEST_DOMAIN = Domain.other; + private static final String TEST_EVENT_NAME = "TEST_EVENT_NAME"; private ObjectMappedTable<TCAMessageStatusEntity> vesMessageStatusTable; private TCACEFProcessorContext processorContext; @@ -73,7 +74,7 @@ public class TCAMessageStatusPersisterTest extends BaseAnalyticsCDAPCommonUnitTe when(processorContext.getCEFEventListener()).thenReturn(eventListener); when(eventListener.getEvent()).thenReturn(event); when(event.getCommonEventHeader()).thenReturn(commonEventHeader); - when(commonEventHeader.getFunctionalRole()).thenReturn(TEST_FUNCTIONAL_ROLE); + when(commonEventHeader.getEventName()).thenReturn(TEST_EVENT_NAME); when(commonEventHeader.getDomain()).thenReturn(TEST_DOMAIN); } @@ -88,10 +89,10 @@ public class TCAMessageStatusPersisterTest extends BaseAnalyticsCDAPCommonUnitTe @Test public void testPersistWithNonCompliantMessage() throws Exception { - final MetricsPerFunctionalRole metricsPerFunctionalRole = mock(MetricsPerFunctionalRole.class); + final MetricsPerEventName metricsPerEventName = mock(MetricsPerEventName.class); final Threshold threshold = mock(Threshold.class); - when(processorContext.getMetricsPerFunctionalRole()).thenReturn(metricsPerFunctionalRole); - when((metricsPerFunctionalRole.getThresholds())).thenReturn(ImmutableList.of(threshold)); + when(processorContext.getMetricsPerEventName()).thenReturn(metricsPerEventName); + when((metricsPerEventName.getThresholds())).thenReturn(ImmutableList.of(threshold)); when(threshold.getDirection()).thenReturn(Direction.GREATER); when(threshold.getSeverity()).thenReturn(EventSeverity.CRITICAL); TCAMessageStatusPersister.persist( |