public static AclTrace trace( @Nonnull IpAccessList ipAccessList, @Nonnull Flow flow, @Nullable String srcInterface, @Nonnull Map<String, IpAccessList> availableAcls, @Nonnull Map<String, IpSpace> namedIpSpaces, @Nonnull Map<String, IpSpaceMetadata> namedIpSpaceMetadata) { AclTracer tracer = new AclTracer(flow, srcInterface, availableAcls, namedIpSpaces, namedIpSpaceMetadata); tracer.trace(ipAccessList); return tracer.getTrace(); }
@Test public void testVisitEmptyIpSpace() { IpSpace ipSpace = EmptyIpSpace.INSTANCE; IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo(ipSpace.toString())); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); }
@Test public void testVisitUniverseIpSpace() { IpSpace ipSpace = UniverseIpSpace.INSTANCE; IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo(ipSpace.toString())); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); } }
@Test public void testVisitIpIpSpace() { IpSpace ipSpace = Ip.parse("1.0.0.0").toIpSpace(); IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo("1.0.0.0")); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); }
@Test public void testVisitIpWildcardIpSpace() { IpSpace ipSpace = new IpWildcard("1.0.1.4:4.3.2.1").toIpSpace(); IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo("1.0.1.4:4.3.2.1")); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); }
@Test public void testVisitPrefixIpSpace() { IpSpace ipSpace = Prefix.parse("1.0.0.0/24").toIpSpace(); IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo("1.0.0.0/24")); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); }
@Test public void testVisitAclIpSpace() { IpSpace lineIpSpace = UniverseIpSpace.INSTANCE; String lineIpSpaceName = "lineIpSpace"; IpSpaceMetadata lineIpSpaceMetadata = new IpSpaceMetadata("line_space_name", "line_space_type"); IpSpace ipSpace = AclIpSpace.of(AclIpSpaceLine.permit(lineIpSpace)); IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); IpSpaceDescriber describerWithLineMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(lineIpSpaceName, lineIpSpace), ImmutableMap.of(lineIpSpaceName, lineIpSpaceMetadata))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo("[0: universe]")); assertThat( ipSpace.accept(describerWithLineMetadata), equalTo("[0: 'line_space_type' named 'line_space_name']")); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); }
@Before public void setup() { _flow = Flow.builder() .setIngressNode("ingress") .setTag("tag") .setDstIp(Ip.parse("1.1.1.1")) .build(); _describerNoNamesNorMetadata = new IpSpaceDescriber( new AclTracer(_flow, null, ImmutableMap.of(), ImmutableMap.of(), ImmutableMap.of())); }
IpSpaceDescriber describerWithReferencerMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, IpSpaceDescriber describerWithReferencedMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, IpSpaceDescriber describerWithReferencedButNoMetadata = new IpSpaceDescriber( new AclTracer( _flow, null,
@Test public void testVisitIpWildcardSetIpSpace() { IpSpace ipSpace = IpWildcardSetIpSpace.builder() .including(new IpWildcard("1.0.0.0:1.0.1.0")) .excluding(new IpWildcard("2.0.0.0:0.1.0.1")) .build(); IpSpaceDescriber describerWithMetadata = new IpSpaceDescriber( new AclTracer( _flow, null, ImmutableMap.of(), ImmutableMap.of(TEST_NAME, ipSpace), ImmutableMap.of(TEST_NAME, TEST_METADATA))); assertThat(ipSpace.accept(_describerNoNamesNorMetadata), equalTo(ipSpace.toString())); assertThat(ipSpace.accept(describerWithMetadata), equalTo(TEST_METADATA_DESCRIPTION)); }