public void GetUnicastIpAddressEntryTableTest() { Assert.That(GetUnicastIpAddressTable(ADDRESS_FAMILY.AF_UNSPEC, out var table), Is.Zero); Assert.That(table.NumEntries, Is.GreaterThan(0)); Assert.That(() => table.Table, Throws.Nothing); var goodRow = table.Table[0]; var row = new MIB_UNICASTIPADDRESS_ROW { Address = goodRow.Address, InterfaceLuid = goodRow.InterfaceLuid }; Assert.That(GetUnicastIpAddressEntry(ref row), Is.Zero); Assert.That(row.CreationTimeStamp, Is.Not.Zero.And.EqualTo(goodRow.CreationTimeStamp)); }
public void CreateSetGetDeleteUnicastIpAddressEntryTest() { var target = new IN6_ADDR(new byte[] { 0xfe, 0x3f, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x20, 0x00 }); var mibrow = new MIB_UNICASTIPADDRESS_ROW(new SOCKADDR_IN6(target, 0), primaryAdapter.Luid); Assert.That(GetUnicastIpAddressTable(ADDRESS_FAMILY.AF_INET6, out var t1), Is.Zero); if (t1.Contains(mibrow)) { Assert.That(DeleteUnicastIpAddressEntry(ref mibrow), Is.Zero); } Assert.That(CreateUnicastIpAddressEntry(ref mibrow), Is.Zero); GetUnicastIpAddressTable(ADDRESS_FAMILY.AF_INET6, out var t2); Assert.That(t2, Has.Member(mibrow)); mibrow.PreferredLifetime = 500000; Assert.That(SetUnicastIpAddressEntry(mibrow), Is.Zero); Assert.That(GetUnicastIpAddressEntry(ref mibrow), Is.Zero); Assert.That(DeleteUnicastIpAddressEntry(ref mibrow), Is.Zero); GetUnicastIpAddressTable(ADDRESS_FAMILY.AF_INET6, out var t4); Assert.That(t4, Has.No.Member(mibrow)); }