mirror of
https://github.com/mfontanini/libtins
synced 2026-01-23 02:35:57 +01:00
Added is_private and is_loopback methods to IPv4 and IPv6 addresses.
This commit is contained in:
@@ -49,3 +49,34 @@ TEST(IPAddressTest, LessThanOperator) {
|
||||
EXPECT_LT(addr1, "192.168.0.226");
|
||||
EXPECT_LT(addr1, "193.0.0.0");
|
||||
}
|
||||
|
||||
TEST(IPAddressTest, IsPrivate) {
|
||||
EXPECT_TRUE(IPv4Address("192.168.0.1").is_private());
|
||||
EXPECT_TRUE(IPv4Address("192.168.133.7").is_private());
|
||||
EXPECT_TRUE(IPv4Address("192.168.255.254").is_private());
|
||||
EXPECT_FALSE(IPv4Address("192.169.0.1").is_private());
|
||||
EXPECT_FALSE(IPv4Address("192.167.255.254").is_private());
|
||||
|
||||
EXPECT_TRUE(IPv4Address("10.0.0.1").is_private());
|
||||
EXPECT_TRUE(IPv4Address("10.5.1.2").is_private());
|
||||
EXPECT_TRUE(IPv4Address("10.255.255.254").is_private());
|
||||
EXPECT_FALSE(IPv4Address("11.0.0.1").is_private());
|
||||
EXPECT_FALSE(IPv4Address("9.255.255.254").is_private());
|
||||
|
||||
EXPECT_TRUE(IPv4Address("172.16.0.1").is_private());
|
||||
EXPECT_TRUE(IPv4Address("172.31.255.254").is_private());
|
||||
EXPECT_TRUE(IPv4Address("172.20.13.75").is_private());
|
||||
EXPECT_FALSE(IPv4Address("172.15.0.1").is_private());
|
||||
EXPECT_FALSE(IPv4Address("172.32.0.1").is_private());
|
||||
|
||||
EXPECT_FALSE(IPv4Address("100.100.100.100").is_private());
|
||||
EXPECT_FALSE(IPv4Address("199.199.29.10").is_private());
|
||||
}
|
||||
|
||||
TEST(IPAddressTest, IsLoopback) {
|
||||
EXPECT_TRUE(IPv4Address("127.0.0.1").is_loopback());
|
||||
EXPECT_TRUE(IPv4Address("127.0.0.0").is_loopback());
|
||||
EXPECT_TRUE(IPv4Address("127.255.255.254").is_loopback());
|
||||
EXPECT_FALSE(IPv4Address("126.255.255.254").is_loopback());
|
||||
EXPECT_FALSE(IPv4Address("128.0.0.0").is_loopback());
|
||||
}
|
||||
|
||||
@@ -85,3 +85,9 @@ TEST(IPv6AddressTest, Copy) {
|
||||
addr1.copy(addr2.begin());
|
||||
EXPECT_EQ(addr1, addr2);
|
||||
}
|
||||
|
||||
TEST(IPv6AddressTest, IsLoopback) {
|
||||
EXPECT_TRUE(IPv6Address("::1").is_loopback());
|
||||
EXPECT_FALSE(IPv6Address("::2").is_loopback());
|
||||
EXPECT_FALSE(IPv6Address("ffff::2").is_loopback());
|
||||
}
|
||||
|
||||
@@ -81,7 +81,7 @@ TEST_F(UtilsTest, ResolveDomain) {
|
||||
}
|
||||
|
||||
TEST_F(UtilsTest, ResolveDomain6) {
|
||||
IPv6Address localhost_ip("2001:500:88:200::10");
|
||||
IPv6Address localhost_ip("2606:2800:220:6d:26bf:1447:1097:aa7");
|
||||
|
||||
EXPECT_EQ(Utils::resolve_domain6("example.com"), localhost_ip);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user