diff options
Diffstat (limited to 'test/uri.cc')
| -rw-r--r-- | test/uri.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/test/uri.cc b/test/uri.cc index 44366b9..edaef5f 100644 --- a/test/uri.cc +++ b/test/uri.cc @@ -11,6 +11,7 @@ TEST(uri, empty) { TEST(uri, example) { std::string tmp; EXPECT_EQ("?x=test", uri::decode("%3Fx%3Dtest", tmp).value_or("error")); + EXPECT_EQ("?x=test", uri::decode("%3fx%3dtest", tmp).value_or("error")); EXPECT_EQ( "шеллы", uri::decode("%D1%88%D0%B5%D0%BB%D0%BB%D1%8B", tmp).value_or("error")); @@ -21,3 +22,11 @@ TEST(uri, example) { EXPECT_EQ("search+query (correct)", uri::decode("search+query%20%28correct%29", tmp).value_or("error")); } + +TEST(uri, bad) { + std::string tmp; + EXPECT_FALSE(uri::decode("%3Fx%3", tmp).has_value()); + EXPECT_FALSE(uri::decode("%3Fx%3test", tmp).has_value()); + EXPECT_FALSE(uri::decode("%%", tmp).has_value()); + EXPECT_FALSE(uri::decode("%D1", tmp).has_value()); +} |
