public void Roundtrip_NoOptions() { var a = new OPTRecord(); var b = (OPTRecord) new ResourceRecord().Read(a.ToByteArray()); Assert.AreEqual(a.Name, b.Name); Assert.AreEqual(a.Class, b.Class); Assert.AreEqual(a.Type, b.Type); Assert.AreEqual(a.TTL, b.TTL); }
public void Roundtrip_Empty() { var opt1 = new OPTRecord(); var expected = new EdnsKeepaliveOption(); Assert.AreEqual(EdnsOptionType.Keepalive, expected.Type); Assert.AreEqual(false, expected.Timeout.HasValue); opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (EdnsKeepaliveOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); Assert.AreEqual(expected.Timeout.HasValue, actual.Timeout.HasValue); }
public void Roundtrip() { var opt1 = new OPTRecord(); var expected = new EdnsNSIDOption { Id = new byte[] { 1, 2, 3, 4 } }; Assert.AreEqual(EdnsOptionType.NSID, expected.Type); opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (EdnsNSIDOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); CollectionAssert.AreEqual(expected.Id, actual.Id); }
public void Roundtrip() { var opt1 = new OPTRecord(); var expected = new EdnsDAUOption { Algorithms = { SecurityAlgorithm.ED25519, SecurityAlgorithm.ECCGOST } }; Assert.AreEqual(EdnsOptionType.DAU, expected.Type); opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (EdnsDAUOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); CollectionAssert.AreEqual(expected.Algorithms, actual.Algorithms); }
public void Roundtrip() { var opt1 = new OPTRecord(); var expected = new EdnsN3UOption { Algorithms = { DigestType.GostR34_11_94, DigestType.Sha512 } }; Assert.AreEqual(EdnsOptionType.N3U, expected.Type); opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (EdnsN3UOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); CollectionAssert.AreEqual(expected.Algorithms, actual.Algorithms); }
public void Roundtrip() { var opt1 = new OPTRecord(); var expected = new EdnsKeepaliveOption { Timeout = TimeSpan.FromSeconds(3) }; Assert.AreEqual(EdnsOptionType.Keepalive, expected.Type); opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (EdnsKeepaliveOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); Assert.AreEqual(expected.Timeout.Value, actual.Timeout.Value); }
public void Roundtrip() { var opt1 = new OPTRecord(); var expected = new UnknownEdnsOption { Type = EdnsOptionType.ExperimentalMin, Data = new byte[] { 10, 11, 12 } }; opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (UnknownEdnsOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); CollectionAssert.AreEqual(expected.Data, actual.Data); }
public void Roundtrip() { var opt1 = new OPTRecord(); var expected = new EdnsPaddingOption { Padding = new byte[] { 0, 0, 0 } }; Assert.AreEqual(EdnsOptionType.Padding, expected.Type); opt1.Options.Add(expected); var opt2 = (OPTRecord) new ResourceRecord().Read(opt1.ToByteArray()); var actual = (EdnsPaddingOption)opt2.Options[0]; Assert.AreEqual(expected.Type, actual.Type); CollectionAssert.AreEqual(expected.Padding, actual.Padding); }
public void Roundtrip() { var a = new OPTRecord { RequestorPayloadSize = 512, Opcode8 = 2, Version = 3, DO = true }; var b = (OPTRecord) new ResourceRecord().Read(a.ToByteArray()); Assert.AreEqual(a.Name, b.Name); Assert.AreEqual(a.Class, b.Class); Assert.AreEqual(a.Type, b.Type); Assert.AreEqual(a.TTL, b.TTL); Assert.AreEqual(a.RequestorPayloadSize, b.RequestorPayloadSize); Assert.AreEqual(a.Opcode8, b.Opcode8); Assert.AreEqual(a.Version, b.Version); Assert.AreEqual(a.DO, b.DO); }