@@ -12,11 +12,19 @@ using namespace Tins;
12
12
13
13
class AddressRangeTest : public testing ::Test {
14
14
public:
15
+ void contain_tests0 (const IPv4Range& range);
16
+ void contain_tests0 (const IPv6Range& range);
15
17
void contain_tests24 (const IPv4Range& range);
16
18
void contain_tests24 (const IPv6Range& range);
17
19
void contain_tests26 (const IPv4Range& range);
18
20
};
19
21
22
+ void AddressRangeTest::contain_tests0 (const IPv4Range& range) {
23
+ EXPECT_TRUE (range.contains (" 0.0.0.0" ));
24
+ EXPECT_TRUE (range.contains (" 192.168.1.1" ));
25
+ EXPECT_TRUE (range.contains (" 255.255.255.255" ));
26
+ }
27
+
20
28
void AddressRangeTest::contain_tests24 (const IPv4Range& range) {
21
29
EXPECT_TRUE (range.contains (" 192.168.0.0" ));
22
30
EXPECT_TRUE (range.contains (" 192.168.0.1" ));
@@ -33,6 +41,12 @@ void AddressRangeTest::contain_tests26(const IPv4Range& range) {
33
41
EXPECT_FALSE (range.contains (" 192.168.254.191" ));
34
42
}
35
43
44
+ void AddressRangeTest::contain_tests0 (const IPv6Range& range) {
45
+ EXPECT_TRUE (range.contains (" ::" ));
46
+ EXPECT_TRUE (range.contains (" dead::1:1" ));
47
+ EXPECT_TRUE (range.contains (" ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff" ));
48
+ }
49
+
36
50
void AddressRangeTest::contain_tests24 (const IPv6Range& range) {
37
51
EXPECT_TRUE (range.contains (" dead::1" ));
38
52
EXPECT_TRUE (range.contains (" dead::1fee" ));
@@ -42,13 +56,22 @@ void AddressRangeTest::contain_tests24(const IPv6Range& range) {
42
56
}
43
57
44
58
TEST_F (AddressRangeTest, Contains) {
59
+ contain_tests0 (IPv4Range (" 0.0.0.0" , " 255.255.255.255" ));
60
+ contain_tests0 (IPv4Range::from_mask (" 0.0.0.0" , " 0.0.0.0" ));
61
+ contain_tests0 (IPv4Range::from_mask (" 0.0.0.0" , IPv4Address::from_prefix_length (0 )));
45
62
contain_tests24 (IPv4Range (" 192.168.0.0" , " 192.168.0.255" ));
46
63
contain_tests24 (IPv4Range::from_mask (" 192.168.0.0" , " 255.255.255.0" ));
64
+ contain_tests24 (IPv4Range::from_mask (" 192.168.0.0" , IPv4Address::from_prefix_length (24 )));
47
65
contain_tests26 (IPv4Range (" 192.168.254.192" , " 192.168.254.255" ));
48
66
contain_tests26 (IPv4Range::from_mask (" 192.168.254.192" , " 255.255.255.192" ));
67
+ contain_tests26 (IPv4Range::from_mask (" 192.168.254.192" , IPv4Address::from_prefix_length (26 )));
49
68
69
+ contain_tests0 (IPv6Range (" ::0" , " ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff" ));
70
+ contain_tests0 (IPv6Range::from_mask (" ::" , " ::" ));
71
+ contain_tests0 (IPv6Range::from_mask (" ::" , IPv6Address::from_prefix_length (0 )));
50
72
contain_tests24 (IPv6Range (" dead::0" , " dead::ffff" ));
51
73
contain_tests24 (IPv6Range::from_mask (" dead::0" , " ffff:ffff:ffff:ffff:ffff:ffff:ffff:0" ));
74
+ contain_tests24 (IPv6Range::from_mask (" dead::0" , IPv6Address::from_prefix_length (112 )));
52
75
53
76
{
54
77
AddressRange<HWAddress<6 > > range (" 00:00:00:00:00:00" , " 00:00:00:00:00:ff" );
0 commit comments