From 4e391fdae663f7fdf31c4f637f7ec55beef427ea Mon Sep 17 00:00:00 2001 From: yhirose Date: Tue, 13 Mar 2018 23:03:54 -0400 Subject: [PATCH] Added a unit test for REMOTE_ADDR --- test/test.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/test/test.cc b/test/test.cc index 48e776b..3e4daf1 100644 --- a/test/test.cc +++ b/test/test.cc @@ -201,6 +201,10 @@ protected: svr_.get("/hi", [&](const Request& /*req*/, Response& res) { res.set_content("Hello World!", "text/plain"); }) + .get("/remote_addr", [&](const Request& req, Response& res) { + auto remote_addr = req.headers.find("REMOTE_ADDR")->second; + res.set_content(remote_addr.c_str(), "text/plain"); + }) .get("/endwith%", [&](const Request& /*req*/, Response& res) { res.set_content("Hello World!", "text/plain"); }) @@ -574,6 +578,15 @@ TEST_F(ServerTest, CaseInsensitiveHeaderName) EXPECT_EQ("Hello World!", res->body); } +TEST_F(ServerTest, GetMethodRemoteAddr) +{ + auto res = cli_.get("/remote_addr"); + ASSERT_TRUE(res != nullptr); + EXPECT_EQ(200, res->status); + EXPECT_EQ("text/plain", res->get_header_value("Content-Type")); + EXPECT_EQ("::1", res->body); // NOTE: depends on user's environment... +} + #ifdef CPPHTTPLIB_ZLIB_SUPPORT TEST_F(ServerTest, Gzip) {