Bug 5540 - ActionConvertor, ActionResponseConvertor
[openflowplugin.git] / openflowplugin / src / test / java / org / opendaylight / openflowplugin / openflow / md / core / sal / convertor / MeterConvertorTest.java
index fc2ab5d42f295959715024d62a8037549facdcb1..1ba7d917269476e029e88f5cf49ea06b5fec4337 100644 (file)
@@ -4,8 +4,6 @@
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributor: usha.m.s@ericsson.com
  */
 package org.opendaylight.openflowplugin.openflow.md.core.sal.convertor;
 
@@ -15,10 +13,12 @@ import static org.junit.Assert.assertTrue;
 
 import java.util.ArrayList;
 import java.util.List;
-
+import java.util.Optional;
 import org.junit.Test;
+import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionConvertorData;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.AddMeterInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.AddMeterInputBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.Meter;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterBandType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterFlags;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.band.type.band.type.Drop;
@@ -32,7 +32,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.MeterBandHeader;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.MeterBandHeaderBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.meter.band.header.MeterBandTypesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.ExperimenterIdMeterBand;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev150225.ExperimenterIdMeterBand;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MeterModCommand;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MeterModInputBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.band.header.MeterBand;
@@ -42,12 +42,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.mod.Bands;
 
 public class MeterConvertorTest {
-
-
-
     @Test
     public void testMeterModCommandConvertorwithAllParameters() {
-
         long BURST_SIZE = 10L;
         long DROP_RATE = 20L;
         // / DROP Band
@@ -78,7 +74,7 @@ public class MeterConvertorTest {
         DscpRemarkBuilder dscp = new DscpRemarkBuilder();
         dscp.setDscpRemarkBurstSize(DSCP_REMARK_BURST_SIZE);
         dscp.setDscpRemarkRate(DSCP_REMARK_RATE);
-        dscp.setPercLevel(DSCP_PERC_LEVEL);
+        dscp.setPrecLevel(DSCP_PERC_LEVEL);
         DscpRemark dscpRemark = dscp.build();
         meterBandHeaderBuilder1.setBandType(dscpRemark);
         meterBandHeaderBuilder1.setMeterBandTypes(meterBandTypesB1.build());
@@ -118,14 +114,14 @@ public class MeterConvertorTest {
         AddMeterInputBuilder addMeterFromSAL = new AddMeterInputBuilder();
 
         addMeterFromSAL.setMeterBandHeaders(meterBandHeaders); // MeterBands
-                                                               // added to the
-                                                               // meter command.
+        // added to the
+        // meter command.
         Long temp = 10L;
 
         // NodeKey key = new NodeKey(new NodeId("24"));
         // InstanceIdentifier<Node> path =
         // InstanceIdentifier.builder().node(Nodes.class).node(Node.class,
-        // key).toInstance();
+        // key).build();
 
         addMeterFromSAL
                 .setMeterId(new org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterId(10L));
@@ -133,7 +129,7 @@ public class MeterConvertorTest {
         addMeterFromSAL.setFlags(flagV);
 
         AddMeterInput meterInputCommand = addMeterFromSAL.build();
-        MeterModInputBuilder outMeterModInput = MeterConvertor.toMeterModInput(meterInputCommand, (short) 0X4);
+        MeterModInputBuilder outMeterModInput = convert(meterInputCommand, new VersionConvertorData((short) 0X4));
 
         assertEquals(MeterModCommand.OFPMCADD, outMeterModInput.getCommand());
         assertTrue(outMeterModInput.getFlags().isOFPMFBURST());
@@ -176,9 +172,9 @@ public class MeterConvertorTest {
         }
 
     }
+
     @Test
     public void testMeterModCommandConvertorwithNoFlags() {
-
         long BURST_SIZE = 10L;
         long DROP_RATE = 20L;
         // / DROP Band
@@ -210,7 +206,7 @@ public class MeterConvertorTest {
 
         dscp.setDscpRemarkBurstSize(DSCP_REMARK_BURST_SIZE);
         dscp.setDscpRemarkRate(DSCP_REMARK_RATE);
-        dscp.setPercLevel(DSCP_PERC_LEVEL);
+        dscp.setPrecLevel(DSCP_PERC_LEVEL);
         DscpRemark dscpRemark = dscp.build();
         meterBandHeaderBuilder1.setBandType(dscpRemark);
         meterBandHeaderBuilder1.setMeterBandTypes(meterBandTypesB1.build());
@@ -251,21 +247,21 @@ public class MeterConvertorTest {
         AddMeterInputBuilder addMeterFromSAL = new AddMeterInputBuilder();
 
         addMeterFromSAL.setMeterBandHeaders(meterBandHeaders); // MeterBands
-                                                               // added to the
-                                                               // meter command.
+        // added to the
+        // meter command.
         Long temp = 10L;
 
         // NodeKey key = new NodeKey(new NodeId("24"));
         // InstanceIdentifier<Node> path =
         // InstanceIdentifier.builder().node(Nodes.class).node(Node.class,
-        // key).toInstance();
+        // key).build();
 
         addMeterFromSAL
                 .setMeterId(new org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterId(10L));
 
 
         AddMeterInput meterInputCommand = addMeterFromSAL.build();
-        MeterModInputBuilder outMeterModInput = MeterConvertor.toMeterModInput(meterInputCommand, (short) 0X4);
+        MeterModInputBuilder outMeterModInput = convert(meterInputCommand, new VersionConvertorData((short) 0X4));
 
         assertEquals(MeterModCommand.OFPMCADD, outMeterModInput.getCommand());
         assertFalse(outMeterModInput.getFlags().isOFPMFBURST());
@@ -309,10 +305,9 @@ public class MeterConvertorTest {
         }
 
     }
+
     @Test
     public void testMeterModCommandConvertorBandDataisNULL() {
-
-
         AddMeterInputBuilder addMeterFromSAL = new AddMeterInputBuilder();
 
         Long temp = 10L;
@@ -320,7 +315,7 @@ public class MeterConvertorTest {
         // NodeKey key = new NodeKey(new NodeId("24"));
         // InstanceIdentifier<Node> path =
         // InstanceIdentifier.builder().node(Nodes.class).node(Node.class,
-        // key).toInstance();
+        // key).build();
 
         addMeterFromSAL
                 .setMeterId(new org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterId(10L));
@@ -328,12 +323,12 @@ public class MeterConvertorTest {
         addMeterFromSAL.setFlags(flagV);
 
         AddMeterInput meterInputCommand = addMeterFromSAL.build();
-        MeterModInputBuilder outMeterModInput = MeterConvertor.toMeterModInput(meterInputCommand, (short) 0X4);
+        MeterModInputBuilder outMeterModInput = convert(meterInputCommand, new VersionConvertorData((short) 0X4));
 
         assertEquals(MeterModCommand.OFPMCADD, outMeterModInput.getCommand());
         assertTrue(outMeterModInput.getFlags().isOFPMFBURST());
         assertEquals(temp, outMeterModInput.getMeterId().getValue());
-       }
+    }
 
     @Test
     public void testMeterModCommandConvertorNoValidBandData() {
@@ -358,7 +353,7 @@ public class MeterConvertorTest {
         DscpRemarkBuilder dscp = new DscpRemarkBuilder();
         dscp.setDscpRemarkBurstSize(11L);
         dscp.setDscpRemarkRate(21L);
-        dscp.setPercLevel((short) 1);
+        dscp.setPrecLevel((short) 1);
         DscpRemark dscpRemark = dscp.build();
         meterBandHeaderBuilder1.setBandType(dscpRemark);
         meterBandHeaderBuilder1.setMeterBandTypes(meterBandTypesB1.build());
@@ -394,14 +389,14 @@ public class MeterConvertorTest {
         AddMeterInputBuilder addMeterFromSAL = new AddMeterInputBuilder();
 
         addMeterFromSAL.setMeterBandHeaders(meterBandHeaders); // MeterBands
-                                                               // added to the
-                                                               // meter command.
+        // added to the
+        // meter command.
         Long temp = 10L;
 
         // NodeKey key = new NodeKey(new NodeId("24"));
         // InstanceIdentifier<Node> path =
         // InstanceIdentifier.builder().node(Nodes.class).node(Node.class,
-        // key).toInstance();
+        // key).build();
 
         addMeterFromSAL
                 .setMeterId(new org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterId(10L));
@@ -409,7 +404,7 @@ public class MeterConvertorTest {
         addMeterFromSAL.setFlags(flagV);
 
         AddMeterInput meterInputCommand = addMeterFromSAL.build();
-        MeterModInputBuilder outMeterModInput = MeterConvertor.toMeterModInput(meterInputCommand, (short) 0X4);
+        MeterModInputBuilder outMeterModInput = convert(meterInputCommand, new VersionConvertorData((short) 0X4));
 
         assertEquals(MeterModCommand.OFPMCADD, outMeterModInput.getCommand());
         assertTrue(outMeterModInput.getFlags().isOFPMFBURST());
@@ -453,4 +448,8 @@ public class MeterConvertorTest {
 
     }
 
-}
+    private MeterModInputBuilder convert(Meter source, VersionConvertorData data) {
+        Optional<MeterModInputBuilder> outMeterModInputOptional = ConvertorManager.getInstance().convert(source, data);
+        return outMeterModInputOptional.orElse(MeterConvertor.defaultResult(data.getVersion()));
+    }
+}
\ No newline at end of file