summaryrefslogtreecommitdiffstats
path: root/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util
diff options
context:
space:
mode:
Diffstat (limited to 'acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util')
-rw-r--r--acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/MacIpAceDataExtractorTest.java144
-rw-r--r--acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/StandardAceDataExtractorTest.java327
-rw-r--r--acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/acl/AclInterfaceAssignmentRequestTest.java20
-rw-r--r--acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/macip/MacIpInterfaceAssignmentRequestTest.java24
-rw-r--r--acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/protocol/ProtocolParsingTest.java143
5 files changed, 333 insertions, 325 deletions
diff --git a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/MacIpAceDataExtractorTest.java b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/MacIpAceDataExtractorTest.java
index ea01cedb6..5375ee429 100644
--- a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/MacIpAceDataExtractorTest.java
+++ b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/MacIpAceDataExtractorTest.java
@@ -17,7 +17,6 @@
package io.fd.hc2vpp.acl.util.ace.extractor;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
@@ -25,114 +24,56 @@ import io.fd.hc2vpp.common.test.util.CommonTests;
import io.fd.vpp.jvpp.acl.types.MacipAclRule;
import java.util.Arrays;
import org.junit.Test;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.AceBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.ActionsBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.MatchesBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.actions.packet.handling.DenyBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.actions.packet.handling.PermitBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.VppMacipAce;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.VppMacipAceBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.macip.ace.VppMacipAceNodesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.macip.ace.vpp.macip.ace.nodes.AceIpVersion;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.macip.ace.vpp.macip.ace.nodes.ace.ip.version.AceIpv4;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.macip.ace.vpp.macip.ace.nodes.ace.ip.version.AceIpv4Builder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.macip.ace.vpp.macip.ace.nodes.ace.ip.version.AceIpv6;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.macip.ace.vpp.macip.ace.nodes.ace.ip.version.AceIpv6Builder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.Accept;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.Drop;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.AceBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.ActionsBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.L3;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.Ipv4;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.Ipv6;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv4.header.fields.source.network.SourceIpv4Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv4.header.fields.source.network.SourceIpv4NetworkBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv6.header.fields.source.network.SourceIpv6Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv6.header.fields.source.network.SourceIpv6NetworkBuilder;
public class MacIpAceDataExtractorTest extends AceDataExtractorTestCase implements MacIpAceDataExtractor, CommonTests {
@Test
- public void testFromMacIpAce() {
- verifyExceptionalCase(() -> fromMacIpAce(new AceBuilder().build()), IllegalArgumentException.class);
- verifyExceptionalCase(() -> fromMacIpAce(new AceBuilder().setMatches(new MatchesBuilder().build()).build()),
- IllegalArgumentException.class);
-
- final VppMacipAce macipAce = new VppMacipAceBuilder().build();
- assertEquals(macipAce, fromMacIpAce(new AceBuilder().setMatches(new MatchesBuilder()
- .setAceType(macipAce).build()).build()));
- }
-
- @Test
- public void testMacIpIsIpv6() {
- assertFalse(macIpIsIpv6(new VppMacipAceBuilder().build()));
- assertFalse(macIpIsIpv6(
- new VppMacipAceBuilder().setVppMacipAceNodes(new VppMacipAceNodesBuilder().build()).build()));
- assertFalse(macIpIsIpv6(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build()));
- assertTrue(macIpIsIpv6(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build()));
- }
-
- @Test
public void testSourceMacAsBytes() {
- assertTrue(Arrays.equals(DEFAULT_MAC_ADDRESS_BYTES, sourceMacAsBytes(new VppMacipAceBuilder().build())));
- assertTrue(
- Arrays.equals(DEFAULT_MAC_ADDRESS_BYTES, sourceMacAsBytes(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(MAC_ADDRESS_BYTES,
- sourceMacAsBytes(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setSourceMacAddress(MAC_ADDRESS).build())
- .build())));
+ assertTrue(Arrays.equals(MAC_ADDRESS_BYTES, sourceMacAsBytes(MAC_ADDRESS)));
}
@Test
public void sourceMacMaskAsBytes() {
- assertTrue(Arrays.equals(DEFAULT_MAC_ADDRESS_BYTES, sourceMacMaskAsBytes(new VppMacipAceBuilder().build())));
- assertTrue(Arrays.equals(DEFAULT_MAC_ADDRESS_BYTES,
- sourceMacMaskAsBytes(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(MAC_ADDRESS_BYTES,
- sourceMacMaskAsBytes(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setSourceMacAddressMask(MAC_ADDRESS).build())
- .build())));
+ assertTrue(Arrays.equals(MAC_ADDRESS_BYTES, sourceMacMaskAsBytes(MAC_ADDRESS)));
}
@Test
public void testIpv4Address() {
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4Address(new VppMacipAceBuilder().build())));
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4Address(
- new VppMacipAceBuilder().setVppMacipAceNodes(new VppMacipAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4Address(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build())));
- assertTrue(Arrays.equals(IPV4_PREFIX_BYTES, ipv4Address(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv4Builder()
- .setSourceIpv4Network(IPV4_PREFIX).build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4Address(new SourceIpv4NetworkBuilder().build())));
+ assertTrue(Arrays.equals(IPV4_PREFIX_BYTES,
+ ipv4Address(new SourceIpv4NetworkBuilder().setSourceIpv4Network(IPV4_PREFIX).build())));
}
@Test
public void testIpv4AddressPrefix() {
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4AddressPrefix(new VppMacipAceBuilder().build()));
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4AddressPrefix(
- new VppMacipAceBuilder().setVppMacipAceNodes(new VppMacipAceNodesBuilder().build()).build()));
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4AddressPrefix(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build()));
- assertEquals(IPV4_PREFIX_VALUE, ipv4AddressPrefix(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv4Builder()
- .setSourceIpv4Network(IPV4_PREFIX).build()).build()).build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4AddressPrefix(new SourceIpv4NetworkBuilder().build()));
+ assertEquals(IPV4_PREFIX_VALUE,
+ ipv4AddressPrefix(new SourceIpv4NetworkBuilder().setSourceIpv4Network(IPV4_PREFIX).build()));
}
@Test
public void testIpv6Address() {
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6Address(new VppMacipAceBuilder().build())));
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6Address(
- new VppMacipAceBuilder().setVppMacipAceNodes(new VppMacipAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6Address(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build())));
- assertTrue(Arrays.equals(IPV6_PREFIX_BYTES, ipv6Address(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv6Builder()
- .setSourceIpv6Network(IPV6_PREFIX).build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6Address(new SourceIpv6NetworkBuilder().build())));
+ assertTrue(Arrays.equals(IPV6_PREFIX_BYTES,
+ ipv6Address(new SourceIpv6NetworkBuilder().setSourceIpv6Network(IPV6_PREFIX).build())));
}
@Test
public void testIpv6AddressPrefix() {
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6AddressPrefix(new VppMacipAceBuilder().build()));
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6AddressPrefix(
- new VppMacipAceBuilder().setVppMacipAceNodes(new VppMacipAceNodesBuilder().build()).build()));
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6AddressPrefix(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build()));
- assertEquals(IPV6_PREFIX_VALUE, ipv6AddressPrefix(new VppMacipAceBuilder().setVppMacipAceNodes(
- new VppMacipAceNodesBuilder().setAceIpVersion(new AceIpv6Builder()
- .setSourceIpv6Network(IPV6_PREFIX).build()).build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6AddressPrefix(new SourceIpv6NetworkBuilder().build()));
+ assertEquals(IPV6_PREFIX_VALUE,
+ ipv6AddressPrefix(new SourceIpv6NetworkBuilder().setSourceIpv6Network(IPV6_PREFIX).build()));
}
@Test
@@ -141,11 +82,10 @@ public class MacIpAceDataExtractorTest extends AceDataExtractorTestCase implemen
verifyExceptionalCase(() -> macIpAction(new AceBuilder().setActions(new ActionsBuilder().build()).build()),
IllegalArgumentException.class);
// this one must pass even if deny is not fully set, because of default value definition
- assertEquals((byte) 0, macIpAction(new AceBuilder().setActions(new ActionsBuilder().setPacketHandling(
- new DenyBuilder().build()).build()).build()));
-
- assertEquals((byte) 1, macIpAction(new AceBuilder().setActions(new ActionsBuilder().setPacketHandling(
- new PermitBuilder().setPermit(true).build()).build()).build()));
+ assertEquals((byte) 0, macIpAction(
+ new AceBuilder().setActions(new ActionsBuilder().setForwarding(Drop.class).build()).build()));
+ assertEquals((byte) 1, macIpAction(
+ new AceBuilder().setActions(new ActionsBuilder().setForwarding(Accept.class).build()).build()));
}
@Test
@@ -156,9 +96,10 @@ public class MacIpAceDataExtractorTest extends AceDataExtractorTestCase implemen
rule.srcIpAddr = IPV4_PREFIX_BYTES;
rule.srcIpPrefixLen = IPV4_PREFIX_VALUE;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv4);
- assertEquals(IPV4_PREFIX, AceIpv4.class.cast(result).getSourceIpv4Network());
+ final L3 result = parseMacIpAceL3(rule);
+ assertEquals(Ipv4.class, result.getImplementedInterface());
+ assertEquals(IPV4_PREFIX,
+ ((SourceIpv4Network) ((Ipv4) result).getIpv4().getSourceNetwork()).getSourceIpv4Network());
}
@Test
@@ -167,9 +108,9 @@ public class MacIpAceDataExtractorTest extends AceDataExtractorTestCase implemen
rule.isIpv6 = 0;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv4);
- assertNull(AceIpv4.class.cast(result).getSourceIpv4Network());
+ final L3 result = parseMacIpAceL3(rule);
+ assertEquals(Ipv4.class, result.getImplementedInterface());
+ assertNull(((Ipv4) result).getIpv4());
}
@Test
@@ -180,9 +121,10 @@ public class MacIpAceDataExtractorTest extends AceDataExtractorTestCase implemen
rule.srcIpAddr = IPV6_PREFIX_BYTES;
rule.srcIpPrefixLen = IPV6_PREFIX_VALUE;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv6);
- assertEquals(IPV6_PREFIX, AceIpv6.class.cast(result).getSourceIpv6Network());
+ final L3 result = parseMacIpAceL3(rule);
+ assertEquals(Ipv6.class, result.getImplementedInterface());
+ assertEquals(IPV6_PREFIX, ((SourceIpv6Network) ((Ipv6) result).getIpv6().getSourceNetwork())
+ .getSourceIpv6Network());
}
@Test
@@ -191,9 +133,9 @@ public class MacIpAceDataExtractorTest extends AceDataExtractorTestCase implemen
rule.isIpv6 = 1;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv6);
- assertNull(AceIpv6.class.cast(result).getSourceIpv6Network());
+ final L3 result = parseMacIpAceL3(rule);
+ assertEquals(Ipv6.class, result.getImplementedInterface());
+ assertNull(((Ipv6) result).getIpv6());
}
@Test
diff --git a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/StandardAceDataExtractorTest.java b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/StandardAceDataExtractorTest.java
index f22d6600a..627dba6b0 100644
--- a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/StandardAceDataExtractorTest.java
+++ b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/ace/extractor/StandardAceDataExtractorTest.java
@@ -25,159 +25,212 @@ import io.fd.hc2vpp.common.test.util.CommonTests;
import io.fd.vpp.jvpp.acl.types.AclRule;
import java.util.Arrays;
import org.junit.Test;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.AceBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.ActionsBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.MatchesBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.actions.packet.handling.Deny;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.actions.packet.handling.DenyBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.acl.access.list.entries.ace.actions.packet.handling.Permit;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.actions.packet.handling.Stateful;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.actions.packet.handling.StatefulBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.VppAce;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.VppAceBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.ace.VppAceNodesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.ace.vpp.ace.nodes.AceIpVersion;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.ace.vpp.ace.nodes.ace.ip.version.AceIpv4;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.ace.vpp.ace.nodes.ace.ip.version.AceIpv4Builder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.ace.vpp.ace.nodes.ace.ip.version.AceIpv6;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.vpp.ace.vpp.ace.nodes.ace.ip.version.AceIpv6Builder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.IcmpBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.IcmpV6Builder;
+import org.opendaylight.yang.gen.v1.http.fd.io.hc2vpp.yang.vpp.acl.rev181022.AcceptAndReflect;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.Accept;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.Drop;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.AceBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.ActionsBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.MatchesBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.L3;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.Ipv4;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.Ipv4Builder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.Ipv6;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.Ipv6Builder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv4.header.fields.destination.network.DestinationIpv4Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv4.header.fields.destination.network.DestinationIpv4NetworkBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv4.header.fields.source.network.SourceIpv4Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv4.header.fields.source.network.SourceIpv4NetworkBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv6.header.fields.destination.network.DestinationIpv6Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv6.header.fields.destination.network.DestinationIpv6NetworkBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv6.header.fields.source.network.SourceIpv6Network;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.acl.ipv6.header.fields.source.network.SourceIpv6NetworkBuilder;
public class StandardAceDataExtractorTest extends AceDataExtractorTestCase implements StandardAceDataExtractor,
CommonTests {
@Test
- public void testFromStandardAce() {
- verifyExceptionalCase(() -> fromStandardAce(new AceBuilder().build()), IllegalArgumentException.class);
- verifyExceptionalCase(() -> fromStandardAce(new AceBuilder().setMatches(new MatchesBuilder().build()).build()),
- IllegalArgumentException.class);
-
- final VppAce ace = new VppAceBuilder().build();
- assertEquals(ace, fromStandardAce(new AceBuilder().setMatches(new MatchesBuilder()
- .setAceType(ace).build()).build()));
- }
-
- @Test
public void testStandardIsIpv6WithoutMatch() {
- assertFalse(standardIsIpv6(new VppAceBuilder().build(), null));
- assertFalse(standardIsIpv6(new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build(), null));
- assertFalse(standardIsIpv6(new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder()
- .setIpProtocol(new IcmpBuilder().build()).build()).build(), null));
- assertTrue(standardIsIpv6(new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder()
- .setIpProtocol(new IcmpV6Builder().build()).build()).build(), null));
- }
-
- @Test
- public void testStandardIsIpv6WithMatch() {
- final VppAce ipv6Ace = new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder()
- .setIpProtocol(new IcmpV6Builder().build()).build()).build();
-
- assertTrue(standardIsIpv6(ipv6Ace, new MatchesBuilder().build()));
- assertTrue(standardIsIpv6(ipv6Ace, new MatchesBuilder().setAceType(new VppAceBuilder().build()).build()));
- assertTrue(standardIsIpv6(ipv6Ace, new MatchesBuilder().setAceType(new VppAceBuilder()
- .setVppAceNodes(new VppAceNodesBuilder().build())
- .build()).build()));
- assertFalse(standardIsIpv6(ipv6Ace, new MatchesBuilder().setAceType(new VppAceBuilder()
- .setVppAceNodes(new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build())
- .build()).build()));
+ assertFalse(standardIsIpv6(null));
+ assertFalse(standardIsIpv6(new MatchesBuilder().build()));
+ assertFalse(standardIsIpv6(new MatchesBuilder().setL3(new Ipv6Builder().build()).build()));
+ assertTrue(standardIsIpv6(new MatchesBuilder().setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .build()).build()).build()));
}
@Test
public void testIpv4SourceAddress() {
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4SourceAddress(new VppAceBuilder().build())));
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4SourceAddress(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4SourceAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build())));
- assertTrue(Arrays.equals(IPV4_PREFIX_BYTES, ipv4SourceAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder()
- .setSourceIpv4Network(IPV4_PREFIX).build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4SourceAddress(new MatchesBuilder().build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES,
+ ipv4SourceAddress(new MatchesBuilder().setL3(new Ipv4Builder().build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4SourceAddress(new MatchesBuilder()
+ .setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4SourceAddress(new MatchesBuilder()
+ .setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setSourceNetwork(new SourceIpv4NetworkBuilder().build()).build()).build()).build())));
+ assertTrue(Arrays.equals(IPV4_PREFIX_BYTES, ipv4SourceAddress(new MatchesBuilder()
+ .setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setSourceNetwork(
+ new SourceIpv4NetworkBuilder().setSourceIpv4Network(IPV4_PREFIX).build())
+ .build()).build()).build())));
}
@Test
public void testIpv4SourceAddressPrefix() {
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new VppAceBuilder().build()));
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build()));
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build()));
- assertEquals(IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder()
- .setSourceIpv4Network(IPV4_PREFIX).build()).build()).build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new MatchesBuilder().build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE,
+ ipv4SourceAddressPrefix(new MatchesBuilder().setL3(new Ipv4Builder().build()).build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .build()).build()).build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setSourceNetwork(new SourceIpv4NetworkBuilder().build()).build()).build()).build()));
+ assertEquals(IPV4_PREFIX_VALUE, ipv4SourceAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setSourceNetwork(
+ new SourceIpv4NetworkBuilder().setSourceIpv4Network(IPV4_PREFIX).build())
+ .build()).build()).build()));
}
@Test
public void testIpv4DestinationAddress() {
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4DestinationAddress(new VppAceBuilder().build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4DestinationAddress(new MatchesBuilder().build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4DestinationAddress(
+ new MatchesBuilder().setL3(new Ipv4Builder().build()).build())));
assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4DestinationAddress(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4DestinationAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build())));
- assertTrue(Arrays.equals(IPV4_PREFIX_BYTES, ipv4DestinationAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder()
- .setDestinationIpv4Network(IPV4_PREFIX).build()).build()).build())));
+ new MatchesBuilder().setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV4_ADDRESS_BYTES, ipv4DestinationAddress(
+ new MatchesBuilder().setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setDestinationNetwork(new DestinationIpv4NetworkBuilder()
+ .build()).build()).build()).build())));
+ assertTrue(Arrays.equals(IPV4_PREFIX_BYTES, ipv4DestinationAddress(
+ new MatchesBuilder().setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setDestinationNetwork(
+ new DestinationIpv4NetworkBuilder().setDestinationIpv4Network(IPV4_PREFIX)
+ .build()).build()).build()).build())));
}
@Test
public void testIpv4DestinationAddressPrefix() {
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(new VppAceBuilder().build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(new MatchesBuilder().build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(
+ new MatchesBuilder().setL3(new Ipv4Builder().build()).build()));
assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build()));
- assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder().build()).build()).build()));
- assertEquals(IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv4Builder()
- .setDestinationIpv4Network(IPV4_PREFIX).build()).build()).build()));
+ new MatchesBuilder().setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .build()).build()).build()));
+ assertEquals(DEFAULT_IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(
+ new MatchesBuilder().setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setDestinationNetwork(new DestinationIpv4NetworkBuilder()
+ .build()).build()).build()).build()));
+ assertEquals(IPV4_PREFIX_VALUE, ipv4DestinationAddressPrefix(
+ new MatchesBuilder().setL3(new Ipv4Builder().setIpv4(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv4.Ipv4Builder()
+ .setDestinationNetwork(
+ new DestinationIpv4NetworkBuilder().setDestinationIpv4Network(IPV4_PREFIX)
+ .build()).build()).build()).build()));
}
@Test
public void testIpv6SourceAddress() {
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6SourceAddress(new VppAceBuilder().build())));
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6SourceAddress(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6SourceAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build())));
- assertTrue(Arrays.equals(IPV6_PREFIX_BYTES, ipv6SourceAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder()
- .setSourceIpv6Network(IPV6_PREFIX).build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6SourceAddress(new MatchesBuilder().build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES,
+ ipv6SourceAddress(new MatchesBuilder().setL3(new Ipv6Builder().build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6SourceAddress(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6SourceAddress(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setSourceNetwork(new SourceIpv6NetworkBuilder().build()).build()).build()).build())));
+ assertTrue(Arrays.equals(IPV6_PREFIX_BYTES, ipv6SourceAddress(new MatchesBuilder().setL3(new Ipv6Builder()
+ .setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setSourceNetwork(
+ new SourceIpv6NetworkBuilder().setSourceIpv6Network(IPV6_PREFIX).build())
+ .build()).build()).build())));
}
@Test
public void ipv6SourceAddressPrefix() {
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new VppAceBuilder().build()));
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build()));
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build()));
- assertEquals(IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder()
- .setSourceIpv6Network(IPV6_PREFIX).build()).build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new MatchesBuilder().build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE,
+ ipv6SourceAddressPrefix(new MatchesBuilder().setL3(new Ipv6Builder().build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .build()).build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setSourceNetwork(new SourceIpv6NetworkBuilder().build()).build()).build()).build()));
+ assertEquals(IPV6_PREFIX_VALUE, ipv6SourceAddressPrefix(new MatchesBuilder().setL3(new Ipv6Builder()
+ .setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setSourceNetwork(
+ new SourceIpv6NetworkBuilder().setSourceIpv6Network(IPV6_PREFIX).build())
+ .build()).build()).build()));
}
@Test
public void ipv6DestinationAddress() {
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6DestinationAddress(new VppAceBuilder().build())));
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6DestinationAddress(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build())));
- assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6DestinationAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build())));
- assertTrue(Arrays.equals(IPV6_PREFIX_BYTES, ipv6DestinationAddress(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder()
- .setDestinationIpv6Network(IPV6_PREFIX).build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6DestinationAddress(new MatchesBuilder().build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES,
+ ipv6DestinationAddress(new MatchesBuilder().setL3(new Ipv6Builder().build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6DestinationAddress(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .build()).build()).build())));
+ assertTrue(Arrays.equals(DEFAULT_IPV6_ADDRESS_BYTES, ipv6DestinationAddress(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setDestinationNetwork(new DestinationIpv6NetworkBuilder().build()).build()).build())
+ .build())));
+ assertTrue(Arrays.equals(IPV6_PREFIX_BYTES, ipv6DestinationAddress(new MatchesBuilder().setL3(new Ipv6Builder()
+ .setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setDestinationNetwork(
+ new DestinationIpv6NetworkBuilder().setDestinationIpv6Network(IPV6_PREFIX)
+ .build())
+ .build()).build()).build())));
}
@Test
public void ipv6DestinationAddressPrefix() {
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new VppAceBuilder().build()));
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(
- new VppAceBuilder().setVppAceNodes(new VppAceNodesBuilder().build()).build()));
- assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder().build()).build()).build()));
- assertEquals(IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new VppAceBuilder().setVppAceNodes(
- new VppAceNodesBuilder().setAceIpVersion(new AceIpv6Builder()
- .setDestinationIpv6Network(IPV6_PREFIX).build()).build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new MatchesBuilder().build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE,
+ ipv6DestinationAddressPrefix(new MatchesBuilder().setL3(new Ipv6Builder().build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .build()).build()).build()));
+ assertEquals(DEFAULT_IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new MatchesBuilder()
+ .setL3(new Ipv6Builder().setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setDestinationNetwork(new DestinationIpv6NetworkBuilder().build()).build()).build())
+ .build()));
+ assertEquals(IPV6_PREFIX_VALUE, ipv6DestinationAddressPrefix(new MatchesBuilder().setL3(new Ipv6Builder()
+ .setIpv6(
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l3.ipv6.Ipv6Builder()
+ .setDestinationNetwork(
+ new DestinationIpv6NetworkBuilder().setDestinationIpv6Network(IPV6_PREFIX)
+ .build())
+ .build()).build()).build()));
}
@Test
@@ -188,12 +241,10 @@ public class StandardAceDataExtractorTest extends AceDataExtractorTestCase imple
// this one should pass because of default value
assertEquals(0, standardAction(
- new AceBuilder().setActions(new ActionsBuilder().setPacketHandling(new DenyBuilder().build()).build())
- .build()));
+ new AceBuilder().setActions(new ActionsBuilder().setForwarding(Drop.class).build()).build()));
assertEquals(2, standardAction(new AceBuilder().setActions(
- new ActionsBuilder().setPacketHandling(new StatefulBuilder().setPermitAndReflect(true).build()).build())
- .build()));
+ new ActionsBuilder().setForwarding(AcceptAndReflect.class).build()).build()));
}
@Test
@@ -206,10 +257,13 @@ public class StandardAceDataExtractorTest extends AceDataExtractorTestCase imple
rule.dstIpAddr = IPV4_2_PREFIX_BYTES;
rule.dstIpPrefixLen = IPV4_2_PREFIX_VALUE;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv4);
- assertEquals(IPV4_PREFIX, AceIpv4.class.cast(result).getSourceIpv4Network());
- assertEquals(IPV4_2_PREFIX, AceIpv4.class.cast(result).getDestinationIpv4Network());
+ final L3 result = parseStandardAceL3(rule);
+ assertEquals(result.getImplementedInterface(), Ipv4.class);
+ assertEquals(IPV4_PREFIX,
+ ((SourceIpv4Network) ((Ipv4) result).getIpv4().getSourceNetwork()).getSourceIpv4Network());
+ assertEquals(IPV4_2_PREFIX,
+ ((DestinationIpv4Network) ((Ipv4) result).getIpv4().getDestinationNetwork())
+ .getDestinationIpv4Network());
}
@Test
@@ -218,10 +272,10 @@ public class StandardAceDataExtractorTest extends AceDataExtractorTestCase imple
rule.isIpv6 = 0;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv4);
- assertNull(AceIpv4.class.cast(result).getSourceIpv4Network());
- assertNull(AceIpv4.class.cast(result).getDestinationIpv4Network());
+ final L3 result = parseStandardAceL3(rule);
+ assertEquals(result.getImplementedInterface(), Ipv4.class);
+ assertNull(((Ipv4) result).getIpv4().getSourceNetwork());
+ assertNull(((Ipv4) result).getIpv4().getDestinationNetwork());
}
@Test
@@ -234,10 +288,13 @@ public class StandardAceDataExtractorTest extends AceDataExtractorTestCase imple
rule.dstIpAddr = IPV6_2_PREFIX_BYTES;
rule.dstIpPrefixLen = IPV6_2_PREFIX_VALUE;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv6);
- assertEquals(IPV6_PREFIX, AceIpv6.class.cast(result).getSourceIpv6Network());
- assertEquals(IPV6_2_PREFIX, AceIpv6.class.cast(result).getDestinationIpv6Network());
+ final L3 result = parseStandardAceL3(rule);
+ assertEquals(result.getImplementedInterface(), Ipv6.class);
+ assertEquals(IPV6_PREFIX,
+ ((SourceIpv6Network) ((Ipv6) result).getIpv6().getSourceNetwork()).getSourceIpv6Network());
+ assertEquals(IPV6_2_PREFIX,
+ ((DestinationIpv6Network) ((Ipv6) result).getIpv6().getDestinationNetwork())
+ .getDestinationIpv6Network());
}
@Test
@@ -246,19 +303,17 @@ public class StandardAceDataExtractorTest extends AceDataExtractorTestCase imple
rule.isIpv6 = 1;
- final AceIpVersion result = ipVersion(rule);
- assertTrue(result instanceof AceIpv6);
- assertNull(AceIpv6.class.cast(result).getSourceIpv6Network());
- assertNull(AceIpv6.class.cast(result).getDestinationIpv6Network());
+ final L3 result = parseStandardAceL3(rule);
+ assertEquals(result.getImplementedInterface(), Ipv6.class);
+ assertNull((((Ipv6) result).getIpv6().getSourceNetwork()));
+ assertNull((((Ipv6) result).getIpv6().getDestinationNetwork()));
}
@Test
public void testActions() {
verifyExceptionalCase(() -> actions((byte) -1), IllegalArgumentException.class);
- assertTrue(actions((byte) 0).getPacketHandling() instanceof Deny);
- assertTrue(actions((byte) 1).getPacketHandling() instanceof Permit);
- assertTrue(actions((byte) 2).getPacketHandling() instanceof Stateful);
+ assertTrue(actions((byte) 0).getForwarding().equals(Drop.class));
+ assertTrue(actions((byte) 1).getForwarding().equals(Accept.class));
}
-
} \ No newline at end of file
diff --git a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/acl/AclInterfaceAssignmentRequestTest.java b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/acl/AclInterfaceAssignmentRequestTest.java
index fb5d61458..1b7cf8c32 100644
--- a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/acl/AclInterfaceAssignmentRequestTest.java
+++ b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/acl/AclInterfaceAssignmentRequestTest.java
@@ -16,19 +16,20 @@
package io.fd.hc2vpp.acl.util.iface.acl;
-import static io.fd.hc2vpp.acl.util.iface.acl.AclInterfaceAssignmentRequest.create;
+import static io.fd.hc2vpp.acl.write.request.AclInterfaceAssignmentRequest.create;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
import com.google.common.collect.ImmutableList;
+import io.fd.hc2vpp.acl.AclIIds;
import io.fd.hc2vpp.acl.util.AclContextManager;
+import io.fd.hc2vpp.acl.write.request.AclInterfaceAssignmentRequest;
import io.fd.hc2vpp.common.test.util.FutureProducer;
import io.fd.hc2vpp.common.test.util.NamingContextHelper;
import io.fd.hc2vpp.common.translate.util.NamingContext;
@@ -43,11 +44,8 @@ import org.junit.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Captor;
import org.mockito.Mock;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.Interfaces;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.InterfaceKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang._interface.acl.rev161214.VppAclInterfaceAugmentation;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang._interface.acl.rev161214._interface.acl.attributes.Acl;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.attachment.points.Interface;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.attachment.points.InterfaceKey;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
public class AclInterfaceAssignmentRequestTest implements NamingContextHelper, FutureProducer {
@@ -76,7 +74,7 @@ public class AclInterfaceAssignmentRequestTest implements NamingContextHelper, F
@Mock
private MappingContext mappingContext;
- private InstanceIdentifier<Acl> validIdentifier;
+ private InstanceIdentifier<Interface> validIdentifier;
private NamingContext interfaceContext;
@Mock
@@ -86,10 +84,8 @@ public class AclInterfaceAssignmentRequestTest implements NamingContextHelper, F
public void setUp() {
initMocks(this);
- validIdentifier = InstanceIdentifier.create(Interfaces.class).
- child(Interface.class, new InterfaceKey(INTERFACE_NAME))
- .augmentation(VppAclInterfaceAugmentation.class)
- .child(Acl.class);
+ validIdentifier = AclIIds.ACLS_AP
+ .child(Interface.class, new InterfaceKey(INTERFACE_NAME));
interfaceContext = new NamingContext("iface", "interface-context");
diff --git a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/macip/MacIpInterfaceAssignmentRequestTest.java b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/macip/MacIpInterfaceAssignmentRequestTest.java
index a7049b77f..145eec38e 100644
--- a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/macip/MacIpInterfaceAssignmentRequestTest.java
+++ b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/iface/macip/MacIpInterfaceAssignmentRequestTest.java
@@ -16,8 +16,8 @@
package io.fd.hc2vpp.acl.util.iface.macip;
-import static io.fd.hc2vpp.acl.util.iface.macip.MacIpInterfaceAssignmentRequest.addNew;
-import static io.fd.hc2vpp.acl.util.iface.macip.MacIpInterfaceAssignmentRequest.deleteExisting;
+import static io.fd.hc2vpp.acl.write.request.MacIpInterfaceAssignmentRequest.addNew;
+import static io.fd.hc2vpp.acl.write.request.MacIpInterfaceAssignmentRequest.deleteExisting;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.fail;
@@ -27,7 +27,9 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
+import io.fd.hc2vpp.acl.AclIIds;
import io.fd.hc2vpp.acl.util.AclContextManager;
+import io.fd.hc2vpp.acl.write.request.MacIpInterfaceAssignmentRequest;
import io.fd.hc2vpp.common.test.util.FutureProducer;
import io.fd.hc2vpp.common.test.util.NamingContextHelper;
import io.fd.hc2vpp.common.translate.util.NamingContext;
@@ -41,13 +43,8 @@ import org.junit.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Captor;
import org.mockito.Mock;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.Interfaces;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.Interface;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.InterfaceKey;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang._interface.acl.rev161214.VppAclInterfaceAugmentation;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang._interface.acl.rev161214._interface.acl.attributes.Acl;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang._interface.acl.rev161214._interface.acl.attributes.acl.Ingress;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang._interface.acl.rev161214.vpp.macip.acls.base.attributes.VppMacipAcl;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.attachment.points.Interface;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.attachment.points.InterfaceKey;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
public class MacIpInterfaceAssignmentRequestTest implements NamingContextHelper,FutureProducer {
@@ -66,7 +63,7 @@ public class MacIpInterfaceAssignmentRequestTest implements NamingContextHelper,
@Mock
private MappingContext mappingContext;
- private InstanceIdentifier<VppMacipAcl> validIdentifier;
+ private InstanceIdentifier<Interface> validIdentifier;
private NamingContext interfaceContext;
@Mock
private AclContextManager macIpAclContext;
@@ -75,12 +72,7 @@ public class MacIpInterfaceAssignmentRequestTest implements NamingContextHelper,
public void setUp() throws Exception {
initMocks(this);
- validIdentifier = InstanceIdentifier.create(Interfaces.class).
- child(Interface.class, new InterfaceKey(INTERFACE_NAME))
- .augmentation(VppAclInterfaceAugmentation.class)
- .child(Acl.class)
- .child(Ingress.class)
- .child(VppMacipAcl.class);
+ validIdentifier = AclIIds.ACLS_AP.child(Interface.class, new InterfaceKey(INTERFACE_NAME));
interfaceContext = new NamingContext("iface", "interface-context");
diff --git a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/protocol/ProtocolParsingTest.java b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/protocol/ProtocolParsingTest.java
index 08fe6f38b..170080b66 100644
--- a/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/protocol/ProtocolParsingTest.java
+++ b/acl/acl-impl/src/test/java/io/fd/hc2vpp/acl/util/protocol/ProtocolParsingTest.java
@@ -24,41 +24,44 @@ import io.fd.honeycomb.test.tools.annotations.InjectTestData;
import io.fd.vpp.jvpp.acl.types.AclRule;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.AccessLists;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.access.lists.acl.access.list.entries.ace.matches.ace.type.VppAce;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.Icmp;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.IcmpV6;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.Other;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.Tcp;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev170615.acl.ip.protocol.header.fields.ip.protocol.Udp;
+import org.opendaylight.yang.gen.v1.http.fd.io.hc2vpp.yang.vpp.acl.rev181022.VppIcmpAceAugmentation;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.Acls;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.Ace;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.Icmp;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.Tcp;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.Udp;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.tcp.tcp.source.port.source.port.RangeOrOperator;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.packet.fields.rev181001.port.range.or.operator.port.range.or.operator.Range;
@RunWith(HoneycombTestRunner.class)
public class ProtocolParsingTest implements ProtoPreBindRuleProducer, IpProtocolReader, AclTestSchemaContext {
private static final byte IGNORE_PROTOCOL = 0;
- //TODO - remove after resolving how to address identity from different model in textual yang instance identifier
- private VppAce extractAce(AccessLists accessLists) {
- return VppAce.class
- .cast(accessLists.getAcl().get(0).getAccessListEntries().getAce().get(0).getMatches().getAceType());
+ private Ace extractAce(Acls acls) {
+ return acls.getAcl().get(0).getAces().getAce().get(0);
}
@Test
- public void testIcmpRule(@InjectTestData(resourcePath = "/rules/icmp-rule.json") AccessLists acls) {
+ public void testIcmpRule(@InjectTestData(resourcePath = "/rules/icmp-rule.json") Acls acls) {
final AclRule icmpRule = createPreBindRule(extractAce(acls));
assertEquals(1, icmpRule.proto);
assertEquals(0, icmpRule.tcpFlagsMask);
assertEquals(0, icmpRule.tcpFlagsValue);
- final Icmp protocol = (Icmp)parseProtocol(icmpRule);
- assertEquals(5, protocol.getIcmpNodes().getIcmpTypeRange().getFirst().shortValue());
- assertEquals(8, protocol.getIcmpNodes().getIcmpTypeRange().getLast().shortValue());
- assertEquals(1, protocol.getIcmpNodes().getIcmpCodeRange().getFirst().shortValue());
- assertEquals(3, protocol.getIcmpNodes().getIcmpCodeRange().getLast().shortValue());
+ final Icmp protocol = (Icmp) parseProtocol(icmpRule);
+ assertEquals(5, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpTypeRange()
+ .getFirst().shortValue());
+ assertEquals(8, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpTypeRange()
+ .getLast().shortValue());
+ assertEquals(1, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpCodeRange()
+ .getFirst().shortValue());
+ assertEquals(3, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpCodeRange()
+ .getLast().shortValue());
}
@Test
- public void testIcmpv6Rule(@InjectTestData(resourcePath = "/rules/icmp-v6-rule.json") AccessLists acls) {
+ public void testIcmpv6Rule(@InjectTestData(resourcePath = "/rules/icmp-v6-rule.json") Acls acls) {
final AclRule icmpv6Rule = createPreBindRule(extractAce(acls));
assertEquals(58, icmpv6Rule.proto);
@@ -69,43 +72,67 @@ public class ProtocolParsingTest implements ProtoPreBindRuleProducer, IpProtocol
assertEquals(0, icmpv6Rule.tcpFlagsMask);
assertEquals(0, icmpv6Rule.tcpFlagsValue);
- final IcmpV6 protocol = (IcmpV6)parseProtocol(icmpv6Rule);
- assertEquals(5, protocol.getIcmpV6Nodes().getIcmpTypeRange().getFirst().shortValue());
- assertEquals(8, protocol.getIcmpV6Nodes().getIcmpTypeRange().getLast().shortValue());
- assertEquals(1, protocol.getIcmpV6Nodes().getIcmpCodeRange().getFirst().shortValue());
- assertEquals(3, protocol.getIcmpV6Nodes().getIcmpCodeRange().getLast().shortValue());
+ final Icmp protocol = (Icmp) parseProtocol(icmpv6Rule);
+ assertEquals(5, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpTypeRange()
+ .getFirst().shortValue());
+ assertEquals(8, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpTypeRange()
+ .getLast().shortValue());
+ assertEquals(1, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpCodeRange()
+ .getFirst().shortValue());
+ assertEquals(3, protocol.getIcmp().augmentation(VppIcmpAceAugmentation.class).getVppIcmpAce().getIcmpCodeRange()
+ .getLast().shortValue());
}
@Test
- public void testTcpRule(@InjectTestData(resourcePath = "/rules/tcp-rule.json") AccessLists acls) {
+ public void testTcpRule(@InjectTestData(resourcePath = "/rules/tcp-rule.json") Acls acls) {
final AclRule tcpRule = createPreBindRule(extractAce(acls));
assertEquals(6, tcpRule.proto);
assertEquals(1, tcpRule.tcpFlagsMask);
assertEquals(7, tcpRule.tcpFlagsValue);
- final Tcp protocol = (Tcp)parseProtocol(tcpRule);
- assertEquals(1, protocol.getTcpNodes().getSourcePortRange().getLowerPort().getValue().intValue());
- assertEquals(5487, protocol.getTcpNodes().getSourcePortRange().getUpperPort().getValue().intValue());
- assertEquals(87, protocol.getTcpNodes().getDestinationPortRange().getLowerPort().getValue().intValue());
- assertEquals(6745, protocol.getTcpNodes().getDestinationPortRange().getUpperPort().getValue().intValue());
+ final Tcp protocol = (Tcp) parseProtocol(tcpRule);
+ assertEquals(1,
+ ((Range) ((RangeOrOperator) protocol.getTcp().getSourcePort().getSourcePort()).getPortRangeOrOperator())
+ .getLowerPort().getValue().intValue());
+ assertEquals(5487,
+ ((Range) ((RangeOrOperator) protocol.getTcp().getSourcePort().getSourcePort()).getPortRangeOrOperator())
+ .getUpperPort().getValue().intValue());
+ assertEquals(87,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.tcp.tcp.destination.port.destination.port.RangeOrOperator) protocol
+ .getTcp().getDestinationPort().getDestinationPort())
+ .getPortRangeOrOperator()).getLowerPort().getValue().intValue());
+ assertEquals(6745,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.tcp.tcp.destination.port.destination.port.RangeOrOperator) protocol
+ .getTcp().getDestinationPort().getDestinationPort())
+ .getPortRangeOrOperator()).getUpperPort().getValue().intValue());
}
@Test
- public void testTcpRuleNoFlags(@InjectTestData(resourcePath = "/rules/tcp-rule-no-flags.json") AccessLists acls) {
+ public void testTcpRuleNoFlags(@InjectTestData(resourcePath = "/rules/tcp-rule-no-flags.json") Acls acls) {
final AclRule tcpRule = createPreBindRule(extractAce(acls));
assertEquals(6, tcpRule.proto);
assertEquals(123, tcpRule.srcportOrIcmptypeFirst);
assertEquals(123, tcpRule.srcportOrIcmptypeLast);
- assertEquals((short)65000, tcpRule.dstportOrIcmpcodeFirst);
- assertEquals((short)65000, tcpRule.dstportOrIcmpcodeLast);
+ assertEquals((short) 65000, tcpRule.dstportOrIcmpcodeFirst);
+ assertEquals((short) 65000, tcpRule.dstportOrIcmpcodeLast);
assertEquals(0, tcpRule.tcpFlagsMask);
assertEquals(0, tcpRule.tcpFlagsValue);
- final Tcp protocol = (Tcp)parseProtocol(tcpRule);
- assertEquals(123, protocol.getTcpNodes().getSourcePortRange().getLowerPort().getValue().intValue());
- assertEquals(123, protocol.getTcpNodes().getSourcePortRange().getUpperPort().getValue().intValue());
- assertEquals(65000, protocol.getTcpNodes().getDestinationPortRange().getLowerPort().getValue().intValue());
- assertEquals(65000, protocol.getTcpNodes().getDestinationPortRange().getUpperPort().getValue().intValue());
+ final Tcp protocol = (Tcp) parseProtocol(tcpRule);
+ assertEquals(123,
+ ((Range) ((RangeOrOperator) protocol.getTcp().getSourcePort().getSourcePort()).getPortRangeOrOperator())
+ .getLowerPort().getValue().intValue());
+ assertEquals(123,
+ ((Range) ((RangeOrOperator) protocol.getTcp().getSourcePort().getSourcePort()).getPortRangeOrOperator())
+ .getUpperPort().getValue().intValue());
+ assertEquals(65000,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.tcp.tcp.destination.port.destination.port.RangeOrOperator) protocol
+ .getTcp().getDestinationPort().getDestinationPort())
+ .getPortRangeOrOperator()).getLowerPort().getValue().intValue());
+ assertEquals(65000,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.tcp.tcp.destination.port.destination.port.RangeOrOperator) protocol
+ .getTcp().getDestinationPort().getDestinationPort())
+ .getPortRangeOrOperator()).getUpperPort().getValue().intValue());
}
@Test
@@ -125,40 +152,36 @@ public class ProtocolParsingTest implements ProtoPreBindRuleProducer, IpProtocol
}
@Test
- public void testUdpRule(@InjectTestData(resourcePath = "/rules/udp-rule.json") AccessLists acls) {
+ public void testUdpRule(@InjectTestData(resourcePath = "/rules/udp-rule.json") Acls acls) {
final AclRule udpRule = createPreBindRule(extractAce(acls));
assertEquals(17, udpRule.proto);
assertEquals(0, udpRule.tcpFlagsMask);
assertEquals(0, udpRule.tcpFlagsValue);
- final Udp protocol = (Udp)parseProtocol(udpRule);
- assertEquals(1, protocol.getUdpNodes().getSourcePortRange().getLowerPort().getValue().intValue());
- assertEquals(5487, protocol.getUdpNodes().getSourcePortRange().getUpperPort().getValue().intValue());
- assertEquals(87, protocol.getUdpNodes().getDestinationPortRange().getLowerPort().getValue().intValue());
- assertEquals(6745, protocol.getUdpNodes().getDestinationPortRange().getUpperPort().getValue().intValue());
+ final Udp protocol = (Udp) parseProtocol(udpRule);
+ assertEquals(1,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.udp.udp.source.port.source.port.RangeOrOperator) protocol
+ .getUdp().getSourcePort().getSourcePort()).getPortRangeOrOperator())
+ .getLowerPort().getValue().intValue());
+ assertEquals(5487,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.udp.udp.source.port.source.port.RangeOrOperator) protocol
+ .getUdp().getSourcePort().getSourcePort()).getPortRangeOrOperator())
+ .getUpperPort().getValue().intValue());
+ assertEquals(87,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.udp.udp.destination.port.destination.port.RangeOrOperator) protocol
+ .getUdp().getDestinationPort().getDestinationPort())
+ .getPortRangeOrOperator()).getLowerPort().getValue().intValue());
+ assertEquals(6745,
+ ((Range) ((org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev181001.acls.acl.aces.ace.matches.l4.udp.udp.destination.port.destination.port.RangeOrOperator) protocol
+ .getUdp().getDestinationPort().getDestinationPort())
+ .getPortRangeOrOperator()).getUpperPort().getValue().intValue());
}
- @Test
- public void testOtherRule(@InjectTestData(resourcePath = "/rules/other-rule.json") AccessLists acls) {
- final AclRule rule = createPreBindRule(extractAce(acls));
- final int protocolNumber = 64;
- assertEquals(protocolNumber, rule.proto);
- assertEquals(0, rule.srcportOrIcmptypeFirst);
- assertEquals((short) 65535, rule.srcportOrIcmptypeLast);
- assertEquals(0, rule.dstportOrIcmpcodeFirst);
- assertEquals((short) 65535, rule.dstportOrIcmpcodeLast);
- assertEquals(0, rule.tcpFlagsMask);
- assertEquals(0, rule.tcpFlagsValue);
-
- final Other protocol = (Other)parseProtocol(rule);
- assertEquals(protocolNumber, protocol.getOtherNodes().getProtocol().shortValue());
- }
@Test
- public void tesProtocolNotSpecified(@InjectTestData(resourcePath = "/rules/no-protocol-rule.json") AccessLists acls) {
+ public void tesProtocolNotSpecified(@InjectTestData(resourcePath = "/rules/no-protocol-rule.json") Acls acls) {
final AclRule noProtocolRule = createPreBindRule(extractAce(acls));
assertEquals(IGNORE_PROTOCOL, noProtocolRule.proto);
}
-
} \ No newline at end of file