check url scheme

This commit is contained in:
Chunting Gu
2021-06-22 10:16:58 +08:00
parent 26bb6b341a
commit 326a3ea215
4 changed files with 70 additions and 10 deletions
@@ -441,3 +441,33 @@ TEST(ClientTest, KeepAlive) {
std::cerr << error << std::endl;
}
}
// Test that URL scheme is NOT case sensitive.
TEST(ClientTest, UpperCaseUrlScheme) {
webcc::ClientSession session;
try {
auto r = session.Send(WEBCC_GET("HTTP://httpbin.org/get")());
EXPECT_EQ(webcc::Status::kOK, r->status());
} catch (const webcc::Error& error) {
std::cerr << error << std::endl;
}
}
TEST(ClientTest, InvalidUrlScheme) {
webcc::ClientSession session;
webcc::Error::Code error_code = webcc::Error::kUnknownError;
try {
// NOTE: "httb" is not a valid/supported scheme.
auto r = session.Send(WEBCC_GET("httb://httpbin.org/get")());
} catch (const webcc::Error& error) {
error_code = error.code();
}
EXPECT_EQ(webcc::Error::kSyntaxError, error_code);
}