* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-
package org.opendaylight.lispflowmapping.serializer;
+import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.nio.ByteBuffer;
import java.util.ArrayList;
-
-import junitx.framework.ArrayAssert;
-
import org.junit.Test;
import org.opendaylight.lispflowmapping.lisp.serializer.MapRegisterSerializer;
import org.opendaylight.lispflowmapping.lisp.serializer.MapRegisterSerializer.Length;
import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
-import org.opendaylight.lispflowmapping.lisp.type.AddressFamilyNumberEnum;
-import org.opendaylight.lispflowmapping.lisp.util.LispAFIConvertor;
+import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
+import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.EidToLocatorRecord.Action;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.MapRegister;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.eidtolocatorrecords.EidToLocatorRecord;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.eidtolocatorrecords.EidToLocatorRecordBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.lispaddress.lispaddresscontainer.address.no.NoAddressBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.locatorrecords.LocatorRecord;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev150820.mapregisternotification.MapRegisterBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapRegister;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.SiteId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.locatorrecords.LocatorRecord;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.container.MappingRecord;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.container.MappingRecord.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.container.MappingRecordBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.list.MappingRecordItem;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.list.MappingRecordItemBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapregisternotification.MapRegisterBuilder;
public class MapRegisterSerializationTest extends BaseTestCase {
@Test
public void serialize__Fields() throws Exception {
MapRegisterBuilder mrBuilder = new MapRegisterBuilder();
- mrBuilder.setEidToLocatorRecord(new ArrayList<EidToLocatorRecord>());
- EidToLocatorRecordBuilder etlrBuilder = new EidToLocatorRecordBuilder();
- etlrBuilder.setLocatorRecord(new ArrayList<LocatorRecord>());
- etlrBuilder.setLispAddressContainer(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("0.0.0.1")));
-
- mrBuilder.getEidToLocatorRecord().add(etlrBuilder.build());
- etlrBuilder.setLispAddressContainer(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("0.0.0.73")));
- mrBuilder.getEidToLocatorRecord().add(etlrBuilder.build());
+ mrBuilder.setMappingRecordItem(new ArrayList<MappingRecordItem>());
+ MappingRecordBuilder recordBuilder = new MappingRecordBuilder();
+ recordBuilder.setLocatorRecord(new ArrayList<LocatorRecord>());
+ recordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("0.0.0.1/32"));
+
+ mrBuilder.getMappingRecordItem().add(
+ new MappingRecordItemBuilder().setMappingRecord(recordBuilder.build()).setMappingRecordItemId("xyzzy")
+ .build());
+ recordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("0.0.0.73/32"));
+ mrBuilder.getMappingRecordItem().add(
+ new MappingRecordItemBuilder().setMappingRecord(recordBuilder.build()).setMappingRecordItemId("xyzzy")
+ .build());
mrBuilder.setNonce(6161616161L);
mrBuilder.setKeyId((short) 0x0001);
mrBuilder.setWantMapNotify(true);
mrBuilder.setProxyMapReply(true);
mrBuilder.setXtrSiteIdPresent(true);
- byte[] authenticationData = new byte[] { (byte) 0x16, (byte) 0x98, (byte) 0x96, (byte) 0xeb, (byte) 0x88, (byte) 0x2d, (byte) 0x4d,
- (byte) 0x22, (byte) 0xe5, (byte) 0x8f, (byte) 0xe6, (byte) 0x89, (byte) 0x64, (byte) 0xb9, (byte) 0x17, (byte) 0xa4, (byte) 0xba,
- (byte) 0x4e, (byte) 0x8c, (byte) 0x41 };
+ byte[] authenticationData = new byte[] { (byte) 0x16, (byte) 0x98, (byte) 0x96, (byte) 0xeb, (byte) 0x88,
+ (byte) 0x2d, (byte) 0x4d, (byte) 0x22, (byte) 0xe5, (byte) 0x8f, (byte) 0xe6, (byte) 0x89, (byte) 0x64,
+ (byte) 0xb9, (byte) 0x17, (byte) 0xa4, (byte) 0xba, (byte) 0x4e, (byte) 0x8c, (byte) 0x41 };
mrBuilder.setAuthenticationData(authenticationData);
- byte[] xtrId = new byte[] { (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01 };
+ XtrId xtrId = new XtrId(new byte[] { (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x01 });
mrBuilder.setXtrId(xtrId);
- byte[] siteId = new byte[] { (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x01 };
+ SiteId siteId = new SiteId(new byte[] { (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
+ (byte) 0x00, (byte) 0x00, (byte) 0x01 });
mrBuilder.setSiteId(siteId);
ByteBuffer bb = MapRegisterSerializer.getInstance().serialize(mrBuilder.build());
byte[] actualAuthenticationData = new byte[20];
bb.get(actualAuthenticationData);
- ArrayAssert.assertEquals(authenticationData, actualAuthenticationData);
+ assertArrayEquals(authenticationData, actualAuthenticationData);
- bb.position(bb.position() + 12); /* EID in first record */
+ bb.position(bb.position() + 12); // EID in first record
assertEquals(0x1, bb.getInt());
- bb.position(bb.position() + 12); /* EID in second record */
+ bb.position(bb.position() + 12); // EID in second record
assertEquals(73, bb.getInt());
byte[] actualXtrId = new byte[Length.XTRID_SIZE];
bb.get(actualXtrId);
- ArrayAssert.assertEquals(xtrId, actualXtrId);
+ assertArrayEquals(xtrId.getValue(), actualXtrId);
byte[] actualSiteId = new byte[Length.SITEID_SIZE];
bb.get(actualSiteId);
- ArrayAssert.assertEquals(siteId, actualSiteId);
+ assertArrayEquals(siteId.getValue(), actualSiteId);
assertEquals(bb.position(), bb.capacity());
}
@Test
public void serialize__deserialize() throws Exception {
MapRegisterBuilder mrBuilder = new MapRegisterBuilder();
- mrBuilder.setEidToLocatorRecord(new ArrayList<EidToLocatorRecord>());
- EidToLocatorRecordBuilder etlrBuilder = new EidToLocatorRecordBuilder();
- etlrBuilder.setLocatorRecord(new ArrayList<LocatorRecord>());
- etlrBuilder.setLispAddressContainer(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("0.0.0.1")));
-
- etlrBuilder.setLispAddressContainer(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("0.0.0.73")));
- mrBuilder.getEidToLocatorRecord().add(etlrBuilder.build());
-
- etlrBuilder.setAction(Action.NoAction);
- etlrBuilder.setMapVersion((short) 0);
- etlrBuilder.setMaskLength((short) 0);
- etlrBuilder.setRecordTtl(0);
+ mrBuilder.setMappingRecordItem(new ArrayList<MappingRecordItem>());
+ MappingRecordBuilder recordBuilder = new MappingRecordBuilder();
+ recordBuilder.setLocatorRecord(new ArrayList<LocatorRecord>());
+ recordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("0.0.0.1/32"));
+
+ mrBuilder.getMappingRecordItem().add(
+ new MappingRecordItemBuilder().setMappingRecord(recordBuilder.build()).setMappingRecordItemId("xyzzy")
+ .build());
+ recordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("0.0.0.73/32"));
+ mrBuilder.getMappingRecordItem().add(
+ new MappingRecordItemBuilder().setMappingRecord(recordBuilder.build()).setMappingRecordItemId("xyzzy")
+ .build());
+
+ recordBuilder.setAction(Action.NoAction);
+ recordBuilder.setMapVersion((short) 0);
+ recordBuilder.setRecordTtl(0);
mrBuilder.setNonce(6161616161L);
mrBuilder.setKeyId((short) 0x0001);
mrBuilder.setWantMapNotify(true);
mrBuilder.setProxyMapReply(true);
- byte[] authenticationData = new byte[] { (byte) 0x16, (byte) 0x98, (byte) 0x96, (byte) 0xeb, (byte) 0x88, (byte) 0x2d, (byte) 0x4d,
- (byte) 0x22, (byte) 0xe5, (byte) 0x8f, (byte) 0xe6, (byte) 0x89, (byte) 0x64, (byte) 0xb9, (byte) 0x17, (byte) 0xa4, (byte) 0xba,
- (byte) 0x4e, (byte) 0x8c, (byte) 0x41 };
+ byte[] authenticationData = new byte[] { (byte) 0x16, (byte) 0x98, (byte) 0x96, (byte) 0xeb, (byte) 0x88,
+ (byte) 0x2d, (byte) 0x4d, (byte) 0x22, (byte) 0xe5, (byte) 0x8f, (byte) 0xe6, (byte) 0x89, (byte) 0x64,
+ (byte) 0xb9, (byte) 0x17, (byte) 0xa4, (byte) 0xba, (byte) 0x4e, (byte) 0x8c, (byte) 0x41 };
mrBuilder.setAuthenticationData(authenticationData);
MapRegister mapRegister = mrBuilder.build();
- ArrayAssert.assertEquals(
- MapRegisterSerializer.getInstance().serialize(mapRegister).array(),
+ assertArrayEquals(MapRegisterSerializer.getInstance().serialize(mapRegister).array(),
MapRegisterSerializer.getInstance()
- .serialize(MapRegisterSerializer.getInstance().deserialize(MapRegisterSerializer.getInstance().serialize(mapRegister)))
- .array());
+ .serialize(MapRegisterSerializer.getInstance().deserialize(MapRegisterSerializer.getInstance()
+ .serialize(mapRegister), null)).array());
}
@Test
public void serialize__NoAuthenticationData() throws Exception {
MapRegisterBuilder mrBuilder = new MapRegisterBuilder();
- mrBuilder.setEidToLocatorRecord(new ArrayList<EidToLocatorRecord>());
- mrBuilder.getEidToLocatorRecord().add(
- new EidToLocatorRecordBuilder().setRecordTtl(55)
- .setLispAddressContainer(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("0.0.0.1"))).build());
+ mrBuilder.setMappingRecordItem(new ArrayList<MappingRecordItem>());
+ mrBuilder.getMappingRecordItem().add(new MappingRecordItemBuilder().setMappingRecord(
+ new MappingRecordBuilder().setRecordTtl(55)
+ .setEid(LispAddressUtil.asIpv4PrefixEid("0.0.0.1/32")).build())
+ .setMappingRecordItemId("xyzzy")
+ .build());
// mrBuilder.addEidToLocator(new EidToLocatorRecord().setPrefix(new
// LispIpv4Address(1)).setRecordTtl(55));
@Test
public void serialize__NoPrefixInEidToLocator() throws Exception {
MapRegisterBuilder mrBuilder = new MapRegisterBuilder();
- mrBuilder.setEidToLocatorRecord(new ArrayList<EidToLocatorRecord>());
- mrBuilder.getEidToLocatorRecord().add(new EidToLocatorRecordBuilder().build());
- mrBuilder.getEidToLocatorRecord().add(new EidToLocatorRecordBuilder().setLispAddressContainer(null).build());
- mrBuilder.getEidToLocatorRecord().add(
- new EidToLocatorRecordBuilder().setLispAddressContainer(
- LispAFIConvertor.toContainer(new NoAddressBuilder().setAfi(AddressFamilyNumberEnum.NO_ADDRESS.getIanaCode()).build())).build());
+ mrBuilder.setMappingRecordItem(new ArrayList<MappingRecordItem>());
+ mrBuilder.getMappingRecordItem().add(new MappingRecordItemBuilder().setMappingRecord(
+ new MappingRecordBuilder().build()).setMappingRecordItemId("xyzzy").build());
+ mrBuilder.getMappingRecordItem().add(new MappingRecordItemBuilder().setMappingRecord(
+ new MappingRecordBuilder().setEid(null).build()).setMappingRecordItemId("xyzzy").build());
+ mrBuilder.getMappingRecordItem().add(new MappingRecordItemBuilder().setMappingRecord(
+ new MappingRecordBuilder().setEid(LispAddressUtil.getNoAddressEid()).build())
+ .setMappingRecordItemId("xyzzy").build());
ByteBuffer bb = MapRegisterSerializer.getInstance().serialize(mrBuilder.build());
bb.position(bb.position() + 16); // jump to first record prefix AFI
//
+ "00 00 00 00 00 00 00 00 00 00 00 00 " //
+ "00 0a 01 20 10 00 00 00 00 01 99 10 fe 01 01 64 " //
- + "ff 00 00 05 00 01 c0 a8 88 0a"));
+ + "ff 00 00 05 00 01 c0 a8 88 0a"), null);
- assertTrue(mr.isProxyMapReply());
- assertTrue(mr.isWantMapNotify());
+ assertTrue(mr.getProxyMapReply());
+ assertTrue(mr.getWantMapNotify());
- assertEquals(1, mr.getEidToLocatorRecord().size());
+ assertEquals(1, mr.getMappingRecordItem().size());
assertEquals(0xFFBB000000000000L, mr.getNonce().longValue());
assertEquals(0x0000, mr.getKeyId().shortValue());
byte[] expectedAuthenticationData = {};
- ArrayAssert.assertEquals(expectedAuthenticationData, mr.getAuthenticationData());
+ assertArrayEquals(expectedAuthenticationData, mr.getAuthenticationData());
}
@Test
+ "00 00 00 01 00 01 c3 a8 c8 01 0a 32 ff 00 00 04 "
+ "00 01 ac 10 01 02 15 1a 39 80 e3 35 e6 c4 49 a6 "
+ "90 87 20 65 9a b7 00 00 00 00 00 00 00 00 ");
- MapRegister mr = MapRegisterSerializer.getInstance().deserialize(bb);
+ MapRegister mr = MapRegisterSerializer.getInstance().deserialize(bb, null);
- assertTrue(mr.isXtrSiteIdPresent());
+ assertTrue(mr.getXtrSiteIdPresent());
- ArrayAssert.assertEquals(bb.array(), MapRegisterSerializer.getInstance().serialize(mr).array());
+ assertArrayEquals(bb.array(), MapRegisterSerializer.getInstance().serialize(mr).array());
}
@Test
+ "00 00 00 0a 01 20 10 00 00 00 00 01 96 10 fe 01 01 64 " // Record
// 4
+ "ff 00 00 05 00 01 c0 a8 88 0d " // contd
- ));
-
- assertEquals(4, mr.getEidToLocatorRecord().size());
- assertEquals(LispAFIConvertor.asIPv4Address("153.16.254.1"), mr.getEidToLocatorRecord().get(0)
- .getLispAddressContainer());
- assertEquals(LispAFIConvertor.asIPv4Address("151.16.254.1"), mr.getEidToLocatorRecord().get(2)
- .getLispAddressContainer());
- assertEquals(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("192.168.136.11")), mr.getEidToLocatorRecord().get(1)
- .getLocatorRecord().get(0).getLispAddressContainer());
- assertEquals(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("192.168.136.13")), mr.getEidToLocatorRecord().get(3)
- .getLocatorRecord().get(0).getLispAddressContainer());
+ ), null);
+
+ assertEquals(4, mr.getMappingRecordItem().size());
+ assertEquals(LispAddressUtil.asIpv4PrefixBinaryEid("153.16.254.1/32"), mr.getMappingRecordItem().get(0)
+ .getMappingRecord().getEid());
+ assertEquals(LispAddressUtil.asIpv4PrefixBinaryEid("151.16.254.1/32"), mr.getMappingRecordItem().get(2)
+ .getMappingRecord().getEid());
+ assertEquals(LispAddressUtil.asIpv4Rloc("192.168.136.11"), mr.getMappingRecordItem().get(1)
+ .getMappingRecord().getLocatorRecord().get(0).getRloc());
+ assertEquals(LispAddressUtil.asIpv4Rloc("192.168.136.13"), mr.getMappingRecordItem().get(3)
+ .getMappingRecord().getLocatorRecord().get(0).getRloc());
}
@Test
+ "60 11 34 A4 " // priorities + weights
+ "00 03 " // Flags
+ "00 01 c0 a8 88 0a " // Locator
- ));
-
- assertEquals(1, mr.getEidToLocatorRecord().size());
- EidToLocatorRecord eidToLocator = mr.getEidToLocatorRecord().get(0);
- assertEquals(3, eidToLocator.getLocatorRecord().size());
- LocatorRecord loc0 = eidToLocator.getLocatorRecord().get(0);
- LocatorRecord loc1 = eidToLocator.getLocatorRecord().get(1);
- LocatorRecord loc2 = eidToLocator.getLocatorRecord().get(2);
+ ), null);
+
+ assertEquals(1, mr.getMappingRecordItem().size());
+ MappingRecordItem eidToLocator = mr.getMappingRecordItem().get(0);
+ assertEquals(3, eidToLocator.getMappingRecord().getLocatorRecord().size());
+ LocatorRecord loc0 = eidToLocator.getMappingRecord().getLocatorRecord().get(0);
+ LocatorRecord loc1 = eidToLocator.getMappingRecord().getLocatorRecord().get(1);
+ LocatorRecord loc2 = eidToLocator.getMappingRecord().getLocatorRecord().get(2);
assertEquals((byte) 0x01, loc0.getPriority().byteValue());
assertEquals((byte) 0x67, loc1.getPriority().byteValue());
assertEquals((byte) 0x60, loc2.getPriority().byteValue());
assertEquals((byte) 0x34, loc1.getMulticastWeight().byteValue());
assertEquals((byte) 0xA4, loc2.getMulticastWeight().byteValue());
- assertTrue(loc0.isLocalLocator());
- assertFalse(loc1.isLocalLocator());
- assertFalse(loc2.isLocalLocator());
+ assertTrue(loc0.getLocalLocator());
+ assertFalse(loc1.getLocalLocator());
+ assertFalse(loc2.getLocalLocator());
- assertFalse(loc0.isRlocProbed());
- assertTrue(loc1.isRlocProbed());
- assertTrue(loc2.isRlocProbed());
+ assertFalse(loc0.getRlocProbed());
+ assertTrue(loc1.getRlocProbed());
+ assertTrue(loc2.getRlocProbed());
- assertTrue(loc0.isRouted());
- assertFalse(loc1.isRouted());
- assertTrue(loc2.isRouted());
+ assertTrue(loc0.getRouted());
+ assertFalse(loc1.getRouted());
+ assertTrue(loc2.getRouted());
- assertEquals(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("192.168.136.10")), loc0.getLispAddressContainer());
- assertEquals(LispAFIConvertor.toContainer(LispAFIConvertor.asIPAfiAddress("204.170.170.17")), loc1.getLispAddressContainer());
+ assertEquals(LispAddressUtil.asIpv4Rloc("192.168.136.10"), loc0.getRloc());
+ assertEquals(LispAddressUtil.asIpv4Rloc("204.170.170.17"), loc1.getRloc());
}
@Test
+ "00 00 00 0d 01 20 20 00 03 33 00 01 96 10 fe 01 01 64 " // Record
// 3
+ "ff 00 00 05 00 01 c0 a8 88 0d " // contd
- ));
+ ), null);
- assertEquals(4, mr.getEidToLocatorRecord().size());
+ assertEquals(4, mr.getMappingRecordItem().size());
- EidToLocatorRecord record0 = mr.getEidToLocatorRecord().get(0);
- EidToLocatorRecord record1 = mr.getEidToLocatorRecord().get(1);
- EidToLocatorRecord record2 = mr.getEidToLocatorRecord().get(2);
- EidToLocatorRecord record3 = mr.getEidToLocatorRecord().get(3);
+ final MappingRecord record0 = mr.getMappingRecordItem().get(0).getMappingRecord();
+ final MappingRecord record1 = mr.getMappingRecordItem().get(1).getMappingRecord();
+ final MappingRecord record2 = mr.getMappingRecordItem().get(2).getMappingRecord();
+ final MappingRecord record3 = mr.getMappingRecordItem().get(3).getMappingRecord();
assertEquals(10, record0.getRecordTtl().intValue());
assertEquals(13, record3.getRecordTtl().intValue());
- assertEquals(32, record0.getMaskLength().intValue());
- assertEquals(23, record1.getMaskLength().intValue());
+ assertEquals(32, MaskUtil.getMaskForAddress(record0.getEid().getAddress()));
+ assertEquals(23, MaskUtil.getMaskForAddress(record1.getEid().getAddress()));
assertEquals(Action.NoAction, record0.getAction());
assertEquals(Action.SendMapRequest, record1.getAction());
assertEquals(Action.NoAction, record2.getAction());
assertEquals(Action.NativelyForward, record3.getAction());
- assertTrue(record0.isAuthoritative());
- assertTrue(record1.isAuthoritative());
- assertFalse(record2.isAuthoritative());
- assertFalse(record3.isAuthoritative());
+ assertTrue(record0.getAuthoritative());
+ assertTrue(record1.getAuthoritative());
+ assertFalse(record2.getAuthoritative());
+ assertFalse(record3.getAuthoritative());
assertEquals(0x000, record0.getMapVersion().shortValue());
assertEquals(0x111, record1.getMapVersion().shortValue());
+ "00 00 00 00 00 00 00 01 00 14 ec 47 1e 53 25 91 " //
+ "2f 68 10 75 13 dd 2c e8 6e 3c ac 94 ed e4 00 00 " //
+ "00 0a 01 20 F0 00 00 00 00 01 99 10 fe 01 01 64 " //
- + "ff 00 00 05 00 01 c0 a8 88 0a"));
+ + "ff 00 00 05 00 01 c0 a8 88 0a"), null);
- assertEquals(1, mr.getEidToLocatorRecord().size());
- assertEquals(Action.NoAction, mr.getEidToLocatorRecord().get(0).getAction());
+ assertEquals(1, mr.getMappingRecordItem().size());
+ assertEquals(Action.NoAction, mr.getMappingRecordItem().get(0).getMappingRecord().getAction());
}
@Test(expected = LispSerializationException.class)
+ "00 00 00 00 00 00 00 00 00 14 e8 f5 0b c5 c5 f2 " //
+ "b0 21 27 a8 21 a5 68 89 ec 00 00 " //
+ "00 0a 01 20 10 00 00 00 00 01 99 10 fe 01 01 64 " //
- + "ff 00 00 05 00 01 c0 a8 88 0a"));
+ + "ff 00 00 05 00 01 c0 a8 88 0a"), null);
}
@Test
+ "00 00 00 00 00 00 00 01 00 14 2c 61 b9 c9 9a 20 " //
+ "ba d8 f5 40 d3 55 6f 5f 6e 5a b2 0a bf b5 00 00 " //
+ "00 0a 01 20 10 00 00 00 00 01 99 10 fe 01 01 64 " //
- + "ff 00 00 05 00 01 c0 a8 88 0a"));
+ + "ff 00 00 05 00 01 c0 a8 88 0a"), null);
- assertTrue(mr.isProxyMapReply());
- assertTrue(mr.isWantMapNotify());
+ assertTrue(mr.getProxyMapReply());
+ assertTrue(mr.getWantMapNotify());
- assertEquals(1, mr.getEidToLocatorRecord().size());
+ assertEquals(1, mr.getMappingRecordItem().size());
assertEquals(0xFFBB000000000000L, mr.getNonce().longValue());
assertEquals(0x0001, mr.getKeyId().shortValue());
- byte[] expectedAuthenticationData = { (byte) 0x2c, (byte) 0x61, (byte) 0xb9, (byte) 0xc9, (byte) 0x9a, (byte) 0x20, (byte) 0xba, (byte) 0xd8, //
- (byte) 0xf5, (byte) 0x40, (byte) 0xd3, (byte) 0x55, (byte) 0x6f, (byte) 0x5f, (byte) 0x6e, (byte) 0x5a, //
- (byte) 0xb2, (byte) 0x0a, (byte) 0xbf, (byte) 0xb5 };
- ArrayAssert.assertEquals(expectedAuthenticationData, mr.getAuthenticationData());
+ byte[] expectedAuthenticationData = { (byte) 0x2c, (byte) 0x61, (byte) 0xb9, (byte) 0xc9, (byte) 0x9a,
+ (byte) 0x20, (byte) 0xba, (byte) 0xd8, (byte) 0xf5, (byte) 0x40, (byte) 0xd3, (byte) 0x55, (byte) 0x6f,
+ (byte) 0x5f, (byte) 0x6e, (byte) 0x5a, (byte) 0xb2, (byte) 0x0a, (byte) 0xbf, (byte) 0xb5 };
+ assertArrayEquals(expectedAuthenticationData, mr.getAuthenticationData());
}
@Test
//
+ "11 c9 7b 58 c4 b9 9f 06 11 23 b9 38 00 00 " //
+ "00 0a 01 20 10 00 00 00 00 01 99 10 fe 01 01 64 " //
- + "ff 00 00 05 00 01 c0 a8 88 0a"));
+ + "ff 00 00 05 00 01 c0 a8 88 0a"), null);
- assertTrue(mr.isProxyMapReply());
- assertTrue(mr.isWantMapNotify());
+ assertTrue(mr.getProxyMapReply());
+ assertTrue(mr.getWantMapNotify());
- assertEquals(1, mr.getEidToLocatorRecord().size());
+ assertEquals(1, mr.getMappingRecordItem().size());
assertEquals(0xFFBB000000000000L, mr.getNonce().longValue());
assertEquals(0x0002, mr.getKeyId().shortValue());
- byte[] expectedAuthenticationData = { (byte) 0x70, (byte) 0x30, (byte) 0xd4, (byte) 0xc6, (byte) 0x10, (byte) 0x44, (byte) 0x0d, (byte) 0x83,
- (byte) 0xbe, (byte) 0x4d, (byte) 0xbf, (byte) 0xfd, (byte) 0xa9, (byte) 0x8c, (byte) 0x57, (byte) 0x6d, (byte) 0x68, (byte) 0xa5,
- (byte) 0xbf, (byte) 0x32, (byte) 0x11, (byte) 0xc9, (byte) 0x7b, (byte) 0x58, (byte) 0xc4, (byte) 0xb9, (byte) 0x9f, (byte) 0x06,
- (byte) 0x11, (byte) 0x23, (byte) 0xb9, (byte) 0x38 };
- ArrayAssert.assertEquals(expectedAuthenticationData, mr.getAuthenticationData());
+ byte[] expectedAuthenticationData = { (byte) 0x70, (byte) 0x30, (byte) 0xd4, (byte) 0xc6, (byte) 0x10,
+ (byte) 0x44, (byte) 0x0d, (byte) 0x83, (byte) 0xbe, (byte) 0x4d, (byte) 0xbf, (byte) 0xfd, (byte) 0xa9,
+ (byte) 0x8c, (byte) 0x57, (byte) 0x6d, (byte) 0x68, (byte) 0xa5, (byte) 0xbf, (byte) 0x32, (byte) 0x11,
+ (byte) 0xc9, (byte) 0x7b, (byte) 0x58, (byte) 0xc4, (byte) 0xb9, (byte) 0x9f, (byte) 0x06, (byte) 0x11,
+ (byte) 0x23, (byte) 0xb9, (byte) 0x38 };
+ assertArrayEquals(expectedAuthenticationData, mr.getAuthenticationData());
}
-
}