Split common tests to a new project

This commit is contained in:
Vinnie Falco
2017-06-25 11:09:24 -07:00
parent edeb44617b
commit beead1a297
16 changed files with 68 additions and 47 deletions

View File

@ -1,5 +1,7 @@
Version 68:
* Split common tests to a new project
API Changes:
* Change BodyReader, BodyWriter requirements

View File

@ -1,11 +1,12 @@
# Part of Beast
GroupSources(include/beast beast)
GroupSources(example/common common)
GroupSources(example/http-server-fast "/")
add_executable (http-server-fast
${BEAST_INCLUDES}
${COMMON_INCLUDES}
fields_alloc.hpp
http_server_fast.cpp
)

View File

@ -7,6 +7,8 @@
#include "fields_alloc.hpp"
#include "../common/mime_types.hpp"
#include <beast/core.hpp>
#include <beast/http.hpp>
#include <beast/version.hpp>
@ -24,37 +26,6 @@ namespace ip = boost::asio::ip; // from <boost/asio.hpp>
using tcp = boost::asio::ip::tcp; // from <boost/asio.hpp>
namespace http = beast::http; // from <beast/http.hpp>
// Return a reasonable mime type based on the extension of a file.
//
beast::string_view
mime_type(boost::filesystem::path const& path)
{
using beast::iequals;
auto const ext = path.extension().string();
if(iequals(ext, ".txt")) return "text/plain";
if(iequals(ext, ".htm")) return "text/html";
if(iequals(ext, ".html")) return "text/html";
if(iequals(ext, ".php")) return "text/html";
if(iequals(ext, ".css")) return "text/css";
if(iequals(ext, ".js")) return "application/javascript";
if(iequals(ext, ".json")) return "application/json";
if(iequals(ext, ".xml")) return "application/xml";
if(iequals(ext, ".swf")) return "application/x-shockwave-flash";
if(iequals(ext, ".flv")) return "video/x-flv";
if(iequals(ext, ".png")) return "image/png";
if(iequals(ext, ".jpe")) return "image/jpeg";
if(iequals(ext, ".jpeg")) return "image/jpeg";
if(iequals(ext, ".jpg")) return "image/jpeg";
if(iequals(ext, ".gif")) return "image/gif";
if(iequals(ext, ".bmp")) return "image/bmp";
if(iequals(ext, ".ico")) return "image/vnd.microsoft.icon";
if(iequals(ext, ".tiff")) return "image/tiff";
if(iequals(ext, ".tif")) return "image/tiff";
if(iequals(ext, ".svg")) return "image/svg+xml";
if(iequals(ext, ".svgz")) return "image/svg+xml";
return "application/text";
}
class http_worker
{
public:

View File

@ -9,6 +9,7 @@ if ((NOT "${VARIANT}" STREQUAL "coverage") AND
(NOT "${VARIANT}" STREQUAL "ubasan"))
add_subdirectory (benchmarks)
add_subdirectory (common)
add_subdirectory (server)
GroupSources(extras/beast extras)

View File

@ -29,6 +29,7 @@ compile zlib.cpp : <variant>coverage:<build>no
<variant>ubasan:<build>no : ;
build-project benchmarks ;
build-project common ;
build-project core ;
build-project http ;
build-project server ;

View File

@ -0,0 +1,28 @@
# Part of Beast
GroupSources(example/common common)
GroupSources(extras/beast extras)
GroupSources(include/beast beast)
GroupSources(test/common "/")
add_executable (common-test
${BEAST_INCLUDES}
${COMMON_INCLUDES}
detect_ssl.cpp
file_body.cpp
mime_types.cpp
rfc7231.cpp
ssl_stream.cpp
write_msg.cpp
main.cpp
)
target_link_libraries(common-test
Beast
${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_FILESYSTEM_LIBRARY}
)
if (OPENSSL_FOUND)
target_link_libraries (common-test ${OPENSSL_LIBRARIES})
endif()

19
test/common/Jamfile Normal file
View File

@ -0,0 +1,19 @@
#
# Copyright (c) 2013-2017 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)
#
exe common-test :
detect_ssl.cpp
file_body.cpp
mime_types.cpp
rfc7231.cpp
ssl_stream.cpp
write_msg.cpp
main.cpp
:
<variant>coverage:<build>no
<variant>ubasan:<build>no
;

10
test/common/main.cpp Normal file
View File

@ -0,0 +1,10 @@
//
// Copyright (c) 2013-2017 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)
//
int main()
{
}

View File

@ -1,6 +1,7 @@
# Part of Beast
GroupSources(example/server-framework framework)
GroupSources(example/common common)
GroupSources(extras/beast extras)
GroupSources(include/beast beast)
@ -8,6 +9,7 @@ GroupSources(test/server "/")
add_executable (server-test
${BEAST_INCLUDES}
${COMMON_INCLUDES}
${SERVER_INCLUDES}
../../extras/beast/unit_test/main.cpp
file_service.cpp
@ -25,13 +27,6 @@ add_executable (server-test
ws_sync_port.cpp
ws_upgrade_service.cpp
wss_ports.cpp
detect_ssl.cpp
file_body.cpp
mime_types.cpp
rfc7231.cpp
ssl_stream.cpp
write_msg.cpp
)
target_link_libraries(server-test

View File

@ -18,17 +18,10 @@ unit-test server-test :
service_list.cpp
ssl_certificate.cpp
tests.cpp
write_msg.cpp
ws_async_port.cpp
ws_sync_port.cpp
ws_upgrade_service.cpp
detect_ssl.cpp
file_body.cpp
mime_types.cpp
rfc7231.cpp
ssl_stream.cpp
write_msg.cpp
wss_ports.cpp
:
<variant>coverage:<build>no
<variant>ubasan:<build>no