X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=openflowplugin%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fopenflowplugin%2Fopenflow%2Fmd%2Fcore%2Fsal%2Fconvertor%2FGroupConvertorTest.java;h=0a5ac4408cfa894f2996a788b09e66453e6f9bea;hb=1aee9a9a8d8df9d3207696a98021295ae2e92ad7;hp=f0358c4dfbf706a2183684e6fe4e1cfa9a14e44f;hpb=e8cbd779e310a5877d2a5cad5bed75ba9839bb5e;p=openflowplugin.git diff --git a/openflowplugin/src/test/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/GroupConvertorTest.java b/openflowplugin/src/test/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/GroupConvertorTest.java index f0358c4dfb..0a5ac4408c 100644 --- a/openflowplugin/src/test/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/GroupConvertorTest.java +++ b/openflowplugin/src/test/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/GroupConvertorTest.java @@ -7,16 +7,19 @@ */ package org.opendaylight.openflowplugin.openflow.md.core.sal.convertor; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + import com.google.common.collect.ImmutableList; import java.math.BigInteger; import java.util.ArrayList; import java.util.List; -import org.junit.Assert; +import java.util.Optional; +import org.junit.Before; import org.junit.Test; -import org.opendaylight.openflowplugin.openflow.md.util.OpenflowPortsUtil; +import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri; import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.CopyTtlInCaseBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.GroupActionCase; import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.GroupActionCaseBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.OutputActionCaseBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.action.SetMplsTtlActionCaseBuilder; @@ -31,12 +34,15 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.acti import org.opendaylight.yang.gen.v1.urn.opendaylight.group.service.rev130918.AddGroupInput; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.service.rev130918.AddGroupInputBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.BucketId; +import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupId; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupTypes; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.Buckets; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.BucketsBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.buckets.Bucket; import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.buckets.BucketBuilder; +import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.GroupCaseBuilder; +import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetMplsTtlCaseBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.GroupModCommand; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.GroupType; @@ -44,9 +50,15 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsList; public class GroupConvertorTest { + private ConvertorManager convertorManager; + + @Before + public void setUp() { + convertorManager = ConvertorManagerFactory.createDefaultManager(); + } /** - * test of {@link GroupConvertor#toGroupModInput(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, short, java.math.BigInteger)} + * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }. */ @Test public void testGroupModConvertorwithallParameters() { @@ -56,9 +68,11 @@ public class GroupConvertorTest { addGroupBuilder.setGroupId(new GroupId(10L)); addGroupBuilder.setGroupType(GroupTypes.GroupAll); - final List bucketList = new ArrayList(); - final List actionsList = new ArrayList(); - final List actionsList1 = new ArrayList(); + final List bucketList = new ArrayList<>(); + final List + actionsList = new ArrayList<>(); + final List + actionsList1 = new ArrayList<>(); int actionOrder = 0; @@ -74,7 +88,8 @@ public class GroupConvertorTest { groupActionBuilder1.setGroup("006"); final GroupAction groupIdaction1 = groupActionBuilder.build(); final ActionBuilder actionsB1 = new ActionBuilder(); - actionsB1.setOrder(actionOrder++).setAction(new GroupActionCaseBuilder().setGroupAction(groupIdaction1).build()); + actionsB1.setOrder(actionOrder++).setAction(new GroupActionCaseBuilder() + .setGroupAction(groupIdaction1).build()); actionsList.add(actionsB.build()); actionsList.add(actionsB1.build()); @@ -109,7 +124,8 @@ public class GroupConvertorTest { final SetMplsTtlAction setMAction = setMplsTtlActionBuilder.build(); final ActionBuilder actionsB3 = new ActionBuilder(); - actionsB3.setOrder(actionOrder++).setAction(new SetMplsTtlActionCaseBuilder().setSetMplsTtlAction(setMAction).build()); + actionsB3.setOrder(actionOrder++).setAction(new SetMplsTtlActionCaseBuilder() + .setSetMplsTtlAction(setMAction).build()); actionsList1.add(actionsB2.build()); @@ -126,47 +142,48 @@ public class GroupConvertorTest { addGroupBuilder.setBuckets(buckets); - final GroupModInputBuilder outAddGroupInput = GroupConvertor.toGroupModInput(addGroupBuilder.build(), (short) 0X4, BigInteger.valueOf(1)); + VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4); + data.setDatapathId(BigInteger.valueOf(1)); - Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); - Assert.assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType()); + final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data); - Assert.assertEquals(10L, (long) outAddGroupInput.getGroupId().getValue()); - Assert.assertEquals(10, (int) outAddGroupInput.getBucketsList().get(0).getWeight()); - Assert.assertEquals(20L, (long) outAddGroupInput.getBucketsList().get(0).getWatchPort().getValue()); - Assert.assertEquals((Long) 22L, outAddGroupInput.getBucketsList().get(0).getWatchGroup()); + assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); + assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType()); - final List outActionList = outAddGroupInput.getBucketsList().get(0).getAction(); - for (int outItem = 0; outItem < outActionList.size(); outItem++) { - final Action action = outActionList - .get(outItem); - if (action.getActionChoice() instanceof GroupActionCase) { - Assert.assertEquals((Long) 5L, ((GroupActionCase) action.getActionChoice()).getGroupAction().getGroupId()); - - } - // TODO:setMplsTTL :OF layer doesnt have get(); - } - - Assert.assertEquals((Integer) 50, outAddGroupInput.getBucketsList().get(1).getWeight()); - Assert.assertEquals((long) 60, (long) outAddGroupInput.getBucketsList().get(1).getWatchPort().getValue()); - Assert.assertEquals((Long) 70L, outAddGroupInput.getBucketsList().get(1).getWatchGroup()); - final List outActionList1 = outAddGroupInput.getBucketsList().get(1).getAction(); - for (int outItem = 0; outItem < outActionList1.size(); outItem++) { - final Action action = outActionList1 - .get(outItem); - if (action.getActionChoice() instanceof GroupActionCase) { + assertEquals(10L, (long) outAddGroupInput.getGroupId().getValue()); + assertEquals(10, (int) outAddGroupInput.getBucketsList().get(0).getWeight()); + assertEquals(20L, (long) outAddGroupInput.getBucketsList().get(0).getWatchPort().getValue()); + assertEquals((Long) 22L, outAddGroupInput.getBucketsList().get(0).getWatchGroup()); - Assert.assertEquals((Long) 6L, ((GroupActionCase) action.getActionChoice()).getGroupAction().getGroupId()); - - - } - // TODO:setMplsTTL :OF layer doesnt have get(); - } + final List outActionList = outAddGroupInput.getBucketsList().get(0).getAction(); + assertEquals(ImmutableList.of(new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action + .rev150203.actions.grouping.ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping + .action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()).build()).build(), + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping + .ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action + .grouping.action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()).build()) + .build()), outActionList); + + assertEquals((Integer) 50, outAddGroupInput.getBucketsList().get(1).getWeight()); + assertEquals((long) 60, (long) outAddGroupInput.getBucketsList().get(1).getWatchPort().getValue()); + assertEquals((Long) 70L, outAddGroupInput.getBucketsList().get(1).getWatchGroup()); + final List outActionList1 = outAddGroupInput.getBucketsList().get(1).getAction(); + assertEquals(ImmutableList.of(new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action + .rev150203.actions.grouping.ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping + .action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()).build()).build(), + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping + .ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action + .grouping.action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()).build()) + .build()), outActionList1); } /** - * test of {@link GroupConvertor#toGroupModInput(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, short, java.math.BigInteger)} + * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }. */ @Test public void testGroupModConvertorNoBucket() { @@ -176,14 +193,16 @@ public class GroupConvertorTest { addGroupBuilder.setGroupType(GroupTypes.GroupAll); - final GroupModInputBuilder outAddGroupInput = GroupConvertor.toGroupModInput(addGroupBuilder.build(), (short) 0X4, BigInteger.valueOf(1)); + VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4); + data.setDatapathId(BigInteger.valueOf(1)); - Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); - Assert.assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType()); + final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data); + assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); + assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType()); } /** - * test of {@link GroupConvertor#toGroupModInput(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, short, java.math.BigInteger)} + * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }. */ @Test public void testGroupModConvertorBucketwithNOWieghtValuesForGroupTypeFastFailure() { @@ -195,9 +214,11 @@ public class GroupConvertorTest { addGroupBuilder.setGroupId(new GroupId(10L)); addGroupBuilder.setGroupType(GroupTypes.GroupFf); - final List bucketList = new ArrayList(); - final List actionsList = new ArrayList(); - final List actionsList1 = new ArrayList(); + final List bucketList = new ArrayList<>(); + final List + actionsList = new ArrayList<>(); + final List + actionsList1 = new ArrayList<>(); // Action1: 005 actionsList.add(assembleActionBuilder("005", actionOrder++).build()); @@ -233,148 +254,153 @@ public class GroupConvertorTest { addGroupBuilder.setBuckets(buckets); - final GroupModInputBuilder outAddGroupInput = GroupConvertor.toGroupModInput(addGroupBuilder.build(), (short) 0X4, BigInteger.valueOf(1)); + VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4); + data.setDatapathId(BigInteger.valueOf(1)); - Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); - Assert.assertEquals(GroupType.OFPGTFF, outAddGroupInput.getType()); + final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data); - Assert.assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue()); + assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); + assertEquals(GroupType.OFPGTFF, outAddGroupInput.getType()); + + assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue()); final List outActionList = outAddGroupInput.getBucketsList().get(0).getAction(); - for (int outItem = 0; outItem < outActionList.size(); outItem++) { - final Action action = outActionList - .get(outItem); - if (action.getActionChoice() instanceof GroupActionCase) { - Assert.assertEquals((Long) 5L, ((GroupActionCase) action.getActionChoice()).getGroupAction().getGroupId()); - } - } + assertEquals(ImmutableList.of(new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .actions.grouping.ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action + .grouping.action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()).build()) + .build(), + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping + .ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .action.grouping.action.choice.group._case.GroupActionBuilder().setGroupId(6L) + .build()).build()).build()), outActionList); final List outActionList1 = outAddGroupInput.getBucketsList().get(1).getAction(); - for (int outItem = 0; outItem < outActionList1.size(); outItem++) { - final Action action = outActionList1 - .get(outItem); - if (action.getActionChoice() instanceof GroupActionCase) { - Assert.assertEquals((Long) 6L, ((GroupActionCase) action.getActionChoice()).getGroupAction().getGroupId()); - } - } + assertEquals(ImmutableList.of(new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .actions.grouping.ActionBuilder().setActionChoice( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action + .grouping.action.choice.CopyTtlInCaseBuilder().build()).build(), + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping + .ActionBuilder().setActionChoice(new SetMplsTtlCaseBuilder().setSetMplsTtlAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .action.grouping.action.choice.set.mpls.ttl._case.SetMplsTtlActionBuilder() + .setMplsTtl((short) 1).build()).build()).build()), outActionList1); } /** - * test of {@link GroupConvertor#toGroupModInput(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, short, java.math.BigInteger)} + * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }. */ @Test public void testGroupModConvertSortedBuckets() { final int actionOrder = 0; - final ArrayList bucket = new ArrayList(); + final ArrayList bucket = new ArrayList<>(); bucket.add(new BucketBuilder() - .setBucketId(new BucketId((long) 4)) - .setWatchPort((long)2) - .setWatchGroup((long) 1) - .setAction(ImmutableList.of(new ActionBuilder() + .setBucketId(new BucketId((long) 4)) + .setWatchPort((long)2) + .setWatchGroup((long) 1) + .setAction(ImmutableList.of(new ActionBuilder() .setOrder(0) .setAction(new OutputActionCaseBuilder() - .setOutputAction(new OutputActionBuilder() - .setOutputNodeConnector(new Uri("openflow:1:2")) - .build()) + .setOutputAction(new OutputActionBuilder() + .setOutputNodeConnector(new Uri("openflow:1:2")) .build()) + .build()) .build())) - .build()); + .build()); bucket.add(new BucketBuilder() - .setBucketId(new BucketId((long) 3)) - .setWatchPort((long)6) - .setWatchGroup((long) 1) - .setAction(ImmutableList.of(new ActionBuilder() + .setBucketId(new BucketId((long) 3)) + .setWatchPort((long)6) + .setWatchGroup((long) 1) + .setAction(ImmutableList.of(new ActionBuilder() .setOrder(0) .setAction(new OutputActionCaseBuilder() - .setOutputAction(new OutputActionBuilder() - .setOutputNodeConnector(new Uri("openflow:1:6")) - .build()) + .setOutputAction(new OutputActionBuilder() + .setOutputNodeConnector(new Uri("openflow:1:6")) .build()) + .build()) .build())) .build()); bucket.add(new BucketBuilder() - .setBucketId(new BucketId((long) 2)) - .setWatchPort((long)5) - .setWatchGroup((long) 1) - .setAction(ImmutableList.of(new ActionBuilder() + .setBucketId(new BucketId((long) 2)) + .setWatchPort((long)5) + .setWatchGroup((long) 1) + .setAction(ImmutableList.of(new ActionBuilder() .setOrder(0) .setAction(new OutputActionCaseBuilder() - .setOutputAction(new OutputActionBuilder() - .setOutputNodeConnector(new Uri("openflow:1:5")) - .build()) + .setOutputAction(new OutputActionBuilder() + .setOutputNodeConnector(new Uri("openflow:1:5")) .build()) + .build()) .build())) .build()); bucket.add(new BucketBuilder() - .setBucketId(new BucketId((long) 1)) - .setWatchPort((long)4) - .setWatchGroup((long) 1) - .setAction(ImmutableList.of(new ActionBuilder() - .setOrder(0) - .setAction(new OutputActionCaseBuilder() - .setOutputAction(new OutputActionBuilder() - .setOutputNodeConnector(new Uri("openflow:1:4")) - .build()) - .build()) - .build())) - .build()); + .setBucketId(new BucketId((long) 1)) + .setWatchPort((long)4) + .setWatchGroup((long) 1) + .setAction(ImmutableList.of(new ActionBuilder() + .setOrder(0) + .setAction(new OutputActionCaseBuilder() + .setOutputAction(new OutputActionBuilder() + .setOutputNodeConnector(new Uri("openflow:1:4")) + .build()) + .build()) + .build())) + .build()); bucket.add(new BucketBuilder() - .setBucketId(new BucketId((long) 0)) - .setWatchPort((long)3) - .setWatchGroup((long) 1) - .setAction(ImmutableList.of(new ActionBuilder() - .setOrder(0) - .setAction(new OutputActionCaseBuilder() - .setOutputAction(new OutputActionBuilder() - .setOutputNodeConnector(new Uri("openflow:1:3")) - .build()) - .build()) - .build())) - .build()); + .setBucketId(new BucketId((long) 0)) + .setWatchPort((long)3) + .setWatchGroup((long) 1) + .setAction(ImmutableList.of(new ActionBuilder() + .setOrder(0) + .setAction(new OutputActionCaseBuilder() + .setOutputAction(new OutputActionBuilder() + .setOutputNodeConnector(new Uri("openflow:1:3")) + .build()) + .build()) + .build())) + .build()); final AddGroupInput input = new AddGroupInputBuilder() - .setGroupId(new GroupId((long) 1)) - .setGroupName("Foo") - .setGroupType(GroupTypes.GroupFf) - .setBuckets(new BucketsBuilder() - .setBucket(bucket) - .build()) - .build(); + .setGroupId(new GroupId((long) 1)) + .setGroupName("Foo") + .setGroupType(GroupTypes.GroupFf) + .setBuckets(new BucketsBuilder() + .setBucket(bucket) + .build()) + .build(); - OpenflowPortsUtil.init(); + VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4); + data.setDatapathId(BigInteger.valueOf(1)); - final GroupModInputBuilder outAddGroupInput = GroupConvertor.toGroupModInput(input, (short) 0X4, BigInteger.valueOf(1)); + final GroupModInputBuilder outAddGroupInput = convert(input, data); final List bucketList = outAddGroupInput.getBucketsList(); - Assert.assertEquals( Long.valueOf(1), bucketList.get(0).getWatchGroup()); - Assert.assertEquals( Long.valueOf(3), bucketList.get(0).getWatchPort().getValue()); + assertEquals(Long.valueOf(1), bucketList.get(0).getWatchGroup()); + assertEquals(Long.valueOf(3), bucketList.get(0).getWatchPort().getValue()); - Assert.assertEquals( Long.valueOf(1), bucketList.get(1).getWatchGroup()); - Assert.assertEquals( Long.valueOf(4), bucketList.get(1).getWatchPort().getValue()); + assertEquals(Long.valueOf(1), bucketList.get(1).getWatchGroup()); + assertEquals(Long.valueOf(4), bucketList.get(1).getWatchPort().getValue()); - Assert.assertEquals( Long.valueOf(1), bucketList.get(2).getWatchGroup()); - Assert.assertEquals( Long.valueOf(5), bucketList.get(2).getWatchPort().getValue()); + assertEquals(Long.valueOf(1), bucketList.get(2).getWatchGroup()); + assertEquals(Long.valueOf(5), bucketList.get(2).getWatchPort().getValue()); - Assert.assertEquals( Long.valueOf(1), bucketList.get(3).getWatchGroup()); - Assert.assertEquals( Long.valueOf(6), bucketList.get(3).getWatchPort().getValue()); - - Assert.assertEquals( Long.valueOf(1), bucketList.get(4).getWatchGroup()); - Assert.assertEquals( Long.valueOf(2), bucketList.get(4).getWatchPort().getValue()); + assertEquals(Long.valueOf(1), bucketList.get(3).getWatchGroup()); + assertEquals(Long.valueOf(6), bucketList.get(3).getWatchPort().getValue()); + assertEquals(Long.valueOf(1), bucketList.get(4).getWatchGroup()); + assertEquals(Long.valueOf(2), bucketList.get(4).getWatchPort().getValue()); } - /** - * @return - */ private static ActionBuilder assembleSetMplsTtlActionBuilder(final int actionOrder) { final SetMplsTtlActionBuilder setMplsTtlActionBuilder = new SetMplsTtlActionBuilder(); setMplsTtlActionBuilder.setMplsTtl((short) 0X1); @@ -385,9 +411,6 @@ public class GroupConvertorTest { return actionsB3; } - /** - * @return - */ private static ActionBuilder assembleCopyTtlInBuilder(final int actionOrder) { final CopyTtlInBuilder copyTtlB = new CopyTtlInBuilder(); final CopyTtlInCaseBuilder copyTtlInCaseBuilder = new CopyTtlInCaseBuilder(); @@ -397,10 +420,6 @@ public class GroupConvertorTest { return actionsB2; } - /** - * @param groupName name of group - * @return - */ private static ActionBuilder assembleActionBuilder(final String groupName, final int actionOrder) { final GroupActionBuilder groupActionBuilder = new GroupActionBuilder(); groupActionBuilder.setGroup(groupName); @@ -412,7 +431,7 @@ public class GroupConvertorTest { } /** - * test of {@link GroupConvertor#toGroupModInput(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, short, java.math.BigInteger)} )} + * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }. */ @Test public void testGroupModConvertorBucketwithNOWieghtValuesForGroupTypeAll() { @@ -424,9 +443,11 @@ public class GroupConvertorTest { addGroupBuilder.setGroupId(new GroupId(10L)); addGroupBuilder.setGroupType(GroupTypes.GroupAll); - final List bucketList = new ArrayList(); - final List actionsList = new ArrayList(); - final List actionsList1 = new ArrayList(); + final List bucketList = new ArrayList<>(); + final List + actionsList = new ArrayList<>(); + final List + actionsList1 = new ArrayList<>(); // Action1 actionsList.add(assembleActionBuilder("005", actionOrder++).build()); @@ -460,35 +481,44 @@ public class GroupConvertorTest { addGroupBuilder.setBuckets(buckets); - final GroupModInputBuilder outAddGroupInput = GroupConvertor.toGroupModInput(addGroupBuilder.build(), (short) 0X4, BigInteger.valueOf(1)); - - Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); - Assert.assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType()); + VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4); + data.setDatapathId(BigInteger.valueOf(1)); - Assert.assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue()); + final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data); - final List outActionList = outAddGroupInput.getBucketsList().get(0).getAction(); - for (int outItem = 0; outItem < outActionList.size(); outItem++) { - final Action action = outActionList - .get(outItem); - if (action.getActionChoice() instanceof GroupActionCase) { - Assert.assertEquals((Long) 5L, ((GroupActionCase) action.getActionChoice()).getGroupAction().getGroupId()); + assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand()); + assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType()); - } + assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue()); - } + final List outActionList = outAddGroupInput.getBucketsList().get(0).getAction(); + assertEquals(ImmutableList.of(new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .actions.grouping.ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action + .grouping.action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()) + .build()).build(), + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping + .ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .action.grouping.action.choice.group._case.GroupActionBuilder() + .setGroupId(6L).build()).build()).build()), outActionList); final List outActionList1 = outAddGroupInput.getBucketsList().get(1).getAction(); - for (int outItem = 0; outItem < outActionList1.size(); outItem++) { - final Action action = outActionList1 - .get(outItem); - if (action.getActionChoice() instanceof GroupActionCase) { - - Assert.assertEquals((Long) 6L, ((GroupActionCase) action.getActionChoice()).getGroupAction().getGroupId()); - - } - - } + assertEquals(ImmutableList.of(new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .actions.grouping.ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action + .grouping.action.choice.group._case.GroupActionBuilder().setGroupId(5L).build()) + .build()).build(), + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping + .ActionBuilder().setActionChoice(new GroupCaseBuilder().setGroupAction( + new org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203 + .action.grouping.action.choice.group._case.GroupActionBuilder() + .setGroupId(6L).build()).build()).build()), outActionList1); + } + private GroupModInputBuilder convert(final Group group, final VersionDatapathIdConvertorData data) { + final Optional outAddGroupInputOptional = convertorManager.convert(group, data); + assertTrue("Group convertor not found", outAddGroupInputOptional.isPresent()); + return outAddGroupInputOptional.get(); } }