Change code to use dmaap microservice
[appc.git] / appc-dispatcher / appc-request-handler / appc-request-handler-core / src / test / java / org / onap / appc / messageadapter / impl / MessageAdapterImplTest.java
index d5c3534..81c0026 100644 (file)
@@ -4,6 +4,8 @@
  * ================================================================================
  * Copyright (C) 2019 Ericsson
  * ================================================================================
+ * Copyright (C) 2019 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
 
 package org.onap.appc.messageadapter.impl;
 
-import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+
+import javax.ws.rs.core.Response.Status;
+
 import org.junit.Before;
 import org.junit.Test;
-import org.junit.runner.RunWith;
 import org.mockito.Mockito;
-import org.mockito.internal.util.reflection.Whitebox;
-import org.onap.appc.adapter.message.MessageAdapterFactory;
-import org.onap.appc.adapter.message.Producer;
-import org.onap.appc.configuration.Configuration;
-import org.onap.appc.configuration.ConfigurationFactory;
-import org.onap.appc.requesthandler.conv.Converter;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.FrameworkUtil;
-import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
+import org.onap.appc.domainmodel.lcm.CommonHeader;
+import org.onap.appc.domainmodel.lcm.ResponseContext;
+import org.onap.appc.domainmodel.lcm.VNFOperation;
+import org.onap.appc.srvcomm.messaging.MessagingConnector;
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
 import com.fasterxml.jackson.core.JsonProcessingException;
-import com.att.eelf.configuration.EELFLogger.Level;
 
-@RunWith(PowerMockRunner.class)
-@PrepareForTest({FrameworkUtil.class, Converter.class})
 public class MessageAdapterImplTest {
 
-    private Configuration mockConfig = ConfigurationFactory.getConfiguration();
-    private final BundleContext bundleContext = Mockito.mock(BundleContext.class);
-    private final Bundle bundleService = Mockito.mock(Bundle.class);
-    private final ServiceReference sref = Mockito.mock(ServiceReference.class);
-    private final Producer producer = Mockito.mock(Producer.class);
+    private final MessagingConnector connector = Mockito.mock(MessagingConnector.class);
     private static final EELFLogger logger = EELFManager.getInstance().getLogger(MessageAdapterImpl.class);
-    private MessageAdapterImpl impl;
-
+    private final MessageAdapterImpl impl = new MessageAdapterImpl();
+    
     @Before
-    public void setUp() throws Exception {
-        logger.setLevel(Level.TRACE);
-        impl = PowerMockito.spy(new MessageAdapterImpl());
-        //originalLogger = (EELFLogger) Whitebox.getInternalState(MessageAdapterImpl.class, "logger");
-        Whitebox.setInternalState(impl, "configuration", mockConfig);
-        PowerMockito.mockStatic(FrameworkUtil.class);
-        PowerMockito.when(FrameworkUtil.getBundle(MessageAdapterImpl.class)).thenReturn(bundleService);
-        PowerMockito.when(bundleService.getBundleContext()).thenReturn(bundleContext);
-        PowerMockito.when(bundleContext.getServiceReference(MessageAdapterFactory.class.getName())).thenReturn(sref);
-        PowerMockito.when(bundleContext.getService(sref)).thenReturn(producer);
-        PowerMockito.mockStatic(Converter.class);
-        PowerMockito.when(Converter.convAsyncResponseToDmaapOutgoingMessageJsonString(
-                Mockito.any(), Mockito.any(), Mockito.any())).thenReturn("{}");
+    public void setUp() {
+        impl.init(connector);
     }
 
     @Test
     public void testSuccess() throws JsonProcessingException {
-        PowerMockito.when(Converter.convAsyncResponseToDmaapOutgoingMessageJsonString(
-                Mockito.any(), Mockito.any(), Mockito.any())).thenReturn("{}");
-        Mockito.when(producer.post(Mockito.anyString(), Mockito.anyString())).thenReturn(true);
-        Whitebox.setInternalState(impl, "producer", producer);
-        Whitebox.setInternalState(impl, "partition", "PARTITION");
-        assertTrue(impl.post(null, null, null));
-    }
 
-    @Test
-    public void testJsonException() throws JsonProcessingException {
-        PowerMockito.when(Converter.convAsyncResponseToDmaapOutgoingMessageJsonString(
-                Mockito.any(), Mockito.any(), Mockito.any())).thenThrow(new JsonProcessingException("TEST") {});
-        Whitebox.setInternalState(impl, "partition", "PARTITION");
-        assertFalse(impl.post(null, null, null));
+        ResponseContext context = new ResponseContext();
+        context.setPayload("payload");
+        org.onap.appc.domainmodel.lcm.Status status = new org.onap.appc.domainmodel.lcm.Status();
+        status.setCode(200);
+        status.setMessage("success");
+        context.setStatus(status);
+        CommonHeader commonHeader = new CommonHeader();
+        commonHeader.setRequestId("test123");
+        commonHeader.setSubRequestId("test456");
+        context.setCommonHeader(commonHeader);
+        Mockito.when(connector.publishMessage(Mockito.any(), Mockito.any(),Mockito.any())).thenReturn(true);
+        assertTrue(impl.post(VNFOperation.Start, "test", context));
     }
 
-    @Test
-    public void testException() throws JsonProcessingException {
-        PowerMockito.when(Converter.convAsyncResponseToDmaapOutgoingMessageJsonString(
-                Mockito.any(), Mockito.any(), Mockito.any())).thenThrow(new RuntimeException());
-        Whitebox.setInternalState(impl, "partition", "PARTITION");
-        assertFalse(impl.post(null, null, null));
-    }
 }