public void FromByteArray() { String rawInput = "00:01:00:01:23:c4:e7:39:00:15:5d:07:e1:12"; Byte[] input = ByteConverter.FromString(rawInput, ':'); Byte[] macAddress = ByteConverter.FromString("00:15:5d:07:e1:12", ':'); DateTime time = new DateTime(2019, 1, 6, 16, 20, 09); LinkLayerAddressAndTimeDUID duid = LinkLayerAddressAndTimeDUID.FromByteArray(input, 0); Assert.Equal(macAddress, duid.LinkLayerAddress); Assert.Equal(LinkLayerAddressDUID.DUIDLinkLayerTypes.Ethernet, duid.LinkType); Assert.Equal(time, duid.Time); Assert.Equal(Beer.DaAPI.Core.Common.DUID.DUIDTypes.LinkLayerAndTime, duid.Type); Byte[] asByte = duid.GetAsByteStream(); Assert.Equal(input, asByte); }
public void FromEthernet() { Random random = new Random(); Byte[] macAddress = random.NextBytes(6); DateTime now = DateTime.Now; DateTime nowOnlySeconds = new DateTime(now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second); LinkLayerAddressAndTimeDUID duid = LinkLayerAddressAndTimeDUID.FromEthernet( macAddress, now ); Assert.Equal(macAddress, duid.LinkLayerAddress); Assert.Equal(LinkLayerAddressDUID.DUIDLinkLayerTypes.Ethernet, duid.LinkType); Assert.Equal(nowOnlySeconds, duid.Time); Assert.Equal(Beer.DaAPI.Core.Common.DUID.DUIDTypes.LinkLayerAndTime, duid.Type); }
public void GetDUID_LinkLayerAddressAndTimeDUID() { String rawInput = "00:01:00:01:23:c4:e7:39:00:15:5d:07:e1:12"; Byte[] input = ByteConverter.FromString(rawInput, ':'); Byte[] macAddress = ByteConverter.FromString("00:15:5d:07:e1:12", ':'); DateTime time = new DateTime(2019, 1, 6, 16, 20, 09); var duid = DUIDFactory.GetDUID(input, 0); Assert.NotNull(duid); Assert.IsAssignableFrom <LinkLayerAddressAndTimeDUID>(duid); LinkLayerAddressAndTimeDUID castedDuid = (LinkLayerAddressAndTimeDUID)duid; Assert.Equal(macAddress, castedDuid.LinkLayerAddress); Assert.Equal(LinkLayerAddressDUID.DUIDLinkLayerTypes.Ethernet, castedDuid.LinkType); Assert.Equal(Beer.DaAPI.Core.Common.DUID.DUIDTypes.LinkLayerAndTime, duid.Type); Assert.Equal(time, castedDuid.Time); }
public void SerializeAndDeserialize() { Random random = new Random(); JsonSerializerSettings settings = new JsonSerializerSettings(); settings.Converters.Add(new DUIDJsonConverter()); List <DUID> duids = new List <DUID> { new UUIDDUID(random.NextGuid()), new VendorBasedDUID(random.NextUInt32(), random.NextBytes(20)), LinkLayerAddressAndTimeDUID.FromEthernet(random.NextBytes(6), DateTime.Now), new LinkLayerAddressDUID(LinkLayerAddressDUID.DUIDLinkLayerTypes.Ethernet, random.NextBytes(6)) }; String serialized = JsonConvert.SerializeObject(duids, settings); var actual = JsonConvert.DeserializeObject <List <DUID> >(serialized, settings); for (int i = 0; i < duids.Count; i++) { Assert.Equal(duids[i], actual[i]); } }