mirror of
https://github.com/XRPLF/rippled.git
synced 2026-04-29 15:37:57 +00:00
remove trailing whitespace
This commit is contained in:
@@ -11,10 +11,10 @@
|
||||
* * Neither the name of the WebSocket++ Project nor the
|
||||
* names of its contributors may be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL PETER THORSON BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
@@ -22,7 +22,7 @@
|
||||
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*
|
||||
*/
|
||||
//#define BOOST_TEST_DYN_LINK
|
||||
#define BOOST_TEST_MODULE http_parser
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
BOOST_AUTO_TEST_CASE( is_token_char ) {
|
||||
// Valid characters
|
||||
|
||||
|
||||
// misc
|
||||
BOOST_CHECK( websocketpp::http::is_token_char('!') );
|
||||
BOOST_CHECK( websocketpp::http::is_token_char('#') );
|
||||
@@ -51,29 +51,29 @@ BOOST_AUTO_TEST_CASE( is_token_char ) {
|
||||
BOOST_CHECK( websocketpp::http::is_token_char('_') );
|
||||
BOOST_CHECK( websocketpp::http::is_token_char('`') );
|
||||
BOOST_CHECK( websocketpp::http::is_token_char('~') );
|
||||
|
||||
|
||||
// numbers
|
||||
for (int i = 0x30; i < 0x3a; i++) {
|
||||
BOOST_CHECK( websocketpp::http::is_token_char((unsigned char)(i)) );
|
||||
}
|
||||
|
||||
|
||||
// upper
|
||||
for (int i = 0x41; i < 0x5b; i++) {
|
||||
BOOST_CHECK( websocketpp::http::is_token_char((unsigned char)(i)) );
|
||||
}
|
||||
|
||||
|
||||
// lower
|
||||
for (int i = 0x61; i < 0x7b; i++) {
|
||||
BOOST_CHECK( websocketpp::http::is_token_char((unsigned char)(i)) );
|
||||
}
|
||||
|
||||
|
||||
// invalid characters
|
||||
|
||||
|
||||
// lower unprintable
|
||||
for (int i = 0; i < 33; i++) {
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char((unsigned char)(i)) );
|
||||
}
|
||||
|
||||
|
||||
// misc
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char('(') );
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char(')') );
|
||||
@@ -92,12 +92,12 @@ BOOST_AUTO_TEST_CASE( is_token_char ) {
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char('=') );
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char('{') );
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char('}') );
|
||||
|
||||
|
||||
// upper unprintable and out of ascii range
|
||||
for (int i = 127; i < 256; i++) {
|
||||
BOOST_CHECK( !websocketpp::http::is_token_char((unsigned char)(i)) );
|
||||
}
|
||||
|
||||
|
||||
// is not
|
||||
BOOST_CHECK( !websocketpp::http::is_not_token_char('!') );
|
||||
BOOST_CHECK( websocketpp::http::is_not_token_char('(') );
|
||||
@@ -130,7 +130,7 @@ BOOST_AUTO_TEST_CASE( extract_quoted_string ) {
|
||||
std::string d5 = "foo";
|
||||
|
||||
std::pair<std::string,std::string::const_iterator> ret;
|
||||
|
||||
|
||||
using websocketpp::http::parser::extract_quoted_string;
|
||||
|
||||
ret = extract_quoted_string(d1.begin(),d1.end());
|
||||
@@ -158,7 +158,7 @@ BOOST_AUTO_TEST_CASE( extract_all_lws ) {
|
||||
std::string d1 = " foo bar";
|
||||
d1.append(1,char(9));
|
||||
d1.append("baz\r\n d\r\n \r\n e\r\nf");
|
||||
|
||||
|
||||
std::string::const_iterator ret;
|
||||
|
||||
ret = websocketpp::http::parser::extract_all_lws(d1.begin(),d1.end());
|
||||
@@ -227,33 +227,33 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
websocketpp::http::parameter_list p;
|
||||
websocketpp::http::attribute_list a;
|
||||
std::string::const_iterator it;
|
||||
|
||||
|
||||
using websocketpp::http::parser::extract_parameters;
|
||||
|
||||
it = extract_parameters(s1.begin(),s1.end(),p);
|
||||
BOOST_CHECK( it == s1.begin() );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s2.begin(),s2.end(),p);
|
||||
BOOST_CHECK( it == s2.end() );
|
||||
BOOST_CHECK_EQUAL( p.size(), 1 );
|
||||
BOOST_CHECK( p[0].first == "foo" );
|
||||
BOOST_CHECK_EQUAL( p[0].second.size(), 0 );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s3.begin(),s3.end(),p);
|
||||
BOOST_CHECK( it == s3.begin()+5 );
|
||||
BOOST_CHECK_EQUAL( p.size(), 1 );
|
||||
BOOST_CHECK( p[0].first == "foo" );
|
||||
BOOST_CHECK_EQUAL( p[0].second.size(), 0 );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s4.begin(),s4.end(),p);
|
||||
BOOST_CHECK( it == s4.end() );
|
||||
BOOST_CHECK_EQUAL( p.size(), 1 );
|
||||
BOOST_CHECK( p[0].first == "foo" );
|
||||
BOOST_CHECK_EQUAL( p[0].second.size(), 0 );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s5.begin(),s5.end(),p);
|
||||
BOOST_CHECK( it == s5.end() );
|
||||
@@ -262,7 +262,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( p[0].second.size(), 0 );
|
||||
BOOST_CHECK( p[1].first == "bar" );
|
||||
BOOST_CHECK_EQUAL( p[1].second.size(), 0 );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s6.begin(),s6.end(),p);
|
||||
BOOST_CHECK( it == s6.end() );
|
||||
@@ -272,7 +272,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( a.size(), 1 );
|
||||
BOOST_CHECK( a.find("bar") != a.end() );
|
||||
BOOST_CHECK_EQUAL( a.find("bar")->second, "" );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s7.begin(),s7.end(),p);
|
||||
BOOST_CHECK( it == s7.end() );
|
||||
@@ -285,7 +285,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK( p[1].first == "bar" );
|
||||
a = p[1].second;
|
||||
BOOST_CHECK_EQUAL( a.size(), 0 );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s8.begin(),s8.end(),p);
|
||||
BOOST_CHECK( it == s8.end() );
|
||||
@@ -297,7 +297,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( a.find("bar")->second, "" );
|
||||
BOOST_CHECK( a.find("baz") != a.end() );
|
||||
BOOST_CHECK_EQUAL( a.find("baz")->second, "" );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s9.begin(),s9.end(),p);
|
||||
BOOST_CHECK( it == s9.end() );
|
||||
@@ -307,7 +307,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( a.size(), 1 );
|
||||
BOOST_CHECK( a.find("bar") != a.end() );
|
||||
BOOST_CHECK_EQUAL( a.find("bar")->second, "baz" );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s10.begin(),s10.end(),p);
|
||||
BOOST_CHECK( it == s10.end() );
|
||||
@@ -319,7 +319,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( a.find("bar")->second, "baz" );
|
||||
BOOST_CHECK( a.find("boo") != a.end() );
|
||||
BOOST_CHECK_EQUAL( a.find("boo")->second, "" );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s11.begin(),s11.end(),p);
|
||||
BOOST_CHECK( it == s11.end() );
|
||||
@@ -333,7 +333,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( a.find("boo")->second, "" );
|
||||
a = p[1].second;
|
||||
BOOST_CHECK_EQUAL( a.size(), 0 );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s12.begin(),s12.end(),p);
|
||||
BOOST_CHECK( it == s12.end() );
|
||||
@@ -343,7 +343,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
BOOST_CHECK_EQUAL( a.size(), 1 );
|
||||
BOOST_CHECK( a.find("bar") != a.end() );
|
||||
BOOST_CHECK_EQUAL( a.find("bar")->second, "a b c" );
|
||||
|
||||
|
||||
p.clear();
|
||||
it = extract_parameters(s13.begin(),s13.end(),p);
|
||||
BOOST_CHECK( it == s13.end() );
|
||||
@@ -357,7 +357,7 @@ BOOST_AUTO_TEST_CASE( extract_parameters ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( case_insensitive_headers ) {
|
||||
websocketpp::http::parser::parser r;
|
||||
|
||||
|
||||
r.replace_header("foo","bar");
|
||||
|
||||
BOOST_CHECK_EQUAL( r.get_header("foo"), "bar" );
|
||||
@@ -367,89 +367,89 @@ BOOST_AUTO_TEST_CASE( case_insensitive_headers ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( case_insensitive_headers_overwrite ) {
|
||||
websocketpp::http::parser::parser r;
|
||||
|
||||
|
||||
r.replace_header("foo","bar");
|
||||
|
||||
BOOST_CHECK_EQUAL( r.get_header("foo"), "bar" );
|
||||
BOOST_CHECK_EQUAL( r.get_header("Foo"), "bar" );
|
||||
|
||||
|
||||
r.replace_header("Foo","baz");
|
||||
|
||||
|
||||
BOOST_CHECK_EQUAL( r.get_header("foo"), "baz" );
|
||||
BOOST_CHECK_EQUAL( r.get_header("Foo"), "baz" );
|
||||
|
||||
|
||||
r.remove_header("FoO");
|
||||
|
||||
|
||||
BOOST_CHECK_EQUAL( r.get_header("foo"), "" );
|
||||
BOOST_CHECK_EQUAL( r.get_header("Foo"), "" );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( blank_consume ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
|
||||
|
||||
try {
|
||||
r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( r.ready() == false );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( blank_request ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
|
||||
|
||||
try {
|
||||
r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
BOOST_CHECK( r.ready() == false );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( bad_request_no_host ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
|
||||
|
||||
try {
|
||||
r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
BOOST_CHECK( r.ready() == false );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( basic_request ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (std::exception &e) {
|
||||
exception = true;
|
||||
std::cout << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 41 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -461,18 +461,18 @@ BOOST_AUTO_TEST_CASE( basic_request ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( trailing_body_characters ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: www.example.com\r\n\r\na";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 41 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -484,13 +484,13 @@ BOOST_AUTO_TEST_CASE( trailing_body_characters ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( basic_split1 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\n";
|
||||
std::string raw2 = "Host: www.example.com\r\n\r\na";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
pos += r.consume(raw2.c_str(),raw2.size());
|
||||
@@ -498,7 +498,7 @@ BOOST_AUTO_TEST_CASE( basic_split1 ) {
|
||||
exception = true;
|
||||
std::cout << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 41 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -510,13 +510,13 @@ BOOST_AUTO_TEST_CASE( basic_split1 ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( basic_split2 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: www.example.com\r";
|
||||
std::string raw2 = "\n\r\na";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
pos += r.consume(raw2.c_str(),raw2.size());
|
||||
@@ -524,7 +524,7 @@ BOOST_AUTO_TEST_CASE( basic_split2 ) {
|
||||
exception = true;
|
||||
std::cout << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 41 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -536,12 +536,12 @@ BOOST_AUTO_TEST_CASE( basic_split2 ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( max_header_len ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw(websocketpp::http::max_header_size+1,'*');
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
} catch (const websocketpp::http::exception& e) {
|
||||
@@ -549,19 +549,19 @@ BOOST_AUTO_TEST_CASE( max_header_len ) {
|
||||
exception = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( max_header_len_split ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw(websocketpp::http::max_header_size-1,'*');
|
||||
std::string raw2(2,'*');
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
pos += r.consume(raw2.c_str(),raw2.size());
|
||||
@@ -570,24 +570,24 @@ BOOST_AUTO_TEST_CASE( max_header_len_split ) {
|
||||
exception = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( firefox_full_request ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: localhost:5000\r\nUser-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:10.0) Gecko/20100101 Firefox/10.0\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\nAccept-Language: en-us,en;q=0.5\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive, Upgrade\r\nSec-WebSocket-Version: 8\r\nSec-WebSocket-Origin: http://zaphoyd.com\r\nSec-WebSocket-Key: pFik//FxwFk0riN4ZiPFjQ==\r\nPragma: no-cache\r\nCache-Control: no-cache\r\nUpgrade: websocket\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 482 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -610,50 +610,50 @@ BOOST_AUTO_TEST_CASE( firefox_full_request ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( bad_method ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GE]T / HTTP/1.1\r\nHost: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
|
||||
|
||||
try {
|
||||
r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( bad_header_name ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHo]st: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
|
||||
|
||||
try {
|
||||
r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( old_http_version ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.0\r\nHost: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 41 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -665,18 +665,18 @@ BOOST_AUTO_TEST_CASE( old_http_version ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( new_http_version1 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.12\r\nHost: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 42 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -688,18 +688,18 @@ BOOST_AUTO_TEST_CASE( new_http_version1 ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( new_http_version2 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/12.12\r\nHost: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 43 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -713,35 +713,35 @@ BOOST_AUTO_TEST_CASE( new_http_version2 ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( new_http_version3 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTPS/12.12\r\nHost: www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == true );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( header_whitespace1 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: www.example.com \r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 43 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -753,18 +753,18 @@ BOOST_AUTO_TEST_CASE( header_whitespace1 ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( header_whitespace2 ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost:www.example.com\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 40 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -776,18 +776,18 @@ BOOST_AUTO_TEST_CASE( header_whitespace2 ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( header_aggregation ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: www.example.com\r\nFoo: bar\r\nFoo: bat\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos = r.consume(raw.c_str(),raw.size());
|
||||
} catch (...) {
|
||||
exception = true;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 61 );
|
||||
BOOST_CHECK( r.ready() == true );
|
||||
@@ -799,19 +799,19 @@ BOOST_AUTO_TEST_CASE( header_aggregation ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( wikipedia_example_response ) {
|
||||
websocketpp::http::parser::response r;
|
||||
|
||||
|
||||
std::string raw = "HTTP/1.1 101 Switching Protocols\r\nUpgrade: websocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: HSmrc0sMlYUkAGmm5OPpG2HaGWk=\r\nSec-WebSocket-Protocol: chat\r\n\r\n";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
} catch (std::exception &e) {
|
||||
exception = true;
|
||||
std::cout << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 159 );
|
||||
BOOST_CHECK( r.headers_ready() == true );
|
||||
@@ -826,19 +826,19 @@ BOOST_AUTO_TEST_CASE( wikipedia_example_response ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( plain_http_response ) {
|
||||
websocketpp::http::parser::response r;
|
||||
|
||||
|
||||
std::string raw = "HTTP/1.1 200 OK\r\nDate: Thu, 10 May 2012 11:59:25 GMT\r\nServer: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8r DAV/2 PHP/5.3.8 with Suhosin-Patch\r\nLast-Modified: Tue, 30 Mar 2010 17:41:28 GMT\r\nETag: \"16799d-55-4830823a78200\"\r\nAccept-Ranges: bytes\r\nContent-Length: 85\r\nVary: Accept-Encoding\r\nContent-Type: text/html\r\n\r\n<!doctype html>\n<html>\n<head>\n<title>Thor</title>\n</head>\n<body> \n<p>Thor</p>\n</body>";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(raw.c_str(),raw.size());
|
||||
} catch (std::exception &e) {
|
||||
exception = true;
|
||||
std::cout << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK( exception == false );
|
||||
BOOST_CHECK( pos == 405 );
|
||||
BOOST_CHECK( r.headers_ready() == true );
|
||||
@@ -859,21 +859,21 @@ BOOST_AUTO_TEST_CASE( plain_http_response ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( parse_istream ) {
|
||||
websocketpp::http::parser::response r;
|
||||
|
||||
|
||||
std::stringstream s;
|
||||
|
||||
|
||||
s << "HTTP/1.1 200 OK\r\nDate: Thu, 10 May 2012 11:59:25 GMT\r\nServer: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8r DAV/2 PHP/5.3.8 with Suhosin-Patch\r\nLast-Modified: Tue, 30 Mar 2010 17:41:28 GMT\r\nETag: \"16799d-55-4830823a78200\"\r\nAccept-Ranges: bytes\r\nContent-Length: 85\r\nVary: Accept-Encoding\r\nContent-Type: text/html\r\n\r\n<!doctype html>\n<html>\n<head>\n<title>Thor</title>\n</head>\n<body> \n<p>Thor</p>\n</body>";
|
||||
|
||||
|
||||
bool exception = false;
|
||||
size_t pos = 0;
|
||||
|
||||
|
||||
try {
|
||||
pos += r.consume(s);
|
||||
} catch (std::exception &e) {
|
||||
exception = true;
|
||||
std::cout << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
BOOST_CHECK_EQUAL( exception, false );
|
||||
BOOST_CHECK_EQUAL( pos, 405 );
|
||||
BOOST_CHECK_EQUAL( r.headers_ready(), true );
|
||||
@@ -882,40 +882,40 @@ BOOST_AUTO_TEST_CASE( parse_istream ) {
|
||||
|
||||
BOOST_AUTO_TEST_CASE( write_request_basic ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\n\r\n";
|
||||
|
||||
|
||||
r.set_version("HTTP/1.1");
|
||||
r.set_method("GET");
|
||||
r.set_uri("/");
|
||||
|
||||
|
||||
BOOST_CHECK( r.raw() == raw );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( write_request_with_header ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "GET / HTTP/1.1\r\nHost: http://example.com\r\n\r\n";
|
||||
|
||||
|
||||
r.set_version("HTTP/1.1");
|
||||
r.set_method("GET");
|
||||
r.set_uri("/");
|
||||
r.replace_header("Host","http://example.com");
|
||||
|
||||
|
||||
BOOST_CHECK( r.raw() == raw );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( write_request_with_body ) {
|
||||
websocketpp::http::parser::request r;
|
||||
|
||||
|
||||
std::string raw = "POST / HTTP/1.1\r\nContent-Length: 48\r\nContent-Type: application/x-www-form-urlencoded\r\nHost: http://example.com\r\n\r\nlicenseID=string&content=string¶msXML=string";
|
||||
|
||||
|
||||
r.set_version("HTTP/1.1");
|
||||
r.set_method("POST");
|
||||
r.set_uri("/");
|
||||
r.replace_header("Host","http://example.com");
|
||||
r.replace_header("Content-Type","application/x-www-form-urlencoded");
|
||||
r.set_body("licenseID=string&content=string¶msXML=string");
|
||||
|
||||
|
||||
BOOST_CHECK( r.raw() == raw );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user