// // Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // // Official repository: https://github.com/boostorg/beast // // Test that header file is self-contained. #include #include #include #include #include #include #include #include #include namespace boost { namespace beast { namespace http { class dynamic_body_test : public beast::unit_test::suite { net::io_context ioc_; public: template static std::string to_string(message const& m) { std::stringstream ss; ss << m; return ss.str(); } void run() override { std::string const s = "HTTP/1.1 200 OK\r\n" "Server: test\r\n" "Content-Length: 3\r\n" "\r\n" "xyz"; test::stream ts(ioc_, s); response_parser p; multi_buffer b; read(ts, b, p); auto const& m = p.get(); BEAST_EXPECT(buffers_to_string(m.body().data()) == "xyz"); BEAST_EXPECT(to_string(m) == s); } }; BEAST_DEFINE_TESTSUITE(beast,http,dynamic_body); } // http } // beast } // boost