public void TestParseIP() { Assert.IsTrue(IPBanFirewallUtility.TryNormalizeIPAddress("1.1.1.1", out _)); Assert.IsTrue(IPBanFirewallUtility.TryNormalizeIPAddress("1.1.1.1:8080", out _)); Assert.IsTrue(IPBanFirewallUtility.TryNormalizeIPAddress("1.1.1.1/24", out _)); // fe80::c872:be03:5c94:4af2%8 Assert.IsTrue(IPBanFirewallUtility.TryNormalizeIPAddress("fe80::c872:be03:5c94:4af2%8", out _)); Assert.IsFalse(IPBanFirewallUtility.TryNormalizeIPAddress("a.1.1.1", out _)); }
public void TestIPV6() { string[] toBlock = new string[] { "fe80::c872:be03:5c94:4af2%8", "192.168.0.20" }; firewall.BlockIPAddresses(null, toBlock).Sync(); string[] bannedIP = firewall.EnumerateBannedIPAddresses().ToArray(); string[] bannedIP2 = firewall.EnumerateIPAddresses().Select(i => i.Begin.ToString()).ToArray(); Assert.AreEqual(bannedIP.Length, bannedIP2.Length); for (int i = 0; i < bannedIP.Length; i++) { Assert.AreEqual(bannedIP[i], bannedIP2[i]); } foreach (string origIP in toBlock) { if (IPBanFirewallUtility.TryNormalizeIPAddress(origIP, out string normalizedIP)) { Assert.IsTrue(bannedIP.Contains(normalizedIP)); } else { Assert.Fail("Bad ip: " + origIP); } } }