Merge "BUG-5006: Reduce usage of PowerMock"
authorSam Hague <shague@redhat.com>
Tue, 19 Jan 2016 11:24:40 +0000 (11:24 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 19 Jan 2016 11:24:40 +0000 (11:24 +0000)
29 files changed:
openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/AbstractServiceInstanceTest.java
openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/OF13ProviderTest.java
openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/PipelineOrchestratorImplTest.java
openstack/net-virt-sfc/impl/pom.xml
openstack/net-virt-sfc/impl/src/test/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/netvirt/sfc/rev141210/NetvirtSfcModuleTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/FWaasHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/FloatingIPHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/LBaaSHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/LBaaSPoolHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/LBaaSPoolMemberHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/NetworkHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/NeutronCacheUtilsTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/PortHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/PortSecurityHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/RouterHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/SouthboundHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/SubnetHandlerTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/BridgeConfigurationManagerImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/ConfigurationServiceImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/NeutronL3AdapterTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/NodeCacheManagerImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/ProviderNetworkManagerImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/SecurityGroupCacheManagerImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/SecurityServicesImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/TenantNetworkManagerImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/impl/VlanConfigurationCacheImplTest.java
openstack/net-virt/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/translator/crud/impl/NeutronFloatingIPInterfaceTest.java
utils/config/src/main/java/org/opendaylight/ovsdb/utils/config/ConfigProperties.java
utils/servicehelper/src/main/java/org/opendaylight/ovsdb/utils/servicehelper/ServiceHelper.java

index b98e13a0a263596b81f9517bb73c464c7422fc12..2d401db33f2377d12af6a16248621e19e8b5bb6f 100644 (file)
@@ -46,7 +46,6 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.N
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
 import org.powermock.api.support.membermodification.MemberModifier;
 import org.powermock.modules.junit4.PowerMockRunner;
 
@@ -56,7 +55,6 @@ import com.google.common.util.concurrent.CheckedFuture;
 /**
  * Unit test for {@link AbstractServiceInstance}
  */
-//@PrepareForTest(ServiceHelper.class)
 @RunWith(PowerMockRunner.class)
 @SuppressWarnings("unchecked")
 public class AbstractServiceInstanceTest {
@@ -246,18 +244,17 @@ public class AbstractServiceInstanceTest {
         verify(abstractServiceInstance, times(1)).writeFlow(any(FlowBuilder.class), any(NodeBuilder.class));
     }
 
-//    @Test TODO - re-activate test
+    @Test
     public void testSetDependencies() throws Exception {
         PipelineOrchestrator pipelineOrchestrator = mock(PipelineOrchestrator.class);
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(PipelineOrchestrator.class, abstractServiceInstance)).thenReturn(pipelineOrchestrator);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, abstractServiceInstance)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(PipelineOrchestrator.class, pipelineOrchestrator);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         abstractServiceInstance.setDependencies(mock(ServiceReference.class), mock(AbstractServiceInstance.class));
 
-        assertEquals("Error, did not return the correct object", getField("pipelineOrchestrator"), pipelineOrchestrator);
+        assertEquals("Error, did not return the correct object", getField("orchestrator"), pipelineOrchestrator);
         assertEquals("Error, did not return the correct object", getField("southbound"), southbound);
     }
 
index a4ce294d9d5972560cf36d3a47bc7d63ea703fcf..5259303f2917d8e29af50bf0e04d112fbc28f7b8 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe Technologies.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe Technologies.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -488,17 +488,16 @@ public class OF13ProviderTest {
         SecurityServicesManager securityServicesManager = mock(SecurityServicesManager.class);
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(ConfigurationService.class, of13Provider)).thenReturn(configurationService);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(TenantNetworkManager.class, of13Provider)).thenReturn(tenantNetworkManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(BridgeConfigurationManager.class, of13Provider)).thenReturn(bridgeConfigurationManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, of13Provider)).thenReturn(nodeCacheManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(ClassifierProvider.class, of13Provider)).thenReturn(classifierProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(IngressAclProvider.class, of13Provider)).thenReturn(ingressAclProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EgressAclProvider.class, of13Provider)).thenReturn(egressAclProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(L2ForwardingProvider.class, of13Provider)).thenReturn(l2ForwardingProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(SecurityServicesManager.class, of13Provider)).thenReturn(securityServicesManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, of13Provider)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(ConfigurationService.class, configurationService);
+        ServiceHelper.overrideGlobalInstance(TenantNetworkManager.class, tenantNetworkManager);
+        ServiceHelper.overrideGlobalInstance(BridgeConfigurationManager.class, bridgeConfigurationManager);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(ClassifierProvider.class, classifierProvider);
+        ServiceHelper.overrideGlobalInstance(IngressAclProvider.class, ingressAclProvider);
+        ServiceHelper.overrideGlobalInstance(EgressAclProvider.class, egressAclProvider);
+        ServiceHelper.overrideGlobalInstance(L2ForwardingProvider.class, l2ForwardingProvider);
+        ServiceHelper.overrideGlobalInstance(SecurityServicesManager.class, securityServicesManager);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         of13Provider.setDependencies(mock(BundleContext.class), mock(ServiceReference.class));
 
index 98d6c97b7dde4a50a65a5cdcdf934425d2467af3..37cf99b37ccff555eb682a962d47d8d85c6c126c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe Technologies.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe Technologies.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -21,20 +21,17 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 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;
 
 /**
  * Unit test for {@link PipelineOrchestratorImplTest}
  */
-@PrepareForTest(ServiceHelper.class)
-@RunWith(PowerMockRunner.class)
+@RunWith(MockitoJUnitRunner.class)
 public class PipelineOrchestratorImplTest {
     @InjectMocks private PipelineOrchestratorImpl orchestrator;
 
@@ -122,9 +119,8 @@ public class PipelineOrchestratorImplTest {
       NodeCacheManager nodeCacheManager = mock(NodeCacheManager.class);
       Southbound southbound = mock(Southbound.class);
 
-      PowerMockito.mockStatic(ServiceHelper.class);
-      PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, orchestrator)).thenReturn(nodeCacheManager);
-      PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, orchestrator)).thenReturn(southbound);
+      ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
+      ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
       orchestrator.setDependencies(mock(BundleContext.class), mock(ServiceReference.class));
 
index 6581b741f9c846545e8ec6f8fbed8a923c626729..065ba94aa9d0037854d85745e0368f3d43b8a3d2 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!-- vi: set et smarttab sw=4 tabstop=4: -->
 <!--
-Copyright © 2015 Red Hat, Inc. and others. All rights reserved.
+Copyright © 2015, 2016 Red Hat, Inc. and others. All rights reserved.
 
 This program and the accompanying materials are made available under the
 terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -26,7 +26,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
   <properties>
     <openflowplugin.version>0.3.0-SNAPSHOT</openflowplugin.version>
-    <powermock.version>1.6.4</powermock.version>
     <sfc.version>0.3.0-SNAPSHOT</sfc.version>
     <sonar.jacoco.itReportPath>../it/target/jacoco-it.exec</sonar.jacoco.itReportPath>
   </properties>
@@ -138,24 +137,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <version>1.10.19</version>
       <scope>test</scope>
     </dependency>
-    <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-core</artifactId>
-      <version>${powermock.version}</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-module-junit4</artifactId>
-      <version>${powermock.version}</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.powermock</groupId>
-      <artifactId>powermock-api-mockito</artifactId>
-      <version>${powermock.version}</version>
-      <scope>test</scope>
-    </dependency>
   </dependencies>
 
   <build>
@@ -186,24 +167,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
           </properties>
         </configuration>
       </plugin>
-      <plugin>
-        <groupId>org.jacoco</groupId>
-        <artifactId>jacoco-maven-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>default-instrument</id>
-            <goals>
-              <goal>instrument</goal>
-            </goals>
-          </execution>
-          <execution>
-            <id>default-restore-instrumented-classes</id>
-            <goals>
-              <goal>restore-instrumented-classes</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
     </plugins>
   </build>
 </project>
index ecc9c11f116fe42a1906e6762f2e8811fadcedac..fc3f37f23a73e9bdff7d2dde56c62f8fb96c3bfb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright © 2015 Red Hat, Inc. and others.  All rights reserved.
+ * Copyright © 2015, 2016 Red Hat, Inc. and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -8,39 +8,34 @@
 
 package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.netvirt.sfc.rev141210;
 
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
 import java.util.Dictionary;
+
+import javax.management.ObjectName;
+
 import org.junit.Test;
-import org.junit.runner.RunWith;
 import org.opendaylight.controller.config.api.DependencyResolver;
 import org.opendaylight.controller.config.api.JmxAttribute;
 import org.opendaylight.controller.config.api.ModuleIdentifier;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
+import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.openstack.netvirt.providers.openflow13.AbstractServiceInstance;
 import org.opendaylight.ovsdb.openstack.netvirt.providers.openflow13.PipelineOrchestrator;
 import org.opendaylight.ovsdb.openstack.netvirt.sfc.NetvirtSfcProvider;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-
-import javax.management.ObjectName;
 import org.opendaylight.ovsdb.openstack.netvirt.sfc.standalone.openflow13.services.SfcClassifierService;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceReference;
 import org.osgi.framework.ServiceRegistration;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
 
-@PrepareForTest(ServiceHelper.class)
-@RunWith(PowerMockRunner.class)
 public class NetvirtSfcModuleTest {
     @Test
     public void testCustomValidation() {
@@ -66,12 +61,9 @@ public class NetvirtSfcModuleTest {
         NetvirtSfcModule module = new NetvirtSfcModule(mock(ModuleIdentifier.class), dependencyResolver);
         // getInstance calls resolveInstance to get the broker dependency and then calls createInstance
         BundleContext bundleContext = mock(BundleContext.class);
-        PowerMockito.mockStatic(ServiceHelper.class);
         PipelineOrchestrator pipelineOrchestrator = mock(PipelineOrchestrator.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(eq(PipelineOrchestrator.class), any(AbstractServiceInstance.class)))
-                .thenReturn(pipelineOrchestrator);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(eq(Southbound.class), any(AbstractServiceInstance.class)))
-                .thenReturn(mock(Southbound.class));
+        ServiceHelper.overrideGlobalInstance(PipelineOrchestrator.class, pipelineOrchestrator);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, mock(Southbound.class));
 
         doNothing().when(pipelineOrchestrator).registerService(any(ServiceReference.class),
                 any(AbstractServiceInstance.class));
index 9640e603d0881896952e83739e4eb8967af05061..de1e97e33203c49dec0d72a4d4a973cc1c8efe07 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -22,22 +22,19 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFirewall;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFirewallPolicy;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFirewallRule;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 
 /**
  * Unit test for {@link FWaasHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class FWaasHandlerTest {
 
     @InjectMocks FWaasHandler fwaasHandler;
@@ -147,8 +144,7 @@ public class FWaasHandlerTest {
     public void testSetDependencies() {
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, fwaasHandler)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         fwaasHandler.setDependencies(mock(ServiceReference.class));
 
index cbfeed386e6c5f625baa50ee3f79ea3e4ac73473..1146be5a25d41e2a1b7e5db24def2ad7480c8531 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -21,21 +21,18 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFloatingIP;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link FloatingIPHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class FloatingIPHandlerTest {
 
     @InjectMocks FloatingIPHandler floatingHandler;
@@ -80,14 +77,13 @@ public class FloatingIPHandlerTest {
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
         NeutronL3Adapter neutronL3Adapter = mock(NeutronL3Adapter.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, floatingHandler)).thenReturn(eventDispatcher);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NeutronL3Adapter.class, floatingHandler)).thenReturn(neutronL3Adapter);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(NeutronL3Adapter.class, neutronL3Adapter);
 
         floatingHandler.setDependencies(mock(ServiceReference.class));
 
-        assertEquals("Error, did not return the correct object", floatingHandler.eventDispatcher, eventDispatcher);
-        assertEquals("Error, did not return the correct object", getNeutronL3Adapter(), neutronL3Adapter);
+        assertEquals("Error, did not return the correct object", eventDispatcher, floatingHandler.eventDispatcher);
+        assertEquals("Error, did not return the correct object", neutronL3Adapter, getNeutronL3Adapter());
     }
 
     private NeutronL3Adapter getNeutronL3Adapter() throws Exception {
index 806231e004bd33b3698199247a03579f43322b90..e4294652e2bd8c18d28539409dc07ea2d2542f85 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -11,7 +11,6 @@ package org.opendaylight.ovsdb.openstack.netvirt;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyString;
 import static org.mockito.Matchers.same;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.times;
@@ -21,6 +20,7 @@ import static org.mockito.Mockito.when;
 import java.lang.reflect.Field;
 import java.net.HttpURLConnection;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
@@ -31,33 +31,34 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
+import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration.LoadBalancerPoolMember;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerProvider;
+import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancer;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancerPool;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancerPoolMember;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSubnet;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronLoadBalancerCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronLoadBalancerPoolCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronSubnetCRUD;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration.LoadBalancerPoolMember;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 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.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link LBaaSHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest({NeutronCacheUtils.class, ServiceHelper.class})
+@RunWith(MockitoJUnitRunner.class)
 public class LBaaSHandlerTest {
 
     @InjectMocks private LBaaSHandler lbaasHandler;
@@ -68,6 +69,9 @@ public class LBaaSHandlerTest {
     @Mock private LoadBalancerProvider loadBalancerProvider;
     @Mock private NodeCacheManager nodeCacheManager;
     @Mock private NeutronLoadBalancer neutronLB;
+    @Mock private INeutronSubnetCRUD neutronSubnetCache;
+    @Mock private INeutronNetworkCRUD neutronNetworkCache;
+    @Mock private INeutronPortCRUD neutronPortCache;
 
     @Before
     public void setUp(){
@@ -92,9 +96,43 @@ public class LBaaSHandlerTest {
         when(providerInfo.getKey()).thenReturn("key");
         when(providerInfo.getValue()).thenReturn("value");
 
-        PowerMockito.mockStatic(NeutronCacheUtils.class);
-        when(NeutronCacheUtils.getProviderInformation(any(INeutronNetworkCRUD.class), any(INeutronSubnetCRUD.class), anyString())).thenReturn(providerInfo);
-        when(NeutronCacheUtils.getMacAddress(any(INeutronPortCRUD.class), anyString(), anyString())).thenReturn("mac_address");
+        lbaasHandler.setDependencies(neutronPortCache);
+        final NeutronPort neutronPort = new NeutronPort();
+        final Neutron_IPs neutronIP1 = new Neutron_IPs();
+        neutronIP1.setSubnetUUID("pool_member_subnetID");
+        neutronIP1.setIpAddress("pool_member_address");
+        final Neutron_IPs neutronIP2 = new Neutron_IPs();
+        neutronIP2.setSubnetUUID("subnetID");
+        neutronIP2.setIpAddress("vip_address");
+        final Neutron_IPs neutronIP3 = new Neutron_IPs();
+        neutronIP3.setSubnetUUID("subnetID");
+        neutronIP3.setIpAddress("pool_member_address");
+        final List<Neutron_IPs> neutronIPs = new ArrayList<>();
+        neutronIPs.add(neutronIP1);
+        neutronIPs.add(neutronIP2);
+        neutronIPs.add(neutronIP3);
+        neutronPort.setFixedIPs(neutronIPs);
+        neutronPort.setMacAddress("mac_address");
+        when(neutronPortCache.getAllPorts()).thenReturn(Collections.singletonList(neutronPort));
+
+        lbaasHandler.setDependencies(neutronSubnetCache);
+        final NeutronSubnet neutronSubnet1 = new NeutronSubnet();
+        neutronSubnet1.setID("pool_member_subnetID");
+        neutronSubnet1.setNetworkUUID("pool_member_networkUUID");
+        final NeutronSubnet neutronSubnet2 = new NeutronSubnet();
+        neutronSubnet2.setID("subnetID");
+        neutronSubnet2.setNetworkUUID("pool_member_networkUUID");
+        List<NeutronSubnet> neutronSubnets = new ArrayList<>();
+        neutronSubnets.add(neutronSubnet1);
+        neutronSubnets.add(neutronSubnet2);
+        when(neutronSubnetCache.getAllSubnets()).thenReturn(neutronSubnets);
+
+        lbaasHandler.setDependencies(neutronNetworkCache);
+        final NeutronNetwork neutronNetwork = new NeutronNetwork();
+        neutronNetwork.setNetworkUUID("pool_member_networkUUID");
+        neutronNetwork.setProviderNetworkType("key");
+        neutronNetwork.setProviderSegmentationID("value");
+        when(neutronNetworkCache.getAllNetworks()).thenReturn(Collections.singletonList(neutronNetwork));
 
         when(neutronLBPoolMember.getPoolMemberAdminStateIsUp()).thenReturn(true);
         when(neutronLBPoolMember.getPoolMemberSubnetID()).thenReturn("subnetID");
@@ -117,17 +155,17 @@ public class LBaaSHandlerTest {
 
     @Test
     public void testCanCreateNeutronLoadBalancer(){
-        assertEquals("Error, canCreateNeutronLoadBalancer() did not return the correct value ", HttpURLConnection.HTTP_OK, lbaasHandler.canCreateNeutronLoadBalancer(any(NeutronLoadBalancer.class)));
+        assertEquals("Error, canCreateNeutronLoadBalancer() did not return the correct value ", HttpURLConnection.HTTP_OK, lbaasHandler.canCreateNeutronLoadBalancer(null));
     }
 
     @Test
     public void testCanUpdateNeutronLoadBalancer(){
-        assertEquals("Error, canUpdateNeutronLoadBalancer() did not return the correct value ", HttpURLConnection.HTTP_OK, lbaasHandler.canUpdateNeutronLoadBalancer(any(NeutronLoadBalancer.class), any(NeutronLoadBalancer.class)));
+        assertEquals("Error, canUpdateNeutronLoadBalancer() did not return the correct value ", HttpURLConnection.HTTP_OK, lbaasHandler.canUpdateNeutronLoadBalancer(null, null));
     }
 
     @Test
     public void testCanDeleteNeutronLoadBalancer(){
-        assertEquals("Error, canDeleteNeutronLoadBalancer() did not return the correct value ", HttpURLConnection.HTTP_OK, lbaasHandler.canDeleteNeutronLoadBalancer(any(NeutronLoadBalancer.class)));
+        assertEquals("Error, canDeleteNeutronLoadBalancer() did not return the correct value ", HttpURLConnection.HTTP_OK, lbaasHandler.canDeleteNeutronLoadBalancer(null));
     }
 
     /**
@@ -196,10 +234,9 @@ public class LBaaSHandlerTest {
         LoadBalancerProvider loadBalancerProvider = mock(LoadBalancerProvider.class);
         NodeCacheManager nodeCacheManager = mock(NodeCacheManager.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, lbaasHandler)).thenReturn(eventDispatcher);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(LoadBalancerProvider.class, lbaasHandler)).thenReturn(loadBalancerProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, lbaasHandler)).thenReturn(nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(LoadBalancerProvider.class, loadBalancerProvider);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
 
         lbaasHandler.setDependencies(mock(ServiceReference.class));
 
index 35317e0d443317a7318c50b3c7240308f2239794..f315a23cfb6aa991f68c891213bf03296241fbee 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -9,9 +9,9 @@
 package org.opendaylight.ovsdb.openstack.netvirt;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
@@ -20,9 +20,8 @@ import static org.mockito.Mockito.when;
 import java.lang.reflect.Field;
 import java.net.HttpURLConnection;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -30,33 +29,34 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
+import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration.LoadBalancerPoolMember;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerProvider;
+import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancer;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancerPool;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancerPoolMember;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSubnet;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronLoadBalancerCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronLoadBalancerPoolCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronSubnetCRUD;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration.LoadBalancerPoolMember;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 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.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link LBaaSPoolMemberHandler}
  */
-@PrepareForTest({NeutronCacheUtils.class, ServiceHelper.class})
-@RunWith(PowerMockRunner.class)
+@RunWith(MockitoJUnitRunner.class)
 public class LBaaSPoolHandlerTest {
 
     @InjectMocks LBaaSPoolHandler lBaaSPoolHandler;
@@ -67,11 +67,52 @@ public class LBaaSPoolHandlerTest {
     @Mock private NodeCacheManager nodeCacheManager;
 
     @Mock private NeutronLoadBalancerPool neutronLBPool;
+    @Mock private INeutronSubnetCRUD neutronSubnetCache;
+    @Mock private INeutronNetworkCRUD neutronNetworkCache;
+    @Mock private INeutronPortCRUD neutronPortCache;
 
     @Before
     public void setUp() {
         when(neutronLBPool.getLoadBalancerPoolProtocol()).thenReturn(LoadBalancerConfiguration.PROTOCOL_HTTP);
 
+        lBaaSPoolHandler.setDependencies(neutronPortCache);
+        final NeutronPort neutronPort = new NeutronPort();
+        final Neutron_IPs neutronIP1 = new Neutron_IPs();
+        neutronIP1.setSubnetUUID("pool_member_subnetID");
+        neutronIP1.setIpAddress("pool_member_address");
+        final Neutron_IPs neutronIP2 = new Neutron_IPs();
+        neutronIP2.setSubnetUUID("subnetID");
+        neutronIP2.setIpAddress("vip_address");
+        final Neutron_IPs neutronIP3 = new Neutron_IPs();
+        neutronIP3.setSubnetUUID("subnetID");
+        neutronIP3.setIpAddress("pool_member_address");
+        final List<Neutron_IPs> neutronIPs = new ArrayList<>();
+        neutronIPs.add(neutronIP1);
+        neutronIPs.add(neutronIP2);
+        neutronIPs.add(neutronIP3);
+        neutronPort.setFixedIPs(neutronIPs);
+        neutronPort.setMacAddress("mac_address");
+        when(neutronPortCache.getAllPorts()).thenReturn(Collections.singletonList(neutronPort));
+
+        lBaaSPoolHandler.setDependencies(neutronSubnetCache);
+        final NeutronSubnet neutronSubnet1 = new NeutronSubnet();
+        neutronSubnet1.setID("pool_member_subnetID");
+        neutronSubnet1.setNetworkUUID("pool_member_networkUUID");
+        final NeutronSubnet neutronSubnet2 = new NeutronSubnet();
+        neutronSubnet2.setID("subnetID");
+        neutronSubnet2.setNetworkUUID("pool_member_networkUUID");
+        List<NeutronSubnet> neutronSubnets = new ArrayList<>();
+        neutronSubnets.add(neutronSubnet1);
+        neutronSubnets.add(neutronSubnet2);
+        when(neutronSubnetCache.getAllSubnets()).thenReturn(neutronSubnets);
+
+        lBaaSPoolHandler.setDependencies(neutronNetworkCache);
+        final NeutronNetwork neutronNetwork = new NeutronNetwork();
+        neutronNetwork.setNetworkUUID("pool_member_networkUUID");
+        neutronNetwork.setProviderNetworkType("key");
+        neutronNetwork.setProviderSegmentationID("value");
+        when(neutronNetworkCache.getAllNetworks()).thenReturn(Collections.singletonList(neutronNetwork));
+
         List<NeutronLoadBalancerPoolMember> members = new ArrayList<>();
         NeutronLoadBalancerPoolMember neutronLBPoolMember = mock(NeutronLoadBalancerPoolMember.class);
         when(neutronLBPoolMember.getPoolMemberAdminStateIsUp()).thenReturn(true);
@@ -89,14 +130,6 @@ public class LBaaSPoolHandlerTest {
         when(neutronLB.getLoadBalancerVipSubnetID()).thenReturn("subnetID");
         list_neutronLB.add(neutronLB);
         when(neutronLBCache.getAllNeutronLoadBalancers()).thenReturn(list_neutronLB);
-
-        Map.Entry<String,String> providerInfo = mock(Entry.class);
-        when(providerInfo.getKey()).thenReturn("key");
-        when(providerInfo.getValue()).thenReturn("value");
-
-        PowerMockito.mockStatic(NeutronCacheUtils.class);
-        when(NeutronCacheUtils.getMacAddress(any(INeutronPortCRUD.class), anyString(), anyString())).thenReturn("mac_address");
-        when(NeutronCacheUtils.getProviderInformation(any(INeutronNetworkCRUD.class), any(INeutronSubnetCRUD.class), anyString())).thenReturn(providerInfo);
     }
 
     /**
@@ -169,6 +202,7 @@ public class LBaaSPoolHandlerTest {
     @Test
     public void testExtractLBConfiguration() {
         List<LoadBalancerConfiguration> list_lbConfig = lBaaSPoolHandler.extractLBConfiguration(neutronLBPool);
+        assertFalse(list_lbConfig.isEmpty());
         LoadBalancerConfiguration lbConfig = list_lbConfig.get(0);
 
         verify(neutronLBCache, times(1)).getAllNeutronLoadBalancers();
@@ -192,10 +226,9 @@ public class LBaaSPoolHandlerTest {
         LoadBalancerProvider loadBalancerProvider = mock(LoadBalancerProvider.class);
         NodeCacheManager nodeCacheManager = mock(NodeCacheManager.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, lBaaSPoolHandler)).thenReturn(eventDispatcher);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(LoadBalancerProvider.class, lBaaSPoolHandler)).thenReturn(loadBalancerProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, lBaaSPoolHandler)).thenReturn(nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(LoadBalancerProvider.class, loadBalancerProvider);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
 
         lBaaSPoolHandler.setDependencies(mock(ServiceReference.class));
 
index ee02019085076b70016da10c46722e8f2cbfa397..22837d9ce2a29230f0dd9301f0e7a8c96fdf1884 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -20,9 +20,8 @@ import static org.mockito.Mockito.when;
 import java.lang.reflect.Field;
 import java.net.HttpURLConnection;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
 
 import org.junit.Before;
 import org.junit.Test;
@@ -30,33 +29,34 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
+import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration.LoadBalancerPoolMember;
+import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerProvider;
+import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancer;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancerPool;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronLoadBalancerPoolMember;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSubnet;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronLoadBalancerCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronLoadBalancerPoolCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronSubnetCRUD;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerConfiguration.LoadBalancerPoolMember;
-import org.opendaylight.ovsdb.openstack.netvirt.api.LoadBalancerProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 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.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link LBaaSPoolMemberHandler}
  */
-@PrepareForTest({NeutronCacheUtils.class, ServiceHelper.class})
-@RunWith(PowerMockRunner.class)
+@RunWith(MockitoJUnitRunner.class)
 public class LBaaSPoolMemberHandlerTest {
 
     @InjectMocks LBaaSPoolMemberHandler lBaaSPoolMemberHandler;
@@ -65,46 +65,67 @@ public class LBaaSPoolMemberHandlerTest {
     @Mock private INeutronLoadBalancerCRUD neutronLBCache;
     @Mock private LoadBalancerProvider loadBalancerProvider;
     @Mock private NodeCacheManager nodeCacheManager;
+    @Mock private INeutronPortCRUD neutronPortCache;
+    @Mock private INeutronNetworkCRUD neutronNetworkCache;
+    @Mock private INeutronSubnetCRUD neutronSubnetCache;
 
     private NeutronLoadBalancerPoolMember neutronLBMember;
 
     @Before
     public void setUp() {
-        neutronLBMember = mock(NeutronLoadBalancerPoolMember.class);
-        when(neutronLBMember.getID()).thenReturn("pool_memberID");
-        when(neutronLBMember.getPoolMemberAddress()).thenReturn("pool_member_address");
-        when(neutronLBMember.getPoolMemberSubnetID()).thenReturn("pool_member_subnetID");
-        when(neutronLBMember.getPoolMemberProtoPort()).thenReturn(1);
-        when(neutronLBMember.getPoolID()).thenReturn("poolID");
-
-        Map.Entry<String,String> providerInfo = mock(Entry.class);
-        when(providerInfo.getKey()).thenReturn("key");
-        when(providerInfo.getValue()).thenReturn("value");
-
-        PowerMockito.mockStatic(NeutronCacheUtils.class);
-        when(NeutronCacheUtils.getMacAddress(any(INeutronPortCRUD.class), anyString(), anyString())).thenReturn("mac_address");
-        when(NeutronCacheUtils.getProviderInformation(any(INeutronNetworkCRUD.class), any(INeutronSubnetCRUD.class), anyString())).thenReturn(providerInfo);
+        neutronLBMember = new NeutronLoadBalancerPoolMember();
+        neutronLBMember.setID("pool_memberID");
+        neutronLBMember.setPoolMemberAddress("pool_member_address");
+        neutronLBMember.setPoolMemberSubnetID("pool_member_subnetID");
+        neutronLBMember.setPoolMemberProtoPort(1);
+        neutronLBMember.setPoolID("poolID");
+
+        lBaaSPoolMemberHandler.setDependencies(neutronPortCache);
+        final NeutronPort neutronPort = new NeutronPort();
+        final Neutron_IPs neutronIP1 = new Neutron_IPs();
+        neutronIP1.setSubnetUUID("pool_member_subnetID");
+        neutronIP1.setIpAddress("pool_member_address");
+        final Neutron_IPs neutronIP2 = new Neutron_IPs();
+        neutronIP2.setSubnetUUID("pool_member_subnetID");
+        neutronIP2.setIpAddress("vip_address");
+        final List<Neutron_IPs> neutronIPs = new ArrayList<>();
+        neutronIPs.add(neutronIP1);
+        neutronIPs.add(neutronIP2);
+        neutronPort.setFixedIPs(neutronIPs);
+        neutronPort.setMacAddress("mac_address");
+        when(neutronPortCache.getAllPorts()).thenReturn(Collections.singletonList(neutronPort));
+
+        lBaaSPoolMemberHandler.setDependencies(neutronSubnetCache);
+        final NeutronSubnet neutronSubnet = new NeutronSubnet();
+        neutronSubnet.setID("pool_member_subnetID");
+        neutronSubnet.setNetworkUUID("pool_member_networkUUID");
+        when(neutronSubnetCache.getAllSubnets()).thenReturn(Collections.singletonList(neutronSubnet));
+
+        lBaaSPoolMemberHandler.setDependencies(neutronNetworkCache);
+        final NeutronNetwork neutronNetwork = new NeutronNetwork();
+        neutronNetwork.setNetworkUUID("pool_member_networkUUID");
+        neutronNetwork.setProviderNetworkType("key");
+        neutronNetwork.setProviderSegmentationID("value");
+        when(neutronNetworkCache.getAllNetworks()).thenReturn(Collections.singletonList(neutronNetwork));
 
         List<NeutronLoadBalancerPoolMember> members = new ArrayList<>();
-        NeutronLoadBalancerPoolMember neutronLBPoolMember = mock(NeutronLoadBalancerPoolMember.class);
-        when(neutronLBPoolMember.getPoolMemberAdminStateIsUp()).thenReturn(true);
-        when(neutronLBPoolMember.getPoolMemberSubnetID()).thenReturn("subnetID");
-        when(neutronLBPoolMember.getID()).thenReturn("pool_memberID1");
-        when(neutronLBPoolMember.getPoolMemberProtoPort()).thenReturn(1);
+        NeutronLoadBalancerPoolMember neutronLBPoolMember = new NeutronLoadBalancerPoolMember();
+        neutronLBPoolMember.setPoolMemberAdminStateIsUp(true);
+        neutronLBPoolMember.setPoolMemberSubnetID("pool_member_subnetID");
+        neutronLBPoolMember.setID("pool_memberID1");
+        neutronLBPoolMember.setPoolMemberProtoPort(1);
         members.add(neutronLBPoolMember);
 
-        NeutronLoadBalancerPool neutronLBPool = mock(NeutronLoadBalancerPool.class);
-        when(neutronLBPool.getLoadBalancerPoolProtocol()).thenReturn(LoadBalancerConfiguration.PROTOCOL_TCP);
-        when(neutronLBPool.getLoadBalancerPoolMembers()).thenReturn(members);
+        NeutronLoadBalancerPool neutronLBPool = new NeutronLoadBalancerPool();
+        neutronLBPool.setLoadBalancerPoolProtocol(LoadBalancerConfiguration.PROTOCOL_TCP);
+        neutronLBPool.setLoadBalancerPoolMembers(members);
         when(neutronLBPoolCache.getNeutronLoadBalancerPool(anyString())).thenReturn(neutronLBPool);
 
-        List<NeutronLoadBalancer> list_neutronLB = new ArrayList<>();
-        NeutronLoadBalancer neutronLB = mock(NeutronLoadBalancer.class);
-        when(neutronLB.getLoadBalancerName()).thenReturn("load_balancer_name");
-        when(neutronLB.getLoadBalancerVipAddress()).thenReturn("vip_address");
-        when(neutronLB.getLoadBalancerVipSubnetID()).thenReturn("subnetID");
-        list_neutronLB.add(neutronLB);
-        when(neutronLBCache.getAllNeutronLoadBalancers()).thenReturn(list_neutronLB);
+        NeutronLoadBalancer neutronLB = new NeutronLoadBalancer();
+        neutronLB.setLoadBalancerName("load_balancer_name");
+        neutronLB.setLoadBalancerVipAddress("vip_address");
+        neutronLB.setLoadBalancerVipSubnetID("pool_member_subnetID");
+        when(neutronLBCache.getAllNeutronLoadBalancers()).thenReturn(Collections.singletonList(neutronLB));
     }
 
     /**
@@ -112,20 +133,16 @@ public class LBaaSPoolMemberHandlerTest {
      */
     @Test
     public void testCanCreateNeutronLoadBalancerPoolMember() {
-        when(neutronLBMember.getPoolID())
-                                    .thenReturn(null)  // to test HTTP_BAD_REQUEST
-                                    .thenReturn("poolID"); // to test HTTP_OK
-
-        Map.Entry<String,String> providerInfo = mock(Entry.class);
-        when(providerInfo.getKey()).thenReturn("key");
-        when(providerInfo.getValue()).thenReturn("value");
-        when(NeutronCacheUtils.getProviderInformation(any(INeutronNetworkCRUD.class), any(INeutronSubnetCRUD.class), anyString()))
-                                    .thenReturn(providerInfo)
-                                    .thenReturn(null); // to test HTTP_NOT_ACCEPTABLE
-
-
+        // HTTP_BAD_REQUEST
+        neutronLBMember.setPoolID(null);
         assertEquals("Error, canCreateNeutronLoadBalancerPoolMember() didn't return the correct HTTP flag", HttpURLConnection.HTTP_BAD_REQUEST, lBaaSPoolMemberHandler.canCreateNeutronLoadBalancerPoolMember(neutronLBMember));
+
+        // HTTP_OK
+        neutronLBMember.setPoolID("poolID");
         assertEquals("Error, canCreateNeutronLoadBalancerPoolMember() didn't return the correct HTTP flag", HttpURLConnection.HTTP_OK, lBaaSPoolMemberHandler.canCreateNeutronLoadBalancerPoolMember(neutronLBMember));
+
+        // HTTP_NOT_ACCEPTABLE
+        when(neutronNetworkCache.getAllNetworks()).thenReturn(Collections.<NeutronNetwork>emptyList());
         assertEquals("Error, canCreateNeutronLoadBalancerPoolMember() didn't return the correct HTTP flag", HttpURLConnection.HTTP_NOT_ACCEPTABLE, lBaaSPoolMemberHandler.canCreateNeutronLoadBalancerPoolMember(neutronLBMember));
     }
 
@@ -134,7 +151,7 @@ public class LBaaSPoolMemberHandlerTest {
      */
     @Test
     public void testCanUpdateNeutronLoadBalancerPoolMember() {
-        assertEquals("Error, did not return the correct HTTP flag", HttpURLConnection.HTTP_NOT_IMPLEMENTED, lBaaSPoolMemberHandler.canUpdateNeutronLoadBalancerPoolMember(any(NeutronLoadBalancerPoolMember.class), any(NeutronLoadBalancerPoolMember.class)));
+        assertEquals("Error, did not return the correct HTTP flag", HttpURLConnection.HTTP_NOT_IMPLEMENTED, lBaaSPoolMemberHandler.canUpdateNeutronLoadBalancerPoolMember(null, null));
     }
 
     /**
@@ -142,20 +159,16 @@ public class LBaaSPoolMemberHandlerTest {
      */
     @Test
     public void testCanDeleteNeutronLoadBalancerPoolMember() {
-        when(neutronLBMember.getPoolID())
-                                    .thenReturn(null)  // to test HTTP_BAD_REQUEST
-                                    .thenReturn("poolID"); // to test HTTP_OK
-
-        Map.Entry<String,String> providerInfo = mock(Entry.class);
-        when(providerInfo.getKey()).thenReturn("key");
-        when(providerInfo.getValue()).thenReturn("value");
-        when(NeutronCacheUtils.getProviderInformation(any(INeutronNetworkCRUD.class), any(INeutronSubnetCRUD.class), anyString()))
-                                    .thenReturn(providerInfo)
-                                    .thenReturn(null); // to test HTTP_NOT_ACCEPTABLE
-
-
+        // HTTP_BAD_REQUEST
+        neutronLBMember.setPoolID(null);
         assertEquals("Error, canDeleteNeutronLoadBalancerPoolMember() didn't return the correct HTTP flag", HttpURLConnection.HTTP_BAD_REQUEST, lBaaSPoolMemberHandler.canDeleteNeutronLoadBalancerPoolMember(neutronLBMember));
+
+        // HTTP_OK
+        neutronLBMember.setPoolID("poolID");
         assertEquals("Error, canDeleteNeutronLoadBalancerPoolMember() didn't return the correct HTTP flag", HttpURLConnection.HTTP_OK, lBaaSPoolMemberHandler.canDeleteNeutronLoadBalancerPoolMember(neutronLBMember));
+
+        // HTTP_NOT_ACCEPTABLE
+        when(neutronNetworkCache.getAllNetworks()).thenReturn(Collections.<NeutronNetwork>emptyList());
         assertEquals("Error, canDeleteNeutronLoadBalancerPoolMember() didn't return the correct HTTP flag", HttpURLConnection.HTTP_NOT_ACCEPTABLE, lBaaSPoolMemberHandler.canDeleteNeutronLoadBalancerPoolMember(neutronLBMember));
     }
 
@@ -193,9 +206,6 @@ public class LBaaSPoolMemberHandlerTest {
     public void testExtractLBConfiguration() {
         LoadBalancerConfiguration lbConfig = lBaaSPoolMemberHandler.extractLBConfiguration(neutronLBMember);
 
-        verify(neutronLBPoolCache, times(1)).getNeutronLoadBalancerPool(anyString());
-        verify(neutronLBCache, times(1)).getAllNeutronLoadBalancers();
-
         // make sure the load balancer configuration was correctly populated
         assertEquals("Error, did not return the correct value",  "key", lbConfig.getProviderNetworkType());
         assertEquals("Error, did not return the correct value",  "value", lbConfig.getProviderSegmentationId());
@@ -215,10 +225,9 @@ public class LBaaSPoolMemberHandlerTest {
         LoadBalancerProvider loadBalancerProvider = mock(LoadBalancerProvider.class);
         NodeCacheManager nodeCacheManager = mock(NodeCacheManager.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, lBaaSPoolMemberHandler)).thenReturn(eventDispatcher);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(LoadBalancerProvider.class, lBaaSPoolMemberHandler)).thenReturn(loadBalancerProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, lBaaSPoolMemberHandler)).thenReturn(nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(LoadBalancerProvider.class, loadBalancerProvider);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
 
         lBaaSPoolMemberHandler.setDependencies(mock(ServiceReference.class));
 
index 455bee9cd1426a55744066b79491acc3d0d90fcf..36d7af71a82b9c334a96334aa014ae6cb0a7047a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -28,8 +28,7 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
 import org.opendaylight.ovsdb.openstack.netvirt.api.BridgeConfigurationManager;
 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
@@ -37,20 +36,19 @@ import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.openstack.netvirt.api.TenantNetworkManager;
 import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105
+        .OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link NetworkHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class NetworkHandlerTest {
 
     @InjectMocks private NetworkHandler networkHandler;
@@ -156,13 +154,12 @@ public class NetworkHandlerTest {
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(TenantNetworkManager.class, networkHandler)).thenReturn(tenantNetworkManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(BridgeConfigurationManager.class, networkHandler)).thenReturn(bridgeConfigurationManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, networkHandler)).thenReturn(nodeCacheManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NeutronL3Adapter.class, networkHandler)).thenReturn(neutronL3Adapter);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, networkHandler)).thenReturn(southbound);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, networkHandler)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(TenantNetworkManager.class, tenantNetworkManager);
+        ServiceHelper.overrideGlobalInstance(BridgeConfigurationManager.class, bridgeConfigurationManager);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(NeutronL3Adapter.class, neutronL3Adapter);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         networkHandler.setDependencies(mock(ServiceReference.class));
 
index fce0462938234e4239008633ecf6560b6a00504f..c8e06af217e28871012827a3ee8a7dc017d148e2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -18,7 +18,6 @@ import java.util.List;
 import java.util.Map;
 
 import org.junit.Test;
-import org.junit.runner.RunWith;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSubnet;
@@ -26,12 +25,10 @@ import org.opendaylight.ovsdb.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronSubnetCRUD;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link NeutronCacheUtils}
  */
-@RunWith(PowerMockRunner.class)
 public class NeutronCacheUtilsTest {
 
     /**
index 6d72ee26a441fe3b32943eb137ef0d2fb5a03ef8..a3126cf4b4333662e63f6fb89f8a1fe4b08511ec 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -26,26 +26,24 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.openstack.netvirt.api.NodeCacheManager;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105
+        .OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test fort {@link PortHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class PortHandlerTest {
 
     @InjectMocks private PortHandler portHandler;
@@ -114,11 +112,10 @@ public class PortHandlerTest {
         Southbound southbound = mock(Southbound.class);
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, portHandler)).thenReturn(nodeCacheManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NeutronL3Adapter.class, portHandler)).thenReturn(neutronL3Adapter);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, portHandler)).thenReturn(southbound);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, portHandler)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(NeutronL3Adapter.class, neutronL3Adapter);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         portHandler.setDependencies(mock(ServiceReference.class));
 
index 660aad36146458a2498a363ee203e5e33890c34f..bb975af41eb30744d96849e064143a66cc8fc7cb 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -23,20 +23,17 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityGroup;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityRule;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test {@link PortSecurityHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class PortSecurityHandlerTest {
 
     @InjectMocks private PortSecurityHandler portSecurityHandler;
@@ -99,8 +96,7 @@ public class PortSecurityHandlerTest {
     public void testSetDependencies() throws Exception {
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, portSecurityHandler)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         portSecurityHandler.setDependencies(mock(ServiceReference.class));
 
index c993984100a1e603c9fa2fc2851e812b6d2a4afa..1e4ce389a9f608b60ea6df4c0e68be8189b92dea 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -21,22 +21,19 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronRouter;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronRouter_Interface;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronRouter;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronRouter_Interface;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test fort {@link RouterHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class RouterHandlerTest {
 
     @InjectMocks RouterHandler routerHandler;
@@ -92,9 +89,8 @@ public class RouterHandlerTest {
         NeutronL3Adapter neutronL3Adapter = mock(NeutronL3Adapter.class);
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NeutronL3Adapter.class, routerHandler)).thenReturn(neutronL3Adapter);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, routerHandler)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(NeutronL3Adapter.class, neutronL3Adapter);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         routerHandler.setDependencies(mock(ServiceReference.class));
 
index bc754725ca67b605dd23c25e020dea75a805a6e0..87414b3e744f1b3442965cc23a20e7467f550d6e 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -25,6 +25,7 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.openstack.netvirt.SouthboundEvent.Type;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
@@ -47,15 +48,11 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test fort {@link SouthboundHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class SouthboundHandlerTest {
 
     @InjectMocks private SouthboundHandler southboundHandler;
@@ -243,16 +240,15 @@ public class SouthboundHandlerTest {
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
         OvsdbInventoryService ovsdbInventoryService = mock(OvsdbInventoryService.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(ConfigurationService.class, southboundHandler)).thenReturn(configurationService);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NetworkingProviderManager.class, southboundHandler)).thenReturn(networkingProviderManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(TenantNetworkManager.class, southboundHandler)).thenReturn(tenantNetworkManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(BridgeConfigurationManager.class, southboundHandler)).thenReturn(bridgeConfigurationManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, southboundHandler)).thenReturn(nodeCacheManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NeutronL3Adapter.class, southboundHandler)).thenReturn(neutronL3Adapter);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, southboundHandler)).thenReturn(southbound);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, southboundHandler)).thenReturn(eventDispatcher);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(OvsdbInventoryService.class, southboundHandler)).thenReturn(ovsdbInventoryService);
+        ServiceHelper.overrideGlobalInstance(ConfigurationService.class, configurationService);
+        ServiceHelper.overrideGlobalInstance(NetworkingProviderManager.class, networkingProviderManager);
+        ServiceHelper.overrideGlobalInstance(TenantNetworkManager.class, tenantNetworkManager);
+        ServiceHelper.overrideGlobalInstance(BridgeConfigurationManager.class, bridgeConfigurationManager);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(NeutronL3Adapter.class, neutronL3Adapter);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(OvsdbInventoryService.class, ovsdbInventoryService);
 
         southboundHandler.setDependencies(mock(ServiceReference.class));
         assertEquals("Error, did not return the correct object", getField("configurationService"), configurationService);
index 10d3c281013d5b129ff43a59beea1cc569f64afe..fe572a26d362b7bbcdbae1f347338b7b6879821c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -21,21 +21,18 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSubnet;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
 import org.opendaylight.ovsdb.openstack.netvirt.impl.NeutronL3Adapter;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSubnet;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test fort {@link SubnetHandler}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class SubnetHandlerTest {
 
     @InjectMocks private SubnetHandler subnetHandler;
@@ -80,9 +77,8 @@ public class SubnetHandlerTest {
         NeutronL3Adapter neutronL3Adapter = mock(NeutronL3Adapter.class);
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NeutronL3Adapter.class, subnetHandler)).thenReturn(neutronL3Adapter);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, subnetHandler)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(NeutronL3Adapter.class, neutronL3Adapter);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         subnetHandler.setDependencies(mock(ServiceReference.class));
 
index c5073c336340f130074a7dbe6f8e2e558b83a1c2..059df943dcb9974f2679e99bd0dc9fd13dec73dd 100644 (file)
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2014 Intel Corp. and others.  All rights reserved.
+* Copyright (c) 2014, 2016 Intel Corp. and others.  All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -20,6 +20,7 @@ import static org.mockito.Mockito.doAnswer;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.reset;
+import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.verifyNoMoreInteractions;
@@ -33,23 +34,21 @@ import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.invocation.InvocationOnMock;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.mockito.stubbing.Answer;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.openstack.netvirt.api.ConfigurationService;
 import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProviderManager;
 import org.opendaylight.ovsdb.openstack.netvirt.api.OvsdbTables;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
-import org.opendaylight.ovsdb.utils.config.ConfigProperties;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.DatapathTypeSystem;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105
+        .OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Test class for BridgeConfigurationManagerImpl
@@ -58,8 +57,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
  * @author Alexis de Talhouet
  * @author Sam Hague (shague@redhat.com)
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest({ServiceHelper.class, ConfigProperties.class})
+@RunWith(MockitoJUnitRunner.class)
 public class BridgeConfigurationManagerImplTest {
     @Mock private Node node;
     @Mock private OvsdbBridgeAugmentation bridge;
@@ -120,7 +118,7 @@ public class BridgeConfigurationManagerImplTest {
                 .thenReturn(bridge);
 
         BridgeConfigurationManagerImpl bridgeConfigurationManagerImplSpy =
-                PowerMockito.spy(new BridgeConfigurationManagerImpl());
+                spy(new BridgeConfigurationManagerImpl());
         doReturn(false).when(bridgeConfigurationManagerImplSpy).isNodeNeutronReady(any(Node.class));
         bridgeConfigurationManagerImplSpy.setConfigurationService(configurationService);
         bridgeConfigurationManagerImplSpy.setSouthbound(southbound);
@@ -192,7 +190,7 @@ public class BridgeConfigurationManagerImplTest {
                 bridgeConfigurationManagerImpl.isNodeVlanReady(node, node, neutronNetwork));
 
         BridgeConfigurationManagerImpl bridgeConfigurationManagerImplSpy =
-                PowerMockito.spy(new BridgeConfigurationManagerImpl());
+                spy(new BridgeConfigurationManagerImpl());
         doReturn(ETH1).when(bridgeConfigurationManagerImplSpy).getPhysicalInterfaceName(any(Node.class), anyString());
         bridgeConfigurationManagerImplSpy.setConfigurationService(configurationService);
         bridgeConfigurationManagerImplSpy.setSouthbound(southbound);
@@ -221,13 +219,15 @@ public class BridgeConfigurationManagerImplTest {
         when(configurationService.getIntegrationBridgeName()).thenReturn(BR_INT);
         when(southbound.isBridgeOnOvsdbNode(any(Node.class), anyString())).thenReturn(false);
 
-        PowerMockito.mockStatic(ConfigProperties.class);
-        when(ConfigProperties.getProperty(any(Class.class), anyString())).thenReturn(ADDRESS);
+        // TODO Figure out the strings
+        //when(ConfigProperties.getProperty(any(Class.class), anyString())).thenReturn(ADDRESS);
 
         when(southbound.addBridge(any(Node.class), anyString(), anyList(), eq(DatapathTypeSystem.class))).thenReturn(true);
         when(configurationService.isL3ForwardingEnabled()).thenReturn(true);
 
         bridgeConfigurationManagerImpl.prepareNode(node);
+
+        // TODO This test doesn't verify anything
     }
 
     @Test
@@ -235,7 +235,7 @@ public class BridgeConfigurationManagerImplTest {
         NeutronNetwork neutronNetworkMock = mock(NeutronNetwork.class, RETURNS_MOCKS);
         String networkTypes[] = {"vlan", "vxlan", "gre"};
         BridgeConfigurationManagerImpl bridgeConfigurationManagerImplSpy =
-                PowerMockito.spy(new BridgeConfigurationManagerImpl());
+                spy(new BridgeConfigurationManagerImpl());
         bridgeConfigurationManagerImplSpy.setConfigurationService(configurationService);
         bridgeConfigurationManagerImplSpy.setSouthbound(southbound);
 
@@ -339,10 +339,9 @@ public class BridgeConfigurationManagerImplTest {
         NetworkingProviderManager networkingProviderManager = mock(NetworkingProviderManager.class);
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(ConfigurationService.class, bridgeConfigurationManagerImpl)).thenReturn(configurationService);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NetworkingProviderManager.class, bridgeConfigurationManagerImpl)).thenReturn(networkingProviderManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, bridgeConfigurationManagerImpl)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(ConfigurationService.class, configurationService);
+        ServiceHelper.overrideGlobalInstance(NetworkingProviderManager.class, networkingProviderManager);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         bridgeConfigurationManagerImpl.setDependencies(mock(ServiceReference.class));
 
index bce39e44c1c3619bfe2f374ae44d1dc7f271d4c4..bc20dc02a8e9e7c057fc1fd47dd9c58e713156d1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -11,7 +11,6 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.anyString;
-import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
@@ -21,24 +20,21 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Constants;
 import org.opendaylight.ovsdb.openstack.netvirt.api.OvsdbTables;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.utils.config.ConfigProperties;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link ConfigurationServiceImpl}
  */
-@PrepareForTest({ConfigProperties.class, ServiceHelper.class})
-@RunWith(PowerMockRunner.class)
+@RunWith(MockitoJUnitRunner.class)
 public class ConfigurationServiceImplTest {
 
     @InjectMocks private ConfigurationServiceImpl configurationServiceImpl;
@@ -65,8 +61,7 @@ public class ConfigurationServiceImplTest {
 
     @Test
     public void testIsL3FowardingEnable() {
-        PowerMockito.mockStatic(ConfigProperties.class);
-        when(ConfigProperties.getProperty(any(Class.class), eq("ovsdb.l3.fwd.enabled"))).thenReturn(IS_FOWARDING_ENABLE);
+        ConfigProperties.overrideProperty("ovsdb.l3.fwd.enabled", IS_FOWARDING_ENABLE);
 
         assertTrue("Error, l3 fowarding should be activated", configurationServiceImpl.isL3ForwardingEnabled());
     }
@@ -78,12 +73,10 @@ public class ConfigurationServiceImplTest {
     public void testGetDefaultGatewayMacAddress(){
         Node node = mock(Node.class);
         NodeId nodeId = mock(NodeId.class);
-        PowerMockito.mockStatic(ConfigProperties.class);
 
         when(node.getNodeId()).thenReturn(nodeId);
         when(nodeId.getValue()).thenReturn("nodeIdValue");
-        PowerMockito.when(ConfigProperties.getProperty(configurationServiceImpl.getClass(),
-                "ovsdb.l3gateway.mac." + node.getNodeId().getValue())).thenReturn("gateway");
+        ConfigProperties.overrideProperty("ovsdb.l3gateway.mac." + node.getNodeId().getValue(), "gateway");
 
         assertEquals("Error, did not return the defaultGatewayMacAddress of the node", "gateway",
                 configurationServiceImpl.getDefaultGatewayMacAddress(node));
@@ -93,8 +86,7 @@ public class ConfigurationServiceImplTest {
     public void testSetDependencies() throws Exception {
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, configurationServiceImpl)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         configurationServiceImpl.setDependencies(mock(ServiceReference.class));
 
index da6b042b55b91bea483f5a3d9a5c37cdb87667e2..4665ea3850873d5fa0bc479a60811cc86fbc363a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -908,17 +908,16 @@ public class NeutronL3AdapterTest {
         NodeCacheManager nodeCacheManager = mock(NodeCacheManager.class);
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, neutronL3Adapter)).thenReturn(eventDispatcher);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(TenantNetworkManager.class, neutronL3Adapter)).thenReturn(tenantNetworkManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(ConfigurationService.class, neutronL3Adapter)).thenReturn(configurationService);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(ArpProvider.class, neutronL3Adapter)).thenReturn(arpProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(InboundNatProvider.class, neutronL3Adapter)).thenReturn(inboundNatProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(OutboundNatProvider.class, neutronL3Adapter)).thenReturn(outboundNatProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(RoutingProvider.class, neutronL3Adapter)).thenReturn(routingProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(L3ForwardingProvider.class, neutronL3Adapter)).thenReturn(l3ForwardingProvider);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, neutronL3Adapter)).thenReturn(nodeCacheManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, neutronL3Adapter)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(TenantNetworkManager.class, tenantNetworkManager);
+        ServiceHelper.overrideGlobalInstance(ConfigurationService.class, configurationService);
+        ServiceHelper.overrideGlobalInstance(ArpProvider.class, arpProvider);
+        ServiceHelper.overrideGlobalInstance(InboundNatProvider.class, inboundNatProvider);
+        ServiceHelper.overrideGlobalInstance(OutboundNatProvider.class, outboundNatProvider);
+        ServiceHelper.overrideGlobalInstance(RoutingProvider.class, routingProvider);
+        ServiceHelper.overrideGlobalInstance(L3ForwardingProvider.class, l3ForwardingProvider);
+        ServiceHelper.overrideGlobalInstance(NodeCacheManager.class, nodeCacheManager);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         neutronL3Adapter.setDependencies(mock(ServiceReference.class));
 
index 45d48bb849a3854addb794002448dadb98d72824..f743ae6213781c413f00df6d0cfef779931aa0a3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -7,6 +7,7 @@
  */
 
 package org.opendaylight.ovsdb.openstack.netvirt.impl;
+
 import static org.junit.Assert.assertEquals;
 import static org.mockito.Matchers.any;
 import static org.mockito.Mockito.mock;
@@ -15,11 +16,13 @@ import static org.mockito.Mockito.when;
 import java.lang.reflect.Field;
 import java.util.Map;
 
+import com.google.common.collect.Maps;
 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.NodeCacheManagerEvent;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Action;
 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
@@ -29,20 +32,14 @@ import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentation;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 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 NodeCacheManagerImpl}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class NodeCacheManagerImplTest {
 
     @InjectMocks private NodeCacheManagerImpl nodeCacheManagerImpl;
@@ -119,9 +116,8 @@ public class NodeCacheManagerImplTest {
         Southbound southbound = mock(Southbound.class);
         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, nodeCacheManagerImpl)).thenReturn(southbound);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, nodeCacheManagerImpl)).thenReturn(eventDispatcher);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
+        ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
 
         nodeCacheManagerImpl.setDependencies(mock(ServiceReference.class));
 
index 54e44a45911a93bddc6488a5bb5d65e9fb88ea3c..1c0d1fc4fed7e0b4c81d74c058f25303a14be4ab 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -15,28 +15,24 @@ import java.lang.reflect.Field;
 import java.util.HashMap;
 import java.util.Map;
 
+import com.google.common.collect.Maps;
 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.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 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}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class ProviderNetworkManagerImplTest {
 
     @InjectMocks private ProviderNetworkManagerImpl providerNetworkManagerImpl;
@@ -82,8 +78,7 @@ public class ProviderNetworkManagerImplTest {
     public void testSetDependencies() throws Exception {
         OvsdbInventoryService ovsdbInventoryService = mock(OvsdbInventoryService.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(OvsdbInventoryService.class, providerNetworkManagerImpl)).thenReturn(ovsdbInventoryService);
+        ServiceHelper.overrideGlobalInstance(OvsdbInventoryService.class, ovsdbInventoryService);
 
         providerNetworkManagerImpl.setDependencies(mock(ServiceReference.class));
 
index eaa25799a9ef7b6eced03063708655864638c0ff..2e8d2aa81bafed7b782e4f6f08c23a774f97cd4c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Hewlett-Packard Enterprise and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Hewlett-Packard Enterprise and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -22,6 +22,7 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.SecurityServicesManager;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityGroup;
@@ -29,15 +30,11 @@ import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityRule;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronSecurityGroupCRUD;
-import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test fort {@link SecurityGroupCacheManagerImpl}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class SecurityGroupCacheManagerImplTest {
 
     @InjectMocks private SecurityGroupCacheManagerImpl securityGroupCacheManagerImpl;
index bd048aa291817188291ab90cb21caaa9ad42db5c..31439ed2e060e71eae6f24b66b628338b02045fe 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -9,7 +9,6 @@ package org.opendaylight.ovsdb.openstack.netvirt.impl;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.anyString;
 import static org.mockito.Matchers.eq;
@@ -27,7 +26,11 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.ConfigurationService;
+import org.opendaylight.ovsdb.openstack.netvirt.api.EgressAclProvider;
+import org.opendaylight.ovsdb.openstack.netvirt.api.IngressAclProvider;
+import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronSecurityGroup;
@@ -37,24 +40,17 @@ import org.opendaylight.ovsdb.openstack.netvirt.translator.Neutron_IPs;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronSubnetCRUD;
-import org.opendaylight.ovsdb.openstack.netvirt.api.ConfigurationService;
-import org.opendaylight.ovsdb.openstack.netvirt.api.EgressAclProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.IngressAclProvider;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105
+        .OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link SecurityServicesImpl}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class SecurityServicesImplTest {
 
     @InjectMocks private SecurityServicesImpl securityServicesImpl;
@@ -577,8 +573,7 @@ public class SecurityServicesImplTest {
     public void testSetDependencies() throws Exception {
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, securityServicesImpl)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         securityServicesImpl.setDependencies(mock(ServiceReference.class));
 
index 6c6df3e47aa6a9e818a4ba377c086ed99e4f3a68..ac1bccc161d37cadb9ef07fe801746f75cc42ef8 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -26,27 +26,25 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProviderManager;
+import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
+import org.opendaylight.ovsdb.openstack.netvirt.api.VlanConfigurationCache;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronPort;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronNetworkCRUD;
 import org.opendaylight.ovsdb.openstack.netvirt.translator.crud.INeutronPortCRUD;
-import org.opendaylight.ovsdb.openstack.netvirt.api.NetworkingProviderManager;
-import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
-import org.opendaylight.ovsdb.openstack.netvirt.api.VlanConfigurationCache;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105
+        .OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link TenantNetworkManagerImpl}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class TenantNetworkManagerImplTest {
 
     @InjectMocks private TenantNetworkManagerImpl tenantNetworkManagerImpl;
@@ -74,7 +72,7 @@ public class TenantNetworkManagerImplTest {
     }
 
     /**
-     * Test method {@link TenantNetworkManagerImpl#reclaimInternalVlan(Node, String, NeutronNetwork)}
+     * Test method {@link TenantNetworkManagerImpl#reclaimInternalVlan(Node, NeutronNetwork)}
      */
     @Test
     public void testReclaimInternalVlan() {
@@ -87,7 +85,7 @@ public class TenantNetworkManagerImplTest {
     }
 
     /**
-     * Test method {@link TenantNetworkManagerImpl#programInternalVlan(Node, String, NeutronNetwork)}
+     * Test method {@link TenantNetworkManagerImpl#programInternalVlan(Node, OvsdbTerminationPointAugmentation, NeutronNetwork)}
      */
     @Test
     public void testProgramInternalVlan(){
@@ -141,7 +139,7 @@ public class TenantNetworkManagerImplTest {
     }
 
     /**
-     * Test method {@link TenantNetworkManagerImpl#getTenantNetwork(Interface)}
+     * Test method {@link TenantNetworkManagerImpl#getTenantNetwork(OvsdbTerminationPointAugmentation)}
      */
     @Test
     public void testGetTenantNetwork() {
@@ -174,9 +172,8 @@ public class TenantNetworkManagerImplTest {
         VlanConfigurationCache vlanConfigurationCache = mock(VlanConfigurationCache.class);
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(VlanConfigurationCache.class, tenantNetworkManagerImpl)).thenReturn(vlanConfigurationCache);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, tenantNetworkManagerImpl)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(VlanConfigurationCache.class, vlanConfigurationCache);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         tenantNetworkManagerImpl.setDependencies(mock(ServiceReference.class));
 
index 6f4695fb80fbbc78106d78380919dd2f061d9fcb..55ac0def6dd23125bb3c6765c711ff8dac3c4d03 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 Inocybe and others.  All rights reserved.
+ * Copyright (c) 2015, 2016 Inocybe and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -21,24 +21,22 @@ import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
-import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
+import org.mockito.runners.MockitoJUnitRunner;
 import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound;
 import org.opendaylight.ovsdb.openstack.netvirt.api.TenantNetworkManager;
+import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronNetwork;
 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.VlanId;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105
+        .OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology
+        .Node;
 import org.osgi.framework.ServiceReference;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 /**
  * Unit test for {@link VlanConfigurationCacheImpl}
  */
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(ServiceHelper.class)
+@RunWith(MockitoJUnitRunner.class)
 public class VlanConfigurationCacheImplTest {
 
     @InjectMocks public VlanConfigurationCacheImpl vlanConfigurationCacheImpl;
@@ -85,9 +83,8 @@ public class VlanConfigurationCacheImplTest {
         TenantNetworkManager tenantNetworkManager = mock(TenantNetworkManager.class);
         Southbound southbound = mock(Southbound.class);
 
-        PowerMockito.mockStatic(ServiceHelper.class);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(TenantNetworkManager.class, vlanConfigurationCacheImpl)).thenReturn(tenantNetworkManager);
-        PowerMockito.when(ServiceHelper.getGlobalInstance(Southbound.class, vlanConfigurationCacheImpl)).thenReturn(southbound);
+        ServiceHelper.overrideGlobalInstance(TenantNetworkManager.class, tenantNetworkManager);
+        ServiceHelper.overrideGlobalInstance(Southbound.class, southbound);
 
         vlanConfigurationCacheImpl.setDependencies(mock(ServiceReference.class));
 
index 7dca618069f385f33fbf288fc78bdeeeada0ddf9..5ed6805ace6717e5f5ae45d6725a24a22d615513 100644 (file)
@@ -1,5 +1,5 @@
-/**
- * Copyright (c) 2015 NEC Corporation and others.  All rights reserved.
+/*
+ * Copyright (c) 2015, 2016 NEC Corporation and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -15,18 +15,13 @@ import static org.junit.Assert.assertTrue;
 
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.eq;
-
-import static org.powermock.api.mockito.PowerMockito.mock;
-import static org.powermock.api.mockito.PowerMockito.when;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
 import java.util.ArrayList;
 import java.util.List;
 
 import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
 
 import com.google.common.base.Optional;
 import com.google.common.util.concurrent.CheckedFuture;
@@ -47,8 +42,6 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 /**
  * Unit test for {@link NeutronFloatingIPInterface}
  */
-@PrepareForTest({NeutronFloatingIPInterface.class})
-@RunWith(PowerMockRunner.class)
 public class NeutronFloatingIPInterfaceTest {
     /**
      * UUID_VALUE used for testing different scenarios.
index 6cdb99283e3a61c8634bfc6a5301fb9cf16a6658..6017cc292478b852b353367abdac7e4dfb92a44f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014, 2015 Red Hat, Inc. and others.  All rights reserved.
+ * Copyright (c) 2014, 2016 Red Hat, Inc. and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
@@ -8,12 +8,17 @@
 
 package org.opendaylight.ovsdb.utils.config;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.FrameworkUtil;
 
 public final class ConfigProperties {
 
+    private static final Map<String, String> OVERRIDES = new HashMap<>();
+
     private ConfigProperties() {
         // empty
     }
@@ -23,7 +28,11 @@ public final class ConfigProperties {
     }
 
     public static String getProperty(Class<?> classParam, final String propertyStr, final String defaultValue) {
-        String value = null;
+        String value = ConfigProperties.OVERRIDES.get(propertyStr);
+        if (value != null) {
+            return value;
+        }
+
         Bundle bundle = FrameworkUtil.getBundle(classParam);
 
         if (bundle != null) {
@@ -35,6 +44,15 @@ public final class ConfigProperties {
         if (value == null) {
             value = System.getProperty(propertyStr, defaultValue);
         }
+
+        if (value == null) {
+            System.err.println("ConfigProperties missing a value for " + propertyStr);
+        }
+
         return value;
     }
+
+    public static void overrideProperty(String property, String value) {
+        ConfigProperties.OVERRIDES.put(property, value);
+    }
 }
index 7fdbfc1f2b85c63c871d5cdbd489e856be8e1200..402a9949388897672dd8e5826a3dd5c87844570d 100644 (file)
@@ -1,18 +1,16 @@
 /*
- * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
+ * Copyright (c) 2013, 2016 Cisco Systems, Inc. and others.  All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-/**
- * @file   ServiceHelper.java
- *
- * @brief  This class verifies {@link ServiceHelper}
- */
 
 package org.opendaylight.ovsdb.utils.servicehelper;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import org.osgi.framework.Bundle;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -25,6 +23,18 @@ import org.osgi.framework.ServiceReference;
  */
 public final class ServiceHelper {
     private static final Logger LOG = LoggerFactory.getLogger(ServiceHelper.class);
+    private static final Map<Class<?>, Object> OVERRIDES = new HashMap<>();
+
+    /**
+     * Override a global instance. This should generally only be used for testing.
+     *
+     * @param clazz The target class.
+     * @param instance The instance to return for the class.
+     */
+    public static <T> void overrideGlobalInstance(Class<T> clazz, T instance) {
+        ServiceHelper.OVERRIDES.put(clazz, instance);
+    }
+
     /**
      * Retrieve global instance of a class via OSGI registry, if
      * there are many only the first is returned.
@@ -47,6 +57,9 @@ public final class ServiceHelper {
      */
     public static Object getGlobalInstance(Class<?> clazz, Object bundle,
                                            String serviceFilter) {
+        if (OVERRIDES.containsKey(clazz)) {
+            return OVERRIDES.get(clazz);
+        }
         Object[] instances = getGlobalInstances(clazz, bundle, serviceFilter);
         if (instances != null && instances.length > 0) {
             return instances[0];
@@ -63,7 +76,7 @@ public final class ServiceHelper {
      * @param bundle The caller
      * @param serviceFilter LDAP filter to be applied in the search
      */
-    public static Object[] getGlobalInstances(Class<?> clazz, Object bundle,
+    private static Object[] getGlobalInstances(Class<?> clazz, Object bundle,
                                               String serviceFilter) {
         Object instances[] = null;
         try {