| 15 | // which used to be a dependency of the UrlDecode function. |
| 16 | |
| 17 | BOOST_AUTO_TEST_CASE(encode_decode_test) { |
| 18 | BOOST_CHECK_EQUAL(UrlDecode("Hello"), "Hello"); |
| 19 | BOOST_CHECK_EQUAL(UrlDecode("99"), "99"); |
| 20 | BOOST_CHECK_EQUAL(UrlDecode(""), ""); |
| 21 | BOOST_CHECK_EQUAL(UrlDecode("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789-.~_"), |
| 22 | "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789-.~_"); |
| 23 | BOOST_CHECK_EQUAL(UrlDecode("%20"), " "); |
| 24 | BOOST_CHECK_EQUAL(UrlDecode("%FF%F0%E0"), "\xff\xf0\xe0"); |
| 25 | BOOST_CHECK_EQUAL(UrlDecode("%01%19"), "\x01\x19"); |
| 26 | BOOST_CHECK_EQUAL(UrlDecode("http%3A%2F%2Fwww.ietf.org%2Frfc%2Frfc3986.txt"), |
| 27 | "http://www.ietf.org/rfc/rfc3986.txt"); |
| 28 | BOOST_CHECK_EQUAL(UrlDecode("1%2B2%3D3"), "1+2=3"); |
| 29 | } |
| 30 | |
| 31 | BOOST_AUTO_TEST_CASE(decode_malformed_test) { |
| 32 | BOOST_CHECK_EQUAL(UrlDecode("%%xhello th+ere \xff"), "%%xhello th+ere \xff"); |