Handle both HTTP & HTTPS in HttpClientSession; remove macro WEBCC_ENABLE_SSL.

This commit is contained in:
Chunting Gu
2019-03-06 13:46:19 +08:00
parent 9b8304f06c
commit ffa0794926
9 changed files with 171 additions and 72 deletions
+83
View File
@@ -0,0 +1,83 @@
#include "gtest/gtest.h"
#include "webcc/url.h"
TEST(Url, Basic) {
webcc::Url url("http://example.com/path", false);
EXPECT_EQ("http", url.scheme());
EXPECT_EQ("example.com", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("path", url.path());
EXPECT_EQ("", url.query());
}
TEST(Url, NoPath) {
webcc::Url url("http://example.com", false);
EXPECT_EQ("http", url.scheme());
EXPECT_EQ("example.com", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("", url.path());
EXPECT_EQ("", url.query());
}
TEST(Url, NoPath2) {
webcc::Url url("http://example.com/", false);
EXPECT_EQ("http", url.scheme());
EXPECT_EQ("example.com", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("", url.path());
EXPECT_EQ("", url.query());
}
TEST(Url, NoPath3) {
webcc::Url url("http://example.com?key=value", false);
EXPECT_EQ("http", url.scheme());
EXPECT_EQ("example.com", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("", url.path());
EXPECT_EQ("key=value", url.query());
}
TEST(Url, NoPath4) {
webcc::Url url("http://example.com/?key=value", false);
EXPECT_EQ("http", url.scheme());
EXPECT_EQ("example.com", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("", url.path());
EXPECT_EQ("key=value", url.query());
}
TEST(Url, NoScheme) {
webcc::Url url("/path/to", false);
EXPECT_EQ("", url.scheme());
EXPECT_EQ("", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("path/to", url.path());
EXPECT_EQ("", url.query());
}
TEST(Url, NoScheme2) {
webcc::Url url("/path/to?key=value", false);
EXPECT_EQ("", url.scheme());
EXPECT_EQ("", url.host());
EXPECT_EQ("", url.port());
EXPECT_EQ("path/to", url.path());
EXPECT_EQ("key=value", url.query());
}
TEST(Url, Full) {
webcc::Url url("https://localhost:3000/path/to?key=value", false);
EXPECT_EQ("https", url.scheme());
EXPECT_EQ("localhost", url.host());
EXPECT_EQ("3000", url.port());
EXPECT_EQ("path/to", url.path());
EXPECT_EQ("key=value", url.query());
}