X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=openstack%2Fnet-virt-providers%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fovsdb%2Fopenstack%2Fnetvirt%2Fproviders%2Fopenflow13%2FAbstractServiceInstanceTest.java;h=bf5bed238397861f365a337443ebe4e0ece7ea3f;hb=6145aa7fe775f136802b18046298c4e3a9a2e2d9;hp=9d9c97f6044f64f578753c29e134e2f32b565c70;hpb=364799145001b5c9012c1ba5d11003dc3305d944;p=netvirt.git diff --git a/openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/AbstractServiceInstanceTest.java b/openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/AbstractServiceInstanceTest.java index 9d9c97f604..bf5bed2383 100644 --- a/openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/AbstractServiceInstanceTest.java +++ b/openstack/net-virt-providers/src/test/java/org/opendaylight/ovsdb/openstack/netvirt/providers/openflow13/AbstractServiceInstanceTest.java @@ -20,6 +20,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import java.lang.reflect.Field; +import java.util.concurrent.atomic.AtomicBoolean; import org.junit.Test; import org.junit.runner.RunWith; @@ -31,8 +32,10 @@ import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction; import org.opendaylight.controller.md.sal.binding.api.WriteTransaction; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException; +import org.opendaylight.ovsdb.openstack.netvirt.NetvirtProvider; import org.opendaylight.ovsdb.openstack.netvirt.api.Constants; import org.opendaylight.ovsdb.openstack.netvirt.api.Southbound; +import org.opendaylight.ovsdb.openstack.netvirt.providers.NetvirtProvidersProvider; import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper; import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow; import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.FlowBuilder; @@ -46,6 +49,7 @@ import org.opendaylight.yangtools.yang.binding.DataObject; 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; import com.google.common.base.Optional; @@ -71,7 +75,7 @@ public class AbstractServiceInstanceTest { private final String NODE_ID = Constants.INTEGRATION_BRIDGE + ":" + ID; /** - * Test method {@link AbstractServiceInstance#isBridgeInPipeline(String)} + * Test method {@link AbstractServiceInstance#isBridgeInPipeline(Node)} */ @Test public void testIsBridgeInPipeline() { @@ -85,7 +89,23 @@ public class AbstractServiceInstanceTest { @Test public void testGetTable() { abstractServiceInstance.setService(service); - assertEquals("Error, getTable() did not return the correct value", 70, abstractServiceInstance.getTable()); + assertEquals("Error, getTable() did not return the correct value", + service.getTable(), abstractServiceInstance.getTable()); + + when(orchestrator.getTableOffset()).thenReturn(Service.DIRECTOR.getTable()); + assertEquals("Error, getTable() did not return the correct value", + (short)(Service.DIRECTOR.getTable() + service.getTable()), abstractServiceInstance.getTable()); + } + + /** + * Test method {@link AbstractServiceInstance@getTable(Service} + */ + @Test + public void testGetTableWithService() { + when(orchestrator.getTableOffset()).thenReturn((short)0); + abstractServiceInstance.setService(service); + assertEquals("Error, getTables(service) did not return the correct value", + Service.L2_FORWARDING.getTable(), abstractServiceInstance.getTable(Service.L2_FORWARDING)); } @Test @@ -140,6 +160,9 @@ public class AbstractServiceInstanceTest { FlowBuilder flowBuilder = mock(FlowBuilder.class); when(flowBuilder.getKey()).thenReturn(mock(FlowKey.class)); + NetvirtProvidersProvider netvirtProvider = mock(NetvirtProvidersProvider.class); + MemberModifier.field(NetvirtProvidersProvider.class, "hasProviderEntityOwnership").set(netvirtProvider, new AtomicBoolean(true)); + abstractServiceInstance.writeFlow(flowBuilder, nodeBuilder); //verify(transaction, times(1)).put(eq(LogicalDatastoreType.CONFIGURATION), any(InstanceIdentifier.class), any(DataObject.class), eq(true)); @@ -163,6 +186,9 @@ public class AbstractServiceInstanceTest { FlowBuilder flowBuilder = mock(FlowBuilder.class); when(flowBuilder.getKey()).thenReturn(mock(FlowKey.class)); + NetvirtProvidersProvider netvirtProvider = mock(NetvirtProvidersProvider.class); + MemberModifier.field(NetvirtProvidersProvider.class, "hasProviderEntityOwnership").set(netvirtProvider, new AtomicBoolean(true)); + abstractServiceInstance.removeFlow(flowBuilder, nodeBuilder); verify(transaction, times(1)).delete(eq(LogicalDatastoreType.CONFIGURATION), any(InstanceIdentifier.class)); verify(commitFuture, times(1)).get(); @@ -193,7 +219,7 @@ public class AbstractServiceInstanceTest { } /** - * Test method {@link AbstractServiceInstance#programDefaultPipelineRule(String)} + * Test method {@link AbstractServiceInstance#programDefaultPipelineRule(Node)} */ @Test public void testProgramDefaultPipelineRule() {