Remove redundant type specifiers
[openflowplugin.git] / openflowplugin-impl / src / test / java / org / opendaylight / openflowplugin / impl / util / GroupUtilTest.java
index 37500c4661c6b0846d8cac4be08deb9917b6677b..ccdf2e861b4bef0e63cee9535578eefdec90f58e 100644 (file)
@@ -8,6 +8,8 @@
 
 package org.opendaylight.openflowplugin.impl.util;
 
+import static org.junit.Assert.assertEquals;
+
 import com.google.common.base.Function;
 import com.google.common.collect.Lists;
 import java.util.Collections;
@@ -15,6 +17,7 @@ import java.util.List;
 import org.apache.commons.lang3.tuple.Pair;
 import org.junit.Assert;
 import org.junit.Test;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.transaction.rev150304.SendBarrierOutput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.GroupRef;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.groups.Group;
@@ -28,6 +31,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.ActionType;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.common.RpcError;
 import org.opendaylight.yangtools.yang.common.RpcResult;
@@ -38,9 +42,11 @@ import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
  */
 public class GroupUtilTest {
 
-    public static final NodeId DUMMY_NODE_ID = new NodeId("dummyNodeId");
+    private static final NodeId DUMMY_NODE_ID = new NodeId("dummyNodeId");
     private static final GroupId DUMMY_GROUP_ID = new GroupId(42L);
     private static final GroupId DUMMY_GROUP_ID_2 = new GroupId(43L);
+    private static final Long GROUP_ACTION_BITMAP =
+            0b00000000000000000000000000000000000001111111111111001100000000001L;
 
     @Test
     public void testBuildGroupPath() throws Exception {
@@ -78,42 +84,43 @@ public class GroupUtilTest {
     }
 
     @Test
-    public void testGROUP_ADD_TRANSFORM__failure() throws Exception {
+    public void testGroupAddTransformFailure() throws Exception {
         final RpcResult<List<BatchFailedGroupsOutput>> input = createBatchOutcomeWithError();
         checkBatchErrorOutcomeTransformation(GroupUtil.GROUP_ADD_TRANSFORM.apply(input));
     }
 
     @Test
-    public void testGROUP_ADD_TRANSFORM__success() throws Exception {
+    public void testGroupAddTransformFailureSuccess() throws Exception {
         final RpcResult<List<BatchFailedGroupsOutput>> input = createEmptyBatchOutcome();
         checkBatchSuccessOutcomeTransformation(GroupUtil.GROUP_ADD_TRANSFORM.apply(input));
     }
 
     @Test
-    public void testGROUP_REMOVE_TRANSFORM__failure() throws Exception {
+    public void testGroupRemoveTransformFailure() throws Exception {
         final RpcResult<List<BatchFailedGroupsOutput>> input = createBatchOutcomeWithError();
         checkBatchErrorOutcomeTransformation(GroupUtil.GROUP_REMOVE_TRANSFORM.apply(input));
     }
 
     @Test
-    public void testFLOW_REMOVE_TRANSFORM__success() throws Exception {
+    public void testFlowRemoveTransformSuccess() throws Exception {
         final RpcResult<List<BatchFailedGroupsOutput>> input = createEmptyBatchOutcome();
         checkBatchSuccessOutcomeTransformation(GroupUtil.GROUP_REMOVE_TRANSFORM.apply(input));
     }
 
     @Test
-    public void testFLOW_UPDATE_TRANSFORM__failure() throws Exception {
+    public void testFlowUpdateTransformFailure() throws Exception {
         final RpcResult<List<BatchFailedGroupsOutput>> input = createBatchOutcomeWithError();
         checkBatchErrorOutcomeTransformation(GroupUtil.GROUP_UPDATE_TRANSFORM.apply(input));
     }
 
     @Test
-    public void testFLOW_UPDATE_TRANSFORM__success() throws Exception {
+    public void testFlowUpdateTransformSuccess() throws Exception {
         final RpcResult<List<BatchFailedGroupsOutput>> input = createEmptyBatchOutcome();
         checkBatchSuccessOutcomeTransformation(GroupUtil.GROUP_UPDATE_TRANSFORM.apply(input));
     }
 
-    private <T extends BatchGroupOutputListGrouping> void checkBatchSuccessOutcomeTransformation(final RpcResult<T> output) {
+    private <T extends BatchGroupOutputListGrouping> void checkBatchSuccessOutcomeTransformation(
+            final RpcResult<T> output) {
         Assert.assertTrue(output.isSuccessful());
         Assert.assertEquals(0, output.getResult().getBatchFailedGroupsOutput().size());
         Assert.assertEquals(0, output.getErrors().size());
@@ -121,7 +128,7 @@ public class GroupUtilTest {
 
     private RpcResult<List<BatchFailedGroupsOutput>> createEmptyBatchOutcome() {
         return RpcResultBuilder
-                .<List<BatchFailedGroupsOutput>>success(Collections.<BatchFailedGroupsOutput>emptyList())
+                .success(Collections.<BatchFailedGroupsOutput>emptyList())
                 .build();
     }
 
@@ -134,7 +141,8 @@ public class GroupUtilTest {
                 .build();
     }
 
-    private <T extends BatchGroupOutputListGrouping> void checkBatchErrorOutcomeTransformation(final RpcResult<T> output) {
+    private <T extends BatchGroupOutputListGrouping> void checkBatchErrorOutcomeTransformation(
+            final RpcResult<T> output) {
         Assert.assertFalse(output.isSuccessful());
         Assert.assertEquals(1, output.getResult().getBatchFailedGroupsOutput().size());
         Assert.assertEquals(DUMMY_GROUP_ID, output.getResult().getBatchFailedGroupsOutput().get(0).getGroupId());
@@ -144,12 +152,13 @@ public class GroupUtilTest {
 
     @Test
     public void testCreateComposingFunction_success_success() throws Exception {
-        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>>, RpcResult<AddGroupsBatchOutput>> compositeFunction =
-                GroupUtil.createComposingFunction();
+        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>>,
+                RpcResult<AddGroupsBatchOutput>> compositeFunction = GroupUtil.createComposingFunction();
 
         final RpcResult<AddGroupsBatchOutput> addGroupBatchOutput = createAddGroupsBatchSuccessOutput();
-        final RpcResult<Void> barrierOutput = RpcResultBuilder.<Void>success().build();
-        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>> input = Pair.of(addGroupBatchOutput, barrierOutput);
+        final RpcResult<SendBarrierOutput> barrierOutput = RpcResultBuilder.<SendBarrierOutput>success().build();
+        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>> input =
+                Pair.of(addGroupBatchOutput, barrierOutput);
         final RpcResult<AddGroupsBatchOutput> composite = compositeFunction.apply(input);
 
         Assert.assertTrue(composite.isSuccessful());
@@ -159,12 +168,13 @@ public class GroupUtilTest {
 
     @Test
     public void testCreateComposingFunction_failure_success() throws Exception {
-        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>>, RpcResult<AddGroupsBatchOutput>> compositeFunction =
-                GroupUtil.createComposingFunction();
+        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>>,
+                RpcResult<AddGroupsBatchOutput>> compositeFunction = GroupUtil.createComposingFunction();
 
         final RpcResult<AddGroupsBatchOutput> addGroupBatchOutput = createAddGroupsBatchFailureOutcome();
-        final RpcResult<Void> barrierOutput = RpcResultBuilder.<Void>success().build();
-        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>> input = Pair.of(addGroupBatchOutput, barrierOutput);
+        final RpcResult<SendBarrierOutput> barrierOutput = RpcResultBuilder.<SendBarrierOutput>success().build();
+        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>> input =
+                Pair.of(addGroupBatchOutput, barrierOutput);
         final RpcResult<AddGroupsBatchOutput> composite = compositeFunction.apply(input);
 
         Assert.assertFalse(composite.isSuccessful());
@@ -174,12 +184,13 @@ public class GroupUtilTest {
 
     @Test
     public void testCreateComposingFunction_success_failure() throws Exception {
-        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>>, RpcResult<AddGroupsBatchOutput>> compositeFunction =
-                GroupUtil.createComposingFunction();
+        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>>,
+                RpcResult<AddGroupsBatchOutput>> compositeFunction = GroupUtil.createComposingFunction();
 
         final RpcResult<AddGroupsBatchOutput> addGroupBatchOutput = createAddGroupsBatchSuccessOutput();
-        final RpcResult<Void> barrierOutput = createBarrierFailureOutcome();
-        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>> input = Pair.of(addGroupBatchOutput, barrierOutput);
+        final RpcResult<SendBarrierOutput> barrierOutput = createBarrierFailureOutcome();
+        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>> input =
+                Pair.of(addGroupBatchOutput, barrierOutput);
         final RpcResult<AddGroupsBatchOutput> composite = compositeFunction.apply(input);
 
         Assert.assertFalse(composite.isSuccessful());
@@ -189,12 +200,13 @@ public class GroupUtilTest {
 
     @Test
     public void testCreateComposingFunction_failure_failure() throws Exception {
-        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>>, RpcResult<AddGroupsBatchOutput>> compositeFunction =
-                GroupUtil.createComposingFunction();
+        final Function<Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>>,
+                RpcResult<AddGroupsBatchOutput>> compositeFunction = GroupUtil.createComposingFunction();
 
         final RpcResult<AddGroupsBatchOutput> addGroupBatchOutput = createAddGroupsBatchFailureOutcome();
-        final RpcResult<Void> barrierOutput = createBarrierFailureOutcome();
-        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<Void>> input = Pair.of(addGroupBatchOutput, barrierOutput);
+        final RpcResult<SendBarrierOutput> barrierOutput = createBarrierFailureOutcome();
+        final Pair<RpcResult<AddGroupsBatchOutput>, RpcResult<SendBarrierOutput>> input =
+                Pair.of(addGroupBatchOutput, barrierOutput);
         final RpcResult<AddGroupsBatchOutput> composite = compositeFunction.apply(input);
 
         Assert.assertFalse(composite.isSuccessful());
@@ -202,8 +214,19 @@ public class GroupUtilTest {
         Assert.assertEquals(1, composite.getResult().getBatchFailedGroupsOutput().size());
     }
 
-    private RpcResult<Void> createBarrierFailureOutcome() {
-        return RpcResultBuilder.<Void>failed()
+    @Test
+    public void testExtractGroupActionsSupportBitmap() {
+        ActionType actionSupported = new ActionType(true,true, true, true, true, true, true, true, true, true, true,
+                true, true, true, true, true, true);
+        final List<Long> groupActionsSupportBitmap =
+                GroupUtil.extractGroupActionsSupportBitmap(Lists.newArrayList(actionSupported));
+        assertEquals(1, groupActionsSupportBitmap.size());
+        final Long bitmap = groupActionsSupportBitmap.get(0);
+        assertEquals(GROUP_ACTION_BITMAP, bitmap);
+    }
+
+    private RpcResult<SendBarrierOutput> createBarrierFailureOutcome() {
+        return RpcResultBuilder.<SendBarrierOutput>failed()
                 .withError(RpcError.ErrorType.APPLICATION, "ut-barrier-error")
                 .build();
     }
@@ -211,7 +234,7 @@ public class GroupUtilTest {
     private RpcResult<AddGroupsBatchOutput> createAddGroupsBatchSuccessOutput() {
         return RpcResultBuilder
                 .success(new AddGroupsBatchOutputBuilder()
-                        .setBatchFailedGroupsOutput(Collections.<BatchFailedGroupsOutput>emptyList())
+                        .setBatchFailedGroupsOutput(Collections.emptyList())
                         .build())
                 .build();
     }
@@ -225,4 +248,4 @@ public class GroupUtilTest {
                 .withRpcErrors(batchOutcomeWithError.getErrors())
                 .build();
     }
-}
\ No newline at end of file
+}