@@ -84,12 +84,12 @@ BOOST_AUTO_TEST_CASE(netbase_properties)
84
84
85
85
}
86
86
87
- bool static TestSplitHost (const std::string& test, const std::string& host, uint16_t port)
87
+ bool static TestSplitHost (const std::string& test, const std::string& host, uint16_t port, bool validPort= true )
88
88
{
89
89
std::string hostOut;
90
90
uint16_t portOut{0 };
91
- SplitHostPort (test, portOut, hostOut);
92
- return hostOut == host && port == portOut ;
91
+ bool validPortOut = SplitHostPort (test, portOut, hostOut);
92
+ return hostOut == host && portOut == port && validPortOut == validPort ;
93
93
}
94
94
95
95
BOOST_AUTO_TEST_CASE (netbase_splithost)
@@ -109,6 +109,23 @@ BOOST_AUTO_TEST_CASE(netbase_splithost)
109
109
BOOST_CHECK (TestSplitHost (" :8333" , " " , 8333 ));
110
110
BOOST_CHECK (TestSplitHost (" []:8333" , " " , 8333 ));
111
111
BOOST_CHECK (TestSplitHost (" " , " " , 0 ));
112
+ BOOST_CHECK (TestSplitHost (" :65535" , " " , 65535 ));
113
+ BOOST_CHECK (TestSplitHost (" :65536" , " :65536" , 0 , false ));
114
+ BOOST_CHECK (TestSplitHost (" :-1" , " :-1" , 0 , false ));
115
+ BOOST_CHECK (TestSplitHost (" []:70001" , " []:70001" , 0 , false ));
116
+ BOOST_CHECK (TestSplitHost (" []:-1" , " []:-1" , 0 , false ));
117
+ BOOST_CHECK (TestSplitHost (" []:-0" , " []:-0" , 0 , false ));
118
+ BOOST_CHECK (TestSplitHost (" []:0" , " " , 0 , false ));
119
+ BOOST_CHECK (TestSplitHost (" []:1/2" , " []:1/2" , 0 , false ));
120
+ BOOST_CHECK (TestSplitHost (" []:1E2" , " []:1E2" , 0 , false ));
121
+ BOOST_CHECK (TestSplitHost (" 127.0.0.1:65536" , " 127.0.0.1:65536" , 0 , false ));
122
+ BOOST_CHECK (TestSplitHost (" 127.0.0.1:0" , " 127.0.0.1" , 0 , false ));
123
+ BOOST_CHECK (TestSplitHost (" 127.0.0.1:" , " 127.0.0.1:" , 0 , false ));
124
+ BOOST_CHECK (TestSplitHost (" 127.0.0.1:1/2" , " 127.0.0.1:1/2" , 0 , false ));
125
+ BOOST_CHECK (TestSplitHost (" 127.0.0.1:1E2" , " 127.0.0.1:1E2" , 0 , false ));
126
+ BOOST_CHECK (TestSplitHost (" www.bitcoincore.org:65536" , " www.bitcoincore.org:65536" , 0 , false ));
127
+ BOOST_CHECK (TestSplitHost (" www.bitcoincore.org:0" , " www.bitcoincore.org" , 0 , false ));
128
+ BOOST_CHECK (TestSplitHost (" www.bitcoincore.org:" , " www.bitcoincore.org:" , 0 , false ));
112
129
}
113
130
114
131
bool static TestParse (std::string src, std::string canon)
0 commit comments