Bug 3738: GBP coexistence with SFC
[groupbasedpolicy.git] / renderers / ofoverlay / src / test / java / org / opendaylight / groupbasedpolicy / renderer / ofoverlay / flow / DestinationMapperTest.java
index 817585cb9584d744cf518901720a11b19675dd8b..0a63878ce4394207a1b4b203bbc5daa0cab2cd23 100755 (executable)
@@ -36,7 +36,9 @@ import java.util.Objects;
 \r
 import org.junit.Before;\r
 import org.junit.Test;\r
+import org.junit.runner.RunWith;\r
 import org.opendaylight.groupbasedpolicy.renderer.ofoverlay.OfWriter;\r
+import org.opendaylight.groupbasedpolicy.renderer.ofoverlay.PolicyManager;\r
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;\r
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;\r
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv6Address;\r
@@ -51,7 +53,6 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.ofoverlay.rev140528.OfOverlayNodeConfigBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.ofoverlay.rev140528.nodes.node.TunnelBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.PolicyBuilder;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.Contract;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeConnectorId;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.match.layer._3.match.Ipv4Match;\r
@@ -59,11 +60,16 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg0;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg7;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.overlay.rev150105.TunnelTypeVxlan;\r
+import org.powermock.api.mockito.PowerMockito;\r
+import org.powermock.core.classloader.annotations.PrepareForTest;\r
+import org.powermock.modules.junit4.PowerMockRunner;\r
 import org.slf4j.Logger;\r
 import org.slf4j.LoggerFactory;\r
 \r
 import com.google.common.collect.ImmutableList;\r
 \r
+@RunWith(PowerMockRunner.class)\r
+@PrepareForTest({PolicyManager.class})\r
 public class DestinationMapperTest extends FlowTableTest {\r
     protected static final Logger LOG =\r
             LoggerFactory.getLogger(DestinationMapperTest.class);\r
@@ -74,6 +80,8 @@ public class DestinationMapperTest extends FlowTableTest {
     @Override\r
     @Before\r
     public void setup() throws Exception {\r
+        PowerMockito.stub(PowerMockito.method(PolicyManager.class, "setSfcTableOffset")).toReturn(true);\r
+\r
         initCtx();\r
         table = new DestinationMapper(ctx,ctx.getPolicyManager().getTABLEID_DESTINATION_MAPPER());\r
         super.setup();\r
@@ -104,7 +112,6 @@ public class DestinationMapperTest extends FlowTableTest {
                     f.getMatch().getEthernetMatch())) {\r
                 // router ARP reply\r
                 Instruction ins = f.getInstructions().getInstruction().get(0);\r
-                ins = f.getInstructions().getInstruction().get(0);\r
                 assertTrue(ins.getInstruction() instanceof ApplyActionsCase);\r
                 List<Action> actions = ((ApplyActionsCase) ins.getInstruction()).getApplyActions().getAction();\r
                 assertEquals(nxMoveEthSrcToEthDstAction(),\r
@@ -219,14 +226,13 @@ public class DestinationMapperTest extends FlowTableTest {
                             .getAddress())) {\r
                 // broadcast/multicast flow should output to group table\r
                 Instruction ins = f.getInstructions().getInstruction().get(0);\r
-                ins = f.getInstructions().getInstruction().get(0);\r
                 assertTrue(ins.getInstruction() instanceof ApplyActionsCase);\r
                 List<Action> actions = ((ApplyActionsCase) ins.getInstruction()).getApplyActions().getAction();\r
                 assertEquals(nxMoveRegTunIdAction(NxmNxReg0.class, false),\r
                         actions.get(0).getAction());\r
                 assertEquals(Integer.valueOf(0), actions.get(0).getOrder());\r
 \r
-                Long v = Long.valueOf(OrdinalFactory.getContextOrdinal(tid, fd));\r
+                Long v = (long) OrdinalFactory.getContextOrdinal(tid, fd);\r
                 assertEquals(groupAction(v), actions.get(1).getAction());\r
                 assertEquals(Integer.valueOf(1), actions.get(1).getOrder());\r
                 count += 1;\r
@@ -291,7 +297,7 @@ public class DestinationMapperTest extends FlowTableTest {
 \r
 \r
         ctx.addTenant(baseTenant().setPolicy(new PolicyBuilder(baseTenant().getPolicy()).setContract(\r
-                ImmutableList.<Contract> of(baseContract(null).build())).build()).build());\r
+                ImmutableList.of(baseContract(null).build())).build()).build());\r
         verifyDMap(remoteEp, localEp);\r
     }\r
 \r
@@ -306,7 +312,7 @@ public class DestinationMapperTest extends FlowTableTest {
         endpointManager.addEndpoint(remoteEp);\r
 \r
         ctx.addTenant(baseTenant().setPolicy(new PolicyBuilder(baseTenant().getPolicy()).setContract(\r
-                ImmutableList.<Contract> of(baseContract(null).build())).build()).build());\r
+                ImmutableList.of(baseContract(null).build())).build()).build());\r
         verifyDMap(remoteEp, localEp);\r
     }\r
 \r