BOOST_CHECK_EQUAL(string(""), output);
}
+BOOST_AUTO_TEST_CASE(TagsWithWhitespaces)
+{
+ string output = restrict_html("< h1 >Title< / h1 >"); // invalid
+ BOOST_CHECK_EQUAL(string("Title"), output);
+
+ output = restrict_html("<h1 >Title</h1 >");
+ BOOST_CHECK_EQUAL(string("<h1 >Title</h1 >"), output);
+}
+
+BOOST_AUTO_TEST_CASE(SelfClosingTagNotation)
+{
+ string output = restrict_html("<br />");
+ BOOST_CHECK_EQUAL(string("<br />"), output);
+
+ output = restrict_html("<br/>");
+ BOOST_CHECK_EQUAL(string("<br/>"), output);
+
+ output = restrict_html("<br / >"); // invalid
+ BOOST_CHECK_EQUAL(string(""), output);
+
+ output = restrict_html("<img />");
+ BOOST_CHECK_EQUAL(string(""), output);
+}
+
BOOST_AUTO_TEST_CASE(NonStripMode)
{
BOOST_CHECK_THROW(restrict_html("<a href=\"http://site.com/dir\"onclick=\"e"
"m\">test</a>", false));
}
+BOOST_AUTO_TEST_CASE(NonStripMode4)
+{
+ BOOST_CHECK_THROW(restrict_html("<h1>Title</h2>", false), runtime_error);
+}
+
BOOST_AUTO_TEST_CASE(DecodeStringURL)
{
string output = decode_url("%77%77%77%2E%67%6F%6F%67%6C%65%2E%63%6F%6D");
BOOST_CHECK_EQUAL(string("<script>alert(document.cookie)</script>"), output);
}
+BOOST_AUTO_TEST_CASE(DecodeStringURL3)
+{
+ string output = decode_url("http://www.google.com/aaaa?aa=vv&cc=dd");
+ BOOST_CHECK_EQUAL(string("http://www.google.com/aaaa?aa=vv&cc=dd"), output);
+}
+
BOOST_AUTO_TEST_CASE(EncodeStringURL)
{
string output = encode_url("http://www.domain.com/params?param=b'ar:!~/");