.collect( ImmutableSortedMap.toImmutableSortedMap( Comparator.naturalOrder(), Entry::getKey, entry -> entry.getValue().build())));
new SubRange(0, Prefix.MAX_PREFIX_LENGTH))); newProcess.setAreas(toImmutableSortedMap(areas, Entry::getKey, e -> e.getValue().build()));
@Test public void testOspfAreaBuilder() { NetworkFactory nf = new NetworkFactory(); Configuration c = nf.configurationBuilder().setConfigurationFormat(CONFIG_FORMAT).build(); Vrf vrf = nf.vrfBuilder().setOwner(c).build(); OspfProcess.Builder ob = nf.ospfProcessBuilder(); OspfProcess ospfProcess = ob.setVrf(vrf).build(); OspfArea.Builder oab = nf.ospfAreaBuilder(); OspfArea oa1 = oab.build(); OspfArea oa2 = oab.setOspfProcess(ospfProcess).build(); Interface iface = nf.interfaceBuilder().setOwner(c).setActive(false).setVrf(vrf).setOspfArea(oa2).build(); assertThat(oa1.getAreaNumber(), not(equalTo(oa2.getAreaNumber()))); assertThat(oa1, not(sameInstance(oa2))); assertThat(ospfProcess.getAreas().get(oa2.getAreaNumber()), sameInstance(oa2)); assertThat(oa2, OspfAreaMatchers.hasInterfaces(hasItem(iface.getName()))); assertThat(iface.getOspfAreaName(), equalTo(oa2.getAreaNumber())); } }
@Test public void testGetOspfEdges() { OspfProcess ospf1 = OspfProcess.builder().setReferenceBandwidth(1e8).build(); OspfProcess ospf2 = OspfProcess.builder().setReferenceBandwidth(1e8).build(); NetworkFactory nf = new NetworkFactory(); OspfArea.builder(nf).setNumber(1L).setOspfProcess(ospf1).addInterface("int1").build(); OspfArea.builder(nf).setNumber(1L).setOspfProcess(ospf2).addInterface("int2").build(); Vrf vrf1 = new Vrf("vrf1"); vrf1.setOspfProcess(ospf1); Vrf vrf2 = new Vrf("vrf2"); vrf2.setOspfProcess(ospf2); _host1.setVrfs(ImmutableSortedMap.of("vrf1", vrf1)); _host2.setVrfs(ImmutableSortedMap.of("vrf2", vrf2)); _host1.getAllInterfaces().get("int1").setVrf(vrf1); _host2.getAllInterfaces().get("int2").setVrf(vrf2); Multiset<Row> rows = getOspfEdges(_configurations, _includeNodes, _includeRemoteNodes, _topology); assertThat( rows, contains( allOf( hasColumn( COL_INTERFACE, equalTo(new NodeInterfacePair("host1", "int1")), Schema.INTERFACE), hasColumn( COL_REMOTE_INTERFACE, equalTo(new NodeInterfacePair("host2", "int2")), Schema.INTERFACE)))); }