X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=openstack%2Fnet-virt%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fovsdb%2Fopenstack%2Fnetvirt%2Fimpl%2FProviderNetworkManagerImplTest.java;h=769b8598fa1cdb3c675bafb7b706201e97340399;hb=3492b5d9c2c619c1085e9ccc5a534b650f37dc20;hp=3a32a9e0e567e8fc7041ebdca3f2f6b2030a18ee;hpb=73633264608ee0f772f5855a7a9e36d622b8e40f;p=ovsdb.git diff --git a/openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/ProviderNetworkManagerImplTest.java b/openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/ProviderNetworkManagerImplTest.java index 3a32a9e0e..769b8598f 100644 --- a/openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/ProviderNetworkManagerImplTest.java +++ b/openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/ProviderNetworkManagerImplTest.java @@ -14,25 +14,35 @@ import static org.mockito.Mockito.when; import java.lang.reflect.Field; import java.util.HashMap; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; +import org.mockito.Mock; import org.mockito.Spy; -import org.mockito.runners.MockitoJUnitRunner; import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProvider; +import org.opendaylight.ovsdb.openstack.netvirt.api.OvsdbInventoryService; +import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node; +import org.osgi.framework.BundleContext; 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 com.google.common.collect.Maps; /** * Unit test for {@link ProviderNetworkManagerImpl} */ -/* TODO SB_MIGRATION */ @Ignore -@RunWith(MockitoJUnitRunner.class) +@RunWith(PowerMockRunner.class) +@PrepareForTest(ServiceHelper.class) public class ProviderNetworkManagerImplTest { @InjectMocks private ProviderNetworkManagerImpl providerNetworkManagerImpl; - @Spy private HashMap nodeToProviderMapping; + + @Mock private OvsdbInventoryService ovsdbInventoryService; + + @Spy private HashMap nodeToProviderMapping = Maps.newHashMap(); /** * Test method {@link ProviderNetworkManagerImpl#getProvider(Node)} @@ -41,8 +51,6 @@ public class ProviderNetworkManagerImplTest { public void testGetProvider(){ // TODO test the method with no networkingProvider in the map // Could not be done as ProviderEntry is a private inner class of ProviderNetworkManagerImpl -// assertNotNull("Error, did not return the networkingProvider of the specified node", providerNetworkManagerImpl.getProvider(any(Node.class)); - Node node = mock(Node.class); NetworkingProvider networkingProvider = mock(NetworkingProvider.class); nodeToProviderMapping.put(node, networkingProvider); @@ -55,11 +63,9 @@ public class ProviderNetworkManagerImplTest { */ @Test public void testProviderAddedAndRemoved() throws Exception { - Field field = ProviderNetworkManagerImpl.class.getDeclaredField("providers"); - field.setAccessible(true); - HashMap map = (HashMap) field.get(providerNetworkManagerImpl); + HashMap map = (HashMap) getField("providers"); - ServiceReference ref = mock(ServiceReference.class); + ServiceReference ref = mock(ServiceReference.class); when(ref.getProperty(org.osgi.framework.Constants.SERVICE_ID)).thenReturn(Long.valueOf(1)); providerNetworkManagerImpl.providerAdded(ref, mock(NetworkingProvider.class)); @@ -70,4 +76,22 @@ public class ProviderNetworkManagerImplTest { assertEquals("Error, providerRemoved() did not remove the provider", 0, map.size()); } + + @Test + public void testSetDependencies() throws Exception { + OvsdbInventoryService ovsdbInventoryService = mock(OvsdbInventoryService.class); + + PowerMockito.mockStatic(ServiceHelper.class); + PowerMockito.when(ServiceHelper.getGlobalInstance(OvsdbInventoryService.class, providerNetworkManagerImpl)).thenReturn(ovsdbInventoryService); + + providerNetworkManagerImpl.setDependencies(mock(BundleContext.class), mock(ServiceReference.class)); + + assertEquals("Error, did not return the correct object", getField("ovsdbInventoryService"), ovsdbInventoryService); + } + + private Object getField(String fieldName) throws Exception { + Field field = ProviderNetworkManagerImpl.class.getDeclaredField(fieldName); + field.setAccessible(true); + return field.get(providerNetworkManagerImpl); + } }