mirror of
https://github.com/boostorg/redis.git
synced 2026-01-19 04:42:09 +00:00
Adds the concept of a "temporary working area" to flat_tree. Nodes in this area belong to a partially parsed message, and are hidden from the user. Now flat_tree can be used as the receive response without explicitly handling partial messages. Changes flat_tree::get_view return type from const vector& to span. Adds flat_tree::capacity. Splits generic_flat_response tests to a separate file and adds extra cases. close #369
86 lines
2.4 KiB
Plaintext
86 lines
2.4 KiB
Plaintext
|
|
import-search /boost/config/checks ;
|
|
import config : requires ;
|
|
import ac ;
|
|
|
|
# Configure openssl if it hasn't been done yet
|
|
using openssl ;
|
|
|
|
# Use these requirements as both regular and usage requirements across all tests
|
|
local requirements =
|
|
<library>/boost/redis//boost_redis
|
|
<define>BOOST_ASIO_NO_DEPRECATED=1
|
|
<define>BOOST_ASIO_DISABLE_BOOST_ARRAY=1
|
|
<define>BOOST_ASIO_DISABLE_BOOST_BIND=1
|
|
<define>BOOST_ASIO_DISABLE_BOOST_DATE_TIME=1
|
|
<define>BOOST_ASIO_DISABLE_BOOST_REGEX=1
|
|
<define>BOOST_ALLOW_DEPRECATED=1 # we need to test deprecated fns
|
|
<define>_CRT_SECURE_NO_WARNINGS=1 # suppress MSVC warnings
|
|
<toolset>msvc:<cxxflags>"/bigobj"
|
|
<target-os>windows:<define>_WIN32_WINNT=0x0601
|
|
[ requires
|
|
cxx14_constexpr
|
|
cxx14_generic_lambdas
|
|
cxx14_initialized_lambda_captures
|
|
cxx14_aggregate_nsdmi
|
|
cxx14_return_type_deduction
|
|
cxx17_hdr_charconv
|
|
cxx17_hdr_optional
|
|
cxx17_hdr_string_view
|
|
cxx17_hdr_variant
|
|
cxx17_std_apply
|
|
cxx17_structured_bindings
|
|
]
|
|
[ ac.check-library /openssl//ssl : <library>/openssl//ssl/<link>shared : <build>no ]
|
|
[ ac.check-library /openssl//crypto : <library>/openssl//crypto/<link>shared : <build>no ]
|
|
<library>/boost/test//boost_unit_test_framework/<warnings-as-errors>off
|
|
;
|
|
|
|
|
|
# Helper library
|
|
lib redis_test_common
|
|
:
|
|
boost_redis.cpp
|
|
common.cpp
|
|
sansio_utils.cpp
|
|
: requirements $(requirements)
|
|
: usage-requirements $(requirements)
|
|
;
|
|
|
|
# B2 runs tests in parallel, and some tests rely on having exclusive
|
|
# access to a Redis server, so we only run the ones that don't require a DB server.
|
|
local tests =
|
|
test_low_level
|
|
test_request
|
|
test_serialization
|
|
test_low_level_sync_sans_io
|
|
test_any_adapter
|
|
test_log_to_file
|
|
test_conn_logging
|
|
test_exec_fsm
|
|
test_exec_one_fsm
|
|
test_writer_fsm
|
|
test_reader_fsm
|
|
test_sentinel_resolve_fsm
|
|
test_run_fsm
|
|
test_connect_fsm
|
|
test_compose_setup_request
|
|
test_setup_adapter
|
|
test_multiplexer
|
|
test_parse_sentinel_response
|
|
test_update_sentinel_list
|
|
test_flat_tree
|
|
test_generic_flat_response
|
|
test_read_buffer
|
|
;
|
|
|
|
# Build and run the tests
|
|
for local test in $(tests)
|
|
{
|
|
run
|
|
$(test).cpp
|
|
redis_test_common/<link>static
|
|
: target-name $(test)
|
|
;
|
|
}
|