summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVijay Venkatesh Kumar <vv770d@att.com>2023-02-14 16:48:50 -0500
committerVijay Venkatesh Kumar <vv770d@att.com>2023-02-14 16:59:01 -0500
commit66af83f78633f6d3884a7a477ea69422aa41af2b (patch)
treead85c0add763982433c06ecca99b6f11c6d6f512 /src
parent147999fca04f4c857209ff9594a69ccb2e2754d1 (diff)
Test updates1.12.3
Test updates for ConfigProcessor, DMaaPConfigurationParser & DMaaPEventPublisher Change-Id: I340b3591ca47172dc90f8dafabdc1a0bf34ffb7c Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-3345 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com>
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/onap/dcae/common/ConfigProcessors.java2
-rw-r--r--src/main/java/org/onap/dcae/common/publishing/DMaaPEventPublisher.java28
-rw-r--r--src/test/java/org/onap/dcae/common/ConfigProcessorTest.java16
-rw-r--r--src/test/java/org/onap/dcae/common/publishing/DMaaPConfigurationParserTest.java14
-rw-r--r--src/test/java/org/onap/dcae/common/publishing/DMaaPEventPublisherTest.java69
5 files changed, 116 insertions, 13 deletions
diff --git a/src/main/java/org/onap/dcae/common/ConfigProcessors.java b/src/main/java/org/onap/dcae/common/ConfigProcessors.java
index 040a3e6e..d53bf23b 100644
--- a/src/main/java/org/onap/dcae/common/ConfigProcessors.java
+++ b/src/main/java/org/onap/dcae/common/ConfigProcessors.java
@@ -202,7 +202,7 @@ public class ConfigProcessors {
}
}
- private String performOperation(String operation, String value) {
+ String performOperation(String operation, String value) {
log.info("performOperation");
if ("convertMBtoKB".equals(operation)) {
float kbValue = Float.parseFloat(value) * 1024;
diff --git a/src/main/java/org/onap/dcae/common/publishing/DMaaPEventPublisher.java b/src/main/java/org/onap/dcae/common/publishing/DMaaPEventPublisher.java
index 08e16e0c..a7c0a0eb 100644
--- a/src/main/java/org/onap/dcae/common/publishing/DMaaPEventPublisher.java
+++ b/src/main/java/org/onap/dcae/common/publishing/DMaaPEventPublisher.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* org.onap.dcaegen2.collectors.ves
* ================================================================================
- * Copyright (C) 2017,2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017,2020,2023 AT&T Intellectual Property. All rights reserved.
* Copyright (C) 2018-2021 Nokia. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,6 +33,7 @@ import java.util.List;
import java.util.Objects;
import static org.onap.dcae.common.publishing.MessageRouterHttpStatusMapper.getHttpStatus;
+
/**
* @author Pawel Szalapski (pawel.szalapski@nokia.com)
*/
@@ -48,9 +49,10 @@ public class DMaaPEventPublisher {
/**
* Reload Dmaap configuration
+ *
* @param dmaapConfiguration Dmaap configuration
*/
- public void reload(Map<String, PublisherConfig> dmaapConfiguration){
+ public void reload(Map<String, PublisherConfig> dmaapConfiguration) {
dMaaPConfig = dmaapConfiguration;
log.info("reload dmaap configuration");
}
@@ -58,22 +60,26 @@ public class DMaaPEventPublisher {
public HttpStatus sendEvent(List<VesEvent> vesEvents, String dmaapId) {
clearVesUniqueIdFromEvent(vesEvents);
io.vavr.collection.List<String> events = mapListOfEventsToVavrList(vesEvents);
- Flux<MessageRouterPublishResponse> messageRouterPublishFlux = dmaapPublisher.publishEvents(events, dMaaPConfig.get(dmaapId));
+ HttpStatus rc = messageRouterPublishResponse(events, dmaapId);
+ return rc;
+ }
+
+ HttpStatus messageRouterPublishResponse(io.vavr.collection.List<String> events, String dmaapId) {
+ Flux<MessageRouterPublishResponse> messageRouterPublishFlux =
+ dmaapPublisher.publishEvents(events, dMaaPConfig.get(dmaapId));
MessageRouterPublishResponse messageRouterPublishResponse = messageRouterPublishFlux.blockFirst();
return getHttpStatus(Objects.requireNonNull(messageRouterPublishResponse));
+
}
private io.vavr.collection.List<String> mapListOfEventsToVavrList(List<VesEvent> vesEvents) {
- return io.vavr.collection.List.ofAll(vesEvents)
- .map(event -> event.asJsonObject().toString());
+ return io.vavr.collection.List.ofAll(vesEvents).map(event -> event.asJsonObject().toString());
}
private void clearVesUniqueIdFromEvent(List<VesEvent> events) {
- events.stream()
- .filter(event -> event.hasType(VesEvent.VES_UNIQUE_ID))
- .forEach(event -> {
- log.debug("Removing VESuniqueid object from event");
- event.removeElement(VesEvent.VES_UNIQUE_ID);
- });
+ events.stream().filter(event -> event.hasType(VesEvent.VES_UNIQUE_ID)).forEach(event -> {
+ log.debug("Removing VESuniqueid object from event");
+ event.removeElement(VesEvent.VES_UNIQUE_ID);
+ });
}
}
diff --git a/src/test/java/org/onap/dcae/common/ConfigProcessorTest.java b/src/test/java/org/onap/dcae/common/ConfigProcessorTest.java
index 7fe80e03..a42ba5ae 100644
--- a/src/test/java/org/onap/dcae/common/ConfigProcessorTest.java
+++ b/src/test/java/org/onap/dcae/common/ConfigProcessorTest.java
@@ -29,6 +29,7 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import org.json.JSONArray;
import org.json.JSONObject;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -58,6 +59,14 @@ public class ConfigProcessorTest {
+ " }");
doReturn("ObjectNotFound").when(configProcessors).getEventObjectVal(Mockito.any());
configProcessors.renameArrayInArray(jsonObj);
+ JSONObject jsonObj1 = new JSONObject(" {\r\n"
+ + " \"field\": \"event[].measurementsForVfScalingFields[]\",\r\n"
+ + " \"oldField\": \"event[].measurementFields[]\",\r\n"
+ + " \"mapType\": \"renameObject\"\r\n"
+ + " }");
+ String oldvalue = "[{\"cpuUsageNice\":0,\"percentUsage\":0.39,\"cpuIdentifier\":\"all\",\"cpuIdle\":99.61,\"cpuUsageSystem\":0,\"cpuUsageUser\":0.22},{\"cpuUsageNice\":0,\"percentUsage\":0.36,\"cpuIdentifier\":\"cpu0\",\"cpuIdle\":99.64,\"cpuUsageSystem\":0,\"cpuUsageUser\":0.21},{\"cpuUsageNice\":0,\"percentUsage\":0.33,\"cpuIdentifier\":\"cpu3\",\"cpuIdle\":99.67,\"cpuUsageSystem\":0,\"cpuUsageUser\":0.19}]";
+ doReturn(oldvalue).when(configProcessors).getEventObjectVal(Mockito.any());
+ configProcessors.renameArrayInArray(jsonObj1);
}
@@ -124,4 +133,11 @@ public class ConfigProcessorTest {
doReturn(true).when(configProcessors).checkFilter(Mockito.any(),Mockito.any(),Mockito.any());
assertTrue((configProcessors.isFilterMet(jsonObj)));
}
+
+ @Test
+ public void verifyConvertMBtoKBOperation() {
+ String operation = "convertMBtoKB";
+ String expval = "5120.0";
+ assertEquals (expval, configProcessors.performOperation( operation, "5"));
+ }
}
diff --git a/src/test/java/org/onap/dcae/common/publishing/DMaaPConfigurationParserTest.java b/src/test/java/org/onap/dcae/common/publishing/DMaaPConfigurationParserTest.java
index 9aaeb287..63c65050 100644
--- a/src/test/java/org/onap/dcae/common/publishing/DMaaPConfigurationParserTest.java
+++ b/src/test/java/org/onap/dcae/common/publishing/DMaaPConfigurationParserTest.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* org.onap.dcaegen2.collectors.ves
* ================================================================================
- * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018,2023 AT&T Intellectual Property. All rights reserved.
* Copyright (C) 2018,2021 Nokia. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -22,8 +22,11 @@ package org.onap.dcae.common.publishing;
import static io.vavr.API.List;
import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
import static org.onap.dcae.common.publishing.DMaaPConfigurationParser.parseToDomainMapping;
+import io.vavr.collection.List;
import io.vavr.collection.Map;
import io.vavr.control.Try;
import java.nio.file.Path;
@@ -70,4 +73,13 @@ public class DMaaPConfigurationParserTest {
assertThat(withOtherSegment.topic()).isEqualTo("DCAE-SE-COLLECTOR-EVENTS-DEV");
}
+ @Test
+ public void testPubConfigOverrideFunction() {
+ List<String> dmaapHost = List.of("dmaapHost:3904");
+ PublisherConfig pubConfig = new PublisherConfig(dmaapHost,"VES-OUTPUT", "TEST","TEST");
+ assertTrue(pubConfig.equals(pubConfig));
+ //negative tests
+ assertFalse(pubConfig.equals(null));
+ assertFalse(pubConfig.equals(new PublisherConfig(dmaapHost,"VES-OUTPUT1", "TEST1","TEST1")));
+ }
}
diff --git a/src/test/java/org/onap/dcae/common/publishing/DMaaPEventPublisherTest.java b/src/test/java/org/onap/dcae/common/publishing/DMaaPEventPublisherTest.java
new file mode 100644
index 00000000..1fdd27a0
--- /dev/null
+++ b/src/test/java/org/onap/dcae/common/publishing/DMaaPEventPublisherTest.java
@@ -0,0 +1,69 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * VES Collector
+ * ================================================================================
+ * Copyright (C) 2023 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.dcae.common.publishing;
+
+import io.vavr.collection.HashMap;
+import io.vavr.collection.List;
+import io.vavr.collection.Map;
+import org.json.JSONObject;
+import org.junit.jupiter.api.Test;
+import org.mockito.Mockito;
+import org.onap.dcae.common.JsonDataLoader;
+import org.onap.dcae.common.model.VesEvent;
+import org.onap.dcaegen2.services.sdk.rest.services.dmaap.client.model.ImmutableMessageRouterPublishResponse;
+import org.onap.dcaegen2.services.sdk.rest.services.dmaap.client.model.MessageRouterPublishResponse;
+import org.springframework.http.HttpStatus;
+
+import com.google.gson.JsonElement;
+
+import java.io.IOException;
+import java.net.URISyntaxException;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.doReturn;
+
+public class DMaaPEventPublisherTest {
+
+ @Test
+ public void sendEventtest() throws IOException, URISyntaxException {
+
+ HttpStatus expectedrc = HttpStatus.ACCEPTED;
+
+ Map<String, PublisherConfig> dMaaPConfig = HashMap.of("key1", new PublisherConfig(null, null));
+ DMaaPEventPublisher dmaapEventpub = Mockito.spy(new DMaaPEventPublisher(dMaaPConfig));
+ java.util.List<VesEvent> eventToSend = createEventToSend("/eventsAfterTransformation/ves7_valid_event.json");
+ doReturn(expectedrc).when(dmaapEventpub).messageRouterPublishResponse(Mockito.any(), Mockito.any());
+ HttpStatus rc = dmaapEventpub.sendEvent(eventToSend, "ves-fault");
+ assertEquals(expectedrc.toString(), rc.toString());
+ }
+
+ private java.util.List<VesEvent> createEventToSend(String path) throws IOException, URISyntaxException {
+ String event = JsonDataLoader.loadContent(path);
+ JSONObject jsonObject = new JSONObject(event);
+ java.util.List<VesEvent> javaStringList = (List.of(new VesEvent(jsonObject))).toJavaList();
+ return javaStringList;
+ }
+
+ private MessageRouterPublishResponse successPublishResponse(List<JsonElement> items) {
+ return ImmutableMessageRouterPublishResponse.builder().items(items).build();
+ }
+
+}