* ================================================================================
* 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));
- }
}