File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -107,10 +107,11 @@ struct Addr {
107107
108108 const static std::regex ipv4_address_pattern
109109 {
110- " ^\\ s*(25[0-5]|2[0-4]\\ d|[01]?\\ d\\ d?)\\ ."
111- " (25[0-5]|2[0-4]\\ d|[01]?\\ d\\ d?)\\ ."
112- " (25[0-5]|2[0-4]\\ d|[01]?\\ d\\ d?)\\ ."
113- " (25[0-5]|2[0-4]\\ d|[01]?\\ d\\ d?)\\ s*$"
110+
111+ #define OCTET_PATTERN " (25[0-5]|2[0-4]\\ d|[01]?\\ d\\ d?)"
112+ " ^\\ s*" OCTET_PATTERN " \\ ." OCTET_PATTERN " \\ ." OCTET_PATTERN " \\ ." OCTET_PATTERN " \\ s*$"
113+ #undef OCTET_PATTERN
114+
114115 };
115116
116117 std::smatch ipv4_parts;
Original file line number Diff line number Diff line change @@ -96,6 +96,14 @@ CASE("Create IP4 addresses from strings")
9696 }
9797 **/
9898
99+ EXPECT_NO_THROW (Addr (" 202.209.27.78" ));
100+ EXPECT_NO_THROW (Addr (" 212.209.27.78" ));
101+ EXPECT_NO_THROW (Addr (" 222.209.27.78" ));
102+ EXPECT_NO_THROW (Addr (" 232.209.27.78" ));
103+ EXPECT_NO_THROW (Addr (" 242.209.27.78" ));
104+ EXPECT_NO_THROW (Addr (" 255.209.27.78" ));
105+ EXPECT_THROWS (Addr (" 265.209.27.78" ));
106+ EXPECT_THROWS (Addr (" 256.209.27.78" ));
99107 EXPECT_THROWS (Addr{" LUL" });
100108 EXPECT_THROWS (Addr{" 12310298310298301283" });
101109 EXPECT_THROWS (const Addr invalid1{" 256.256.256.256" });
You can’t perform that action at this time.
0 commit comments