Commit d3a31d9f authored by knowledge4igor's avatar knowledge4igor

Tiny changes in URI query

parent 71459312
......@@ -213,7 +213,9 @@ namespace Private {
request->version_ = Version::Http11;
}
else {
raise("Encountered invalid HTTP version");
std::string problem("Encountered invalid HTTP version");
problem += std::string(ver);
raise(problem.c_str());
}
if (!cursor.advance(2)) return State::Again;
......@@ -505,9 +507,9 @@ namespace Uri {
for(const auto &e : params) {
query_url += "&" + e.first + "=" + e.second;
}
if(not query_url.empty()) {
if(!query_url.empty()) {
query_url[0] = '?'; // replace first `&` with `?`
} else {/* query_url is empty */}
}
return query_url;
}
......
......@@ -16,6 +16,7 @@ pistache_test(router_test)
pistache_test(cookie_test)
pistache_test(view_test)
pistache_test(http_parsing_test)
pistache_test(http_uri_test)
pistache_test(http_client_test)
pistache_test(net_test)
pistache_test(listener_test)
......
#include "gtest/gtest.h"
#include <pistache/http.h>
using namespace Pistache;
TEST(http_uri_test, query_as_string_test)
{
Http::Uri::Query query1;
ASSERT_TRUE(query1.as_str().empty());
Http::Uri::Query query2;
query2.add("value1", "name1");
ASSERT_STREQ(query2.as_str().c_str(), "?value1=name1");
Http::Uri::Query query3;
query3.add("value1", "name1");
query3.add("value2", "name2");
ASSERT_STREQ(query3.as_str().c_str(), "?value2=name2&value1=name1");
}
\ No newline at end of file
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