@Nullable private Mlag toMlag(@Nullable MlagConfiguration mlag) { if (mlag == null || mlag.getDomainId() == null) { return null; } return Mlag.builder() .setId(mlag.getDomainId()) .setPeerAddress(mlag.getPeerAddress()) .setPeerInterface(mlag.getPeerLink()) .setLocalInterface(mlag.getLocalInterface()) .build(); }
@Test public void testJsonSerialization() throws IOException { Mlag m = Mlag.builder() .setId("ID") .setPeerAddress(Ip.parse("1.1.1.1")) .setLocalInterface("Ethernet1") .build(); assertThat(BatfishObjectMapper.clone(m, Mlag.class), equalTo(m)); } }
@Test public void testJavaSerialization() { Mlag m = Mlag.builder() .setId("ID") .setPeerAddress(Ip.parse("1.1.1.1")) .setLocalInterface("Ethernet1") .build(); assertThat(SerializationUtils.clone(m), equalTo(m)); }
@Test public void testConfigToRow() { Mlag m = Mlag.builder() .setId("ID") .setPeerAddress(Ip.parse("1.1.1.1")) .setPeerInterface("Port-Channel1") .build(); final String hostname = "node"; Row r = configToRow(hostname, m); assertThat( r, equalTo( Row.builder(getMetadata().toColumnMap()) .put(COL_NODE, new Node(hostname)) .put(COL_MLAG_ID, m.getId()) .put(COL_MLAG_PEER_ADDRESS, m.getPeerAddress()) .put(COL_MLAG_PEER_INTERFACE, new NodeInterfacePair(hostname, "Port-Channel1")) .put(COL_MLAG_LOCAL_INTERFACE, null) .build())); }
@Test public void testEquals() { Mlag.Builder b = Mlag.builder() .setId("id") .setLocalInterface("Vlan1") .setPeerAddress(Ip.parse("1.1.1.1")) .setPeerInterface("Eth1"); new EqualsTester() .addEqualityGroup(b.build(), b.build()) .addEqualityGroup(new Object()) .addEqualityGroup(b.setId("id2").build()) .addEqualityGroup(b.setPeerInterface("Eth2").build()) .addEqualityGroup(b.setLocalInterface("Vlan2").build()) .addEqualityGroup(b.setPeerAddress(Ip.parse("2.2.2.2")).build()) .testEquals(); }
private static ImmutableSortedMap<String, Configuration> getConfigs() { NetworkFactory nf = new NetworkFactory(); Builder cb = nf.configurationBuilder().setConfigurationFormat(ConfigurationFormat.CISCO_IOS); Configuration c1 = cb.setHostname("n1").build(); c1.setMlags(ImmutableMap.of("ID1", Mlag.builder().setId("ID1").build())); Configuration c2 = cb.setHostname("n2").build(); c2.setMlags(ImmutableMap.of("ID2", Mlag.builder().setId("ID2").build())); return ImmutableSortedMap.of("n1", c1, "n2", c2); } }