The format is based on [Keep a Changelog](http://keepachangelog.com/)
 and this project adheres to [Semantic Versioning](http://semver.org/).
+
+## [1.12.3] - 2023/02/14
+         - [DCAEGEN2-3345] - Test updates for ConfigProcessor, DMaaPConfigurationParser & DMaaPEventPublisher
+
 ## [1.12.2] - 2023/01/20
          - [DCAEGEN2-3334] - Update tests execution to be platform agnostic
          - [DCAEGEN2-3345] - Add additional tests for ConfigProcessor and ApiAuthInterceptor
 
   </parent>
   <groupId>org.onap.dcaegen2.collectors.ves</groupId>
   <artifactId>VESCollector</artifactId>
-  <version>1.12.2-SNAPSHOT</version>
+  <version>1.12.3-SNAPSHOT</version>
   <name>dcaegen2-collectors-ves</name>
   <description>VESCollector</description>
   <properties>
 
         }
     }
 
-    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;
 
  * ============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");
 import java.util.Objects;
 
 import static org.onap.dcae.common.publishing.MessageRouterHttpStatusMapper.getHttpStatus;
+
 /**
  * @author Pawel Szalapski (pawel.szalapski@nokia.com)
  */
 
     /**
      * 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");
     }
     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);
+        });
     }
 }
 
 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;
                 + "        }");
         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);
 
     }
 
         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"));
+    }
 }
 
  * ============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");
 
 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;
         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")));
+    }
 }
 
--- /dev/null
+/*-
+ * ============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();
+    }
+
+}
 
 major=1
 minor=12
-patch=2
+patch=3
 base_version=${major}.${minor}.${patch}
 release_version=${base_version}
 snapshot_version=${base_version}-SNAPSHOT