-/**
+/*
* Copyright (c) 2014 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
*/
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 java.util.Optional;
-import org.junit.Assert;
+import org.junit.Before;
import org.junit.Test;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData;
-import org.opendaylight.openflowplugin.openflow.md.util.OpenflowPortsUtil;
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;
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.group.types.rev131018.group.buckets.BucketKey;
+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;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GroupModInputBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsList;
+import org.opendaylight.yangtools.yang.common.Uint16;
+import org.opendaylight.yangtools.yang.common.Uint32;
+import org.opendaylight.yangtools.yang.common.Uint64;
+import org.opendaylight.yangtools.yang.common.Uint8;
public class GroupConvertorTest {
+ private ConvertorManager convertorManager;
+
+ @Before
+ public void setUp() {
+ convertorManager = ConvertorManagerFactory.createDefaultManager();
+ }
/**
- * test of {@link org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.GroupConvertor#convert(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData)} }
+ * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }.
*/
@Test
public void testGroupModConvertorwithallParameters() {
final AddGroupInputBuilder addGroupBuilder = new AddGroupInputBuilder();
- addGroupBuilder.setGroupId(new GroupId(10L));
+ addGroupBuilder.setGroupId(new GroupId(Uint32.TEN));
addGroupBuilder.setGroupType(GroupTypes.GroupAll);
- final List<Bucket> bucketList = new ArrayList<Bucket>();
- final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> actionsList = new ArrayList<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>();
- final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> actionsList1 = new ArrayList<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>();
+ final List<Bucket> bucketList = new ArrayList<>();
+ final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>
+ actionsList = new ArrayList<>();
+ final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>
+ actionsList1 = new ArrayList<>();
int actionOrder = 0;
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());
final BucketsBuilder bucketsB = new BucketsBuilder();
final BucketBuilder bucketB = new BucketBuilder();
- bucketB.setWeight(10);
- bucketB.setWatchPort(20L);
- bucketB.setWatchGroup(22L);
+ bucketB.setWeight(Uint16.TEN);
+ bucketB.setWatchPort(Uint32.valueOf(20));
+ bucketB.setWatchGroup(Uint32.valueOf(22));
+ bucketB.withKey(new BucketKey(new BucketId(Uint32.ZERO)));
bucketB.setAction(actionsList);
final Bucket bucket = bucketB.build();
bucketList.add(bucket); // List of bucket
final BucketBuilder bucketB1 = new BucketBuilder();
- bucketB1.setWeight(50);
- bucketB1.setWatchPort(60L);
- bucketB1.setWatchGroup(70L);
+ bucketB1.setWeight(Uint16.valueOf(50));
+ bucketB1.setWatchPort(Uint32.valueOf(60));
+ bucketB1.setWatchGroup(Uint32.valueOf(70));
+ bucketB1.withKey(new BucketKey(new BucketId(Uint32.ONE)));
// Action1
final CopyTtlInBuilder copyTtlB = new CopyTtlInBuilder();
// Action2:
final SetMplsTtlActionBuilder setMplsTtlActionBuilder = new SetMplsTtlActionBuilder();
- setMplsTtlActionBuilder.setMplsTtl((short) 0X1);
+ setMplsTtlActionBuilder.setMplsTtl(Uint8.ONE);
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());
addGroupBuilder.setBuckets(buckets);
VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4);
- data.setDatapathId(BigInteger.valueOf(1));
+ data.setDatapathId(Uint64.ONE);
final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data);
- Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
- Assert.assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType());
+ assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
+ assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType());
- 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(10L, outAddGroupInput.getGroupId().getValue().toJava());
+ assertEquals(10, outAddGroupInput.getBucketsList().get(0).getWeight().toJava());
+ assertEquals(20L, outAddGroupInput.getBucketsList().get(0).getWatchPort().getValue().toJava());
+ assertEquals(22L, outAddGroupInput.getBucketsList().get(0).getWatchGroup().toJava());
final List<Action> 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<Action> 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());
-
-
- }
- // TODO:setMplsTTL :OF layer doesnt have get();
- }
+ 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(Uint32.valueOf(5)).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(Uint32.valueOf(5))
+ .build()).build())
+ .build()), outActionList);
+
+ assertEquals(50, outAddGroupInput.getBucketsList().get(1).getWeight().toJava());
+ assertEquals(60, outAddGroupInput.getBucketsList().get(1).getWatchPort().getValue().toJava());
+ assertEquals(70L, outAddGroupInput.getBucketsList().get(1).getWatchGroup().toJava());
+ final List<Action> 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(Uint32.valueOf(5)).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(Uint32.valueOf(5))
+ .build()).build())
+ .build()), outActionList1);
}
/**
- * test of {@link org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.GroupConvertor#convert(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData)} }
+ * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }.
*/
@Test
public void testGroupModConvertorNoBucket() {
final AddGroupInputBuilder addGroupBuilder = new AddGroupInputBuilder();
- addGroupBuilder.setGroupId(new GroupId(10L));
+ addGroupBuilder.setGroupId(new GroupId(Uint32.TEN));
addGroupBuilder.setGroupType(GroupTypes.GroupAll);
VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4);
- data.setDatapathId(BigInteger.valueOf(1));
+ data.setDatapathId(Uint64.ONE);
final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data);
- Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
- Assert.assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType());
+ assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
+ assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType());
}
/**
- * test of {@link org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.GroupConvertor#convert(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData)} }
+ * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }.
*/
@Test
public void testGroupModConvertorBucketwithNOWieghtValuesForGroupTypeFastFailure() {
final AddGroupInputBuilder addGroupBuilder = new AddGroupInputBuilder();
- addGroupBuilder.setGroupId(new GroupId(10L));
+ addGroupBuilder.setGroupId(new GroupId(Uint32.TEN));
addGroupBuilder.setGroupType(GroupTypes.GroupFf);
- final List<Bucket> bucketList = new ArrayList<Bucket>();
- final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> actionsList = new ArrayList<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>();
- final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> actionsList1 = new ArrayList<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>();
+ final List<Bucket> bucketList = new ArrayList<>();
+ final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>
+ actionsList = new ArrayList<>();
+ final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>
+ actionsList1 = new ArrayList<>();
// Action1: 005
actionsList.add(assembleActionBuilder("005", actionOrder++).build());
final BucketBuilder bucketB = new BucketBuilder();
- bucketB.setAction(actionsList);
+ bucketB.setAction(actionsList).withKey(new BucketKey(new BucketId(Uint32.ZERO)));
final Bucket bucket = bucketB.build();
bucketList.add(bucket); // List of bucket
// Action2:
actionsList1.add(assembleSetMplsTtlActionBuilder(actionOrder++).build());
- bucketB1.setAction(actionsList1);
+ bucketB1.setAction(actionsList1).withKey(new BucketKey(new BucketId(Uint32.ONE)));
final Bucket bucket1 = bucketB1.build(); // second bucket
addGroupBuilder.setBuckets(buckets);
VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4);
- data.setDatapathId(BigInteger.valueOf(1));
+ data.setDatapathId(Uint64.ONE);
final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data);
- Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
- Assert.assertEquals(GroupType.OFPGTFF, outAddGroupInput.getType());
+ assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
+ assertEquals(GroupType.OFPGTFF, outAddGroupInput.getType());
- Assert.assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue());
+ assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue());
final List<Action> 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(Uint32.valueOf(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(Uint32.valueOf(6)).build()).build()).build()), outActionList);
final List<Action> 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(Uint8.ONE).build()).build()).build()), outActionList1);
}
/**
- * test of {@link org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.GroupConvertor#convert(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData)} }
+ * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }.
*/
@Test
public void testGroupModConvertSortedBuckets() {
final int actionOrder = 0;
- final ArrayList<Bucket> bucket = new ArrayList<Bucket>();
+ final ArrayList<Bucket> bucket = new ArrayList<>();
bucket.add(new BucketBuilder()
- .setBucketId(new BucketId((long) 4))
- .setWatchPort((long)2)
- .setWatchGroup((long) 1)
+ .setBucketId(new BucketId(Uint32.valueOf(4)))
+ .setWatchPort(Uint32.TWO)
+ .setWatchGroup(Uint32.ONE)
.setAction(ImmutableList.of(new ActionBuilder()
.setOrder(0)
.setAction(new OutputActionCaseBuilder()
.build());
bucket.add(new BucketBuilder()
- .setBucketId(new BucketId((long) 3))
- .setWatchPort((long)6)
- .setWatchGroup((long) 1)
+ .setBucketId(new BucketId(Uint32.valueOf(3)))
+ .setWatchPort(Uint32.valueOf(6))
+ .setWatchGroup(Uint32.ONE)
.setAction(ImmutableList.of(new ActionBuilder()
.setOrder(0)
.setAction(new OutputActionCaseBuilder()
.build());
bucket.add(new BucketBuilder()
- .setBucketId(new BucketId((long) 2))
- .setWatchPort((long)5)
- .setWatchGroup((long) 1)
+ .setBucketId(new BucketId(Uint32.TWO))
+ .setWatchPort(Uint32.valueOf(5))
+ .setWatchGroup(Uint32.ONE)
.setAction(ImmutableList.of(new ActionBuilder()
.setOrder(0)
.setAction(new OutputActionCaseBuilder()
.build());
bucket.add(new BucketBuilder()
- .setBucketId(new BucketId((long) 1))
- .setWatchPort((long)4)
- .setWatchGroup((long) 1)
+ .setBucketId(new BucketId(Uint32.ONE))
+ .setWatchPort(Uint32.valueOf(4))
+ .setWatchGroup(Uint32.ONE)
.setAction(ImmutableList.of(new ActionBuilder()
.setOrder(0)
.setAction(new OutputActionCaseBuilder()
.build());
bucket.add(new BucketBuilder()
- .setBucketId(new BucketId((long) 0))
- .setWatchPort((long)3)
- .setWatchGroup((long) 1)
+ .setBucketId(new BucketId(Uint32.ZERO))
+ .setWatchPort(Uint32.valueOf(3))
+ .setWatchGroup(Uint32.ONE)
.setAction(ImmutableList.of(new ActionBuilder()
.setOrder(0)
.setAction(new OutputActionCaseBuilder()
final AddGroupInput input = new AddGroupInputBuilder()
- .setGroupId(new GroupId((long) 1))
+ .setGroupId(new GroupId(Uint32.ONE))
.setGroupName("Foo")
.setGroupType(GroupTypes.GroupFf)
.setBuckets(new BucketsBuilder()
.build())
.build();
- OpenflowPortsUtil.init();
-
VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4);
- data.setDatapathId(BigInteger.valueOf(1));
+ data.setDatapathId(Uint64.ONE);
final GroupModInputBuilder outAddGroupInput = convert(input, data);
final List<BucketsList> bucketList = outAddGroupInput.getBucketsList();
- Assert.assertEquals( Long.valueOf(1), bucketList.get(0).getWatchGroup());
- Assert.assertEquals( Long.valueOf(3), bucketList.get(0).getWatchPort().getValue());
+ assertEquals(Uint32.ONE, bucketList.get(0).getWatchGroup());
+ assertEquals(Uint32.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(Uint32.ONE, bucketList.get(1).getWatchGroup());
+ assertEquals(Uint32.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(Uint32.ONE, bucketList.get(2).getWatchGroup());
+ assertEquals(Uint32.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(Uint32.ONE, bucketList.get(3).getWatchGroup());
+ assertEquals(Uint32.valueOf(6), bucketList.get(3).getWatchPort().getValue());
+ assertEquals(Uint32.ONE, bucketList.get(4).getWatchGroup());
+ assertEquals(Uint32.valueOf(2), bucketList.get(4).getWatchPort().getValue());
}
- /**
- * @return
- */
private static ActionBuilder assembleSetMplsTtlActionBuilder(final int actionOrder) {
final SetMplsTtlActionBuilder setMplsTtlActionBuilder = new SetMplsTtlActionBuilder();
- setMplsTtlActionBuilder.setMplsTtl((short) 0X1);
+ setMplsTtlActionBuilder.setMplsTtl(Uint8.ONE);
final SetMplsTtlActionCaseBuilder setMplsTtlActionCaseBuilder = new SetMplsTtlActionCaseBuilder();
setMplsTtlActionCaseBuilder.setSetMplsTtlAction(setMplsTtlActionBuilder.build());
final ActionBuilder actionsB3 = new ActionBuilder();
return actionsB3;
}
- /**
- * @return
- */
private static ActionBuilder assembleCopyTtlInBuilder(final int actionOrder) {
final CopyTtlInBuilder copyTtlB = new CopyTtlInBuilder();
final CopyTtlInCaseBuilder copyTtlInCaseBuilder = new CopyTtlInCaseBuilder();
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);
}
/**
- * test of {@link org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.GroupConvertor#convert(org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.Group, org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData)} }
+ * test of {@link GroupConvertor#convert(Group, VersionDatapathIdConvertorData)} }.
*/
@Test
public void testGroupModConvertorBucketwithNOWieghtValuesForGroupTypeAll() {
final AddGroupInputBuilder addGroupBuilder = new AddGroupInputBuilder();
- addGroupBuilder.setGroupId(new GroupId(10L));
+ addGroupBuilder.setGroupId(new GroupId(Uint32.TEN));
addGroupBuilder.setGroupType(GroupTypes.GroupAll);
- final List<Bucket> bucketList = new ArrayList<Bucket>();
- final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> actionsList = new ArrayList<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>();
- final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action> actionsList1 = new ArrayList<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>();
+ final List<Bucket> bucketList = new ArrayList<>();
+ final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>
+ actionsList = new ArrayList<>();
+ final List<org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.Action>
+ actionsList1 = new ArrayList<>();
// Action1
actionsList.add(assembleActionBuilder("005", actionOrder++).build());
final BucketBuilder bucketB = new BucketBuilder();
- bucketB.setAction(actionsList);
+ bucketB.setAction(actionsList).withKey(new BucketKey(new BucketId(Uint32.ZERO)));
final Bucket bucket = bucketB.build();
bucketList.add(bucket); // List of bucket
// Action2:
actionsList1.add(assembleSetMplsTtlActionBuilder(actionOrder++).build());
- bucketB1.setAction(actionsList);
+ bucketB1.setAction(actionsList).withKey(new BucketKey(new BucketId(Uint32.ONE)));
final Bucket bucket1 = bucketB1.build(); // second bucket
addGroupBuilder.setBuckets(buckets);
VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData((short) 0X4);
- data.setDatapathId(BigInteger.valueOf(1));
+ data.setDatapathId(Uint64.ONE);
final GroupModInputBuilder outAddGroupInput = convert(addGroupBuilder.build(), data);
- Assert.assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
- Assert.assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType());
+ assertEquals(GroupModCommand.OFPGCADD, outAddGroupInput.getCommand());
+ assertEquals(GroupType.OFPGTALL, outAddGroupInput.getType());
- Assert.assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue());
+ assertEquals(10L, outAddGroupInput.getGroupId().getValue().longValue());
final List<Action> 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(Uint32.valueOf(5)).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(Uint32.valueOf(6)).build()).build()).build()), outActionList);
final List<Action> 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(Uint32.valueOf(5)).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(Uint32.valueOf(6)).build()).build()).build()), outActionList1);
}
- private GroupModInputBuilder convert(Group group, VersionDatapathIdConvertorData data) {
- final Optional<GroupModInputBuilder> outAddGroupInputOptional = ConvertorManager.getInstance().convert(group, data);
- Assert.assertTrue("Group convertor not found", outAddGroupInputOptional.isPresent());
+ private GroupModInputBuilder convert(final Group group, final VersionDatapathIdConvertorData data) {
+ final Optional<GroupModInputBuilder> outAddGroupInputOptional = convertorManager.convert(group, data);
+ assertTrue("Group convertor not found", outAddGroupInputOptional.isPresent());
return outAddGroupInputOptional.get();
}
}