@@ -63,12 +63,13 @@ BOOST_AUTO_TEST_CASE(incremental_parser_constructor) {
6363BOOST_AUTO_TEST_CASE (incremental_parser_parse_http_version) {
6464 response_parser<tags::default_string> p;// default constructible
6565 logic::tribool parsed_ok =false ;
66- typedef response_parser<tags::default_string>::range_type range_type;
66+ typedef response_parser<tags::default_string> response_parser_type;
67+ typedef response_parser_type::range_type range_type;
6768 range_type result_range;
6869
6970 std::string valid_http_version =" HTTP/1.0" ;
7071fusion::tie (parsed_ok, result_range) = p.parse_until (
71- response_parser<tags::default_string> ::http_version_done,
72+ response_parser_type ::http_version_done,
7273 valid_http_version);
7374BOOST_CHECK_EQUAL (parsed_ok,true );
7475BOOST_CHECK (!boost::empty (result_range));
@@ -77,10 +78,20 @@ BOOST_AUTO_TEST_CASE(incremental_parser_parse_http_version) {
7778 p.reset ();
7879 valid_http_version =" HTTP/1.1" ;
7980fusion::tie (parsed_ok, result_range) = p.parse_until (
80- response_parser<tags::default_string> ::http_version_done,
81+ response_parser_type ::http_version_done,
8182 valid_http_version);
8283BOOST_CHECK_EQUAL (parsed_ok,true );
8384BOOST_CHECK (!boost::empty (result_range));
8485 parsed =std::string (boost::begin (result_range),boost::end (result_range));
8586 std::cout <<" PARSED:" << parsed <<" state=" << p.state () << std::endl;
87+
88+ p.reset ();
89+ std::string invalid_http_version =" HTTP 1.0" ;
90+ parsed_ok = logic::indeterminate;
91+ fusion::tie (parsed_ok, result_range) = p.parse_until (
92+ response_parser_type::http_version_done,
93+ invalid_http_version);
94+ BOOST_CHECK_EQUAL (parsed_ok,false );
95+ parsed =std::string (boost::begin (result_range),boost::end (result_range));
96+ std::cout <<" PARSED:" << parsed <<" state=" << p.state () << std::endl;
8697}