Commit c1690ab6 authored by Miguel Sacristan's avatar Miguel Sacristan

Added Unit Test for CUSTOM_HEADER Macro

parent 45f36f7f
...@@ -562,10 +562,16 @@ private: ...@@ -562,10 +562,16 @@ private:
explicit header_name(const char* value) \ explicit header_name(const char* value) \
: value_{value} {} \ : value_{value} {} \
\ \
explicit header_name(const std::string& value) \ explicit header_name(std::string value) \
: value_(value) {} \ : value_(std::move(value)) {} \
\ \
void write(std::ostream& os) const final { os << value_; }; \ void parseRaw(const char *str, size_t len) final \
{ value_ = { str, len };} \
\
void write(std::ostream& os) const final \
{ os << value_; }; \
\
std::string val() const { return value_; }; \
\ \
private: \ private: \
std::string value_; \ std::string value_; \
......
...@@ -8,8 +8,6 @@ ...@@ -8,8 +8,6 @@
using namespace Pistache::Http; using namespace Pistache::Http;
CUSTOM_HEADER(TestHeader)
TEST(headers_test, accept) { TEST(headers_test, accept) {
Header::Accept a1; Header::Accept a1;
a1.parse("audio/*; q=0.2"); a1.parse("audio/*; q=0.2");
...@@ -323,13 +321,23 @@ TEST(headers_test, access_control_allow_methods_test) ...@@ -323,13 +321,23 @@ TEST(headers_test, access_control_allow_methods_test)
ASSERT_EQ(allowMethods.val(), "GET, POST, DELETE"); ASSERT_EQ(allowMethods.val(), "GET, POST, DELETE");
} }
CUSTOM_HEADER(TestHeader)
TEST(header_test, macro_for_custom_headers)
{
TestHeader testHeader;
ASSERT_TRUE(TestHeader::Name == "TestHeader");
testHeader.parse("Header Content Test");
ASSERT_EQ(testHeader.val(), "Header Content Test");
}
TEST(headers_test, add_new_header_test) TEST(headers_test, add_new_header_test)
{ {
const std::string headerName = "TestHeader"; const std::string headerName = "TestHeader";
ASSERT_FALSE(Header::Registry::instance().isRegistered(headerName)); ASSERT_FALSE(Header::Registry::instance().isRegistered(headerName));
Header::Registry::instance().registerHeader<TestHeader>(); Header::Registry::instance().registerHeader<TestHeader>();
ASSERT_TRUE(TestHeader::Name == "TestHeader");
ASSERT_TRUE(Header::Registry::instance().isRegistered(headerName)); ASSERT_TRUE(Header::Registry::instance().isRegistered(headerName));
const auto& headersList = Header::Registry::instance().headersList(); const auto& headersList = Header::Registry::instance().headersList();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment