mirror of
https://github.com/boostorg/redis.git
synced 2026-01-19 04:42:09 +00:00
Enables -Wall and -Werror in CIs (#254)
Removed warnings in: * bench/echo_server_client.cpp (parameter shadowing) * include/boost/redis/adapter/detail/adapters.hpp (unused parameter) * include/boost/redis/connection.hpp (unused parameter) * include/boost/redis/resp3/impl/parser.ipp (signed to unsigned conversion) * test/test_conversions.cpp (signed to unsigned comparison) * test/test_issue_50.cpp (superfluous move) * test/test_low_level_sync_sans_io.cpp (signed to unsigned comparison)
This commit is contained in:
committed by
GitHub
parent
c1c50e3e24
commit
e8b13bd7a0
@@ -27,9 +27,9 @@ auto example(boost::asio::ip::tcp::endpoint ep, std::string msg, int n) -> net::
|
|||||||
auto dbuffer = net::dynamic_buffer(buffer);
|
auto dbuffer = net::dynamic_buffer(buffer);
|
||||||
for (int i = 0; i < n; ++i) {
|
for (int i = 0; i < n; ++i) {
|
||||||
co_await net::async_write(socket, net::buffer(msg));
|
co_await net::async_write(socket, net::buffer(msg));
|
||||||
auto n = co_await net::async_read_until(socket, dbuffer, "\n");
|
auto bytes_read = co_await net::async_read_until(socket, dbuffer, "\n");
|
||||||
//std::printf("> %s", buffer.data());
|
//std::printf("> %s", buffer.data());
|
||||||
dbuffer.consume(n);
|
dbuffer.consume(bytes_read);
|
||||||
}
|
}
|
||||||
|
|
||||||
//std::printf("Ok: %s", msg.data());
|
//std::printf("Ok: %s", msg.data());
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ struct converter<T, true> {
|
|||||||
template <>
|
template <>
|
||||||
struct converter<bool, false> {
|
struct converter<bool, false> {
|
||||||
template <class String>
|
template <class String>
|
||||||
static void apply(bool& t, resp3::basic_node<String> const& node, system::error_code& ec)
|
static void apply(bool& t, resp3::basic_node<String> const& node, system::error_code&)
|
||||||
{
|
{
|
||||||
t = *node.value.data() == 't';
|
t = *node.value.data() == 't';
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -354,7 +354,7 @@ public:
|
|||||||
system::error_code ec1 = {},
|
system::error_code ec1 = {},
|
||||||
system::error_code ec2 = {},
|
system::error_code ec2 = {},
|
||||||
system::error_code ec3 = {},
|
system::error_code ec3 = {},
|
||||||
system::error_code ec4 = {})
|
system::error_code = {})
|
||||||
{
|
{
|
||||||
BOOST_ASIO_CORO_REENTER(coro_) for (;;)
|
BOOST_ASIO_CORO_REENTER(coro_) for (;;)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
#include <boost/assert.hpp>
|
#include <boost/assert.hpp>
|
||||||
|
|
||||||
#include <charconv>
|
#include <charconv>
|
||||||
|
#include <cstddef>
|
||||||
#include <limits>
|
#include <limits>
|
||||||
|
|
||||||
namespace boost::redis::resp3 {
|
namespace boost::redis::resp3 {
|
||||||
@@ -177,7 +178,7 @@ auto parser::consume_impl(type t, std::string_view elem, system::error_code& ec)
|
|||||||
case type::attribute:
|
case type::attribute:
|
||||||
case type::map:
|
case type::map:
|
||||||
{
|
{
|
||||||
std::size_t l = -1;
|
std::size_t l = static_cast<std::size_t>(-1);
|
||||||
to_int(l, elem, ec);
|
to_int(l, elem, ec);
|
||||||
if (ec)
|
if (ec)
|
||||||
return {};
|
return {};
|
||||||
|
|||||||
@@ -3,8 +3,11 @@
|
|||||||
add_library(boost_redis_project_options INTERFACE)
|
add_library(boost_redis_project_options INTERFACE)
|
||||||
target_link_libraries(boost_redis_project_options INTERFACE boost_redis)
|
target_link_libraries(boost_redis_project_options INTERFACE boost_redis)
|
||||||
if (MSVC)
|
if (MSVC)
|
||||||
target_compile_options(boost_redis_project_options INTERFACE /bigobj)
|
# C4459: name hides outer scope variable is issued by Asio
|
||||||
|
target_compile_options(boost_redis_project_options INTERFACE /bigobj /W4 /WX /wd4459)
|
||||||
target_compile_definitions(boost_redis_project_options INTERFACE _WIN32_WINNT=0x0601)
|
target_compile_definitions(boost_redis_project_options INTERFACE _WIN32_WINNT=0x0601)
|
||||||
|
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||||
|
target_compile_options(boost_redis_project_options INTERFACE -Wall -Wextra -Werror)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(boost_redis_src STATIC boost_redis.cpp)
|
add_library(boost_redis_src STATIC boost_redis.cpp)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ local requirements =
|
|||||||
]
|
]
|
||||||
[ ac.check-library /openssl//ssl : <library>/openssl//ssl/<link>shared : <build>no ]
|
[ ac.check-library /openssl//ssl : <library>/openssl//ssl/<link>shared : <build>no ]
|
||||||
[ ac.check-library /openssl//crypto : <library>/openssl//crypto/<link>shared : <build>no ]
|
[ ac.check-library /openssl//crypto : <library>/openssl//crypto/<link>shared : <build>no ]
|
||||||
<library>/boost/test//boost_unit_test_framework
|
<library>/boost/test//boost_unit_test_framework/<warnings-as-errors>off
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -57,15 +57,15 @@ BOOST_AUTO_TEST_CASE(ints)
|
|||||||
|
|
||||||
// Check
|
// Check
|
||||||
BOOST_TEST(std::get<1>(resp).value() == 42);
|
BOOST_TEST(std::get<1>(resp).value() == 42);
|
||||||
BOOST_TEST(std::get<2>(resp).value() == 42);
|
BOOST_TEST(std::get<2>(resp).value() == 42u);
|
||||||
BOOST_TEST(std::get<3>(resp).value() == 42);
|
BOOST_TEST(std::get<3>(resp).value() == 42);
|
||||||
BOOST_TEST(std::get<4>(resp).value() == 42);
|
BOOST_TEST(std::get<4>(resp).value() == 42u);
|
||||||
BOOST_TEST(std::get<5>(resp).value() == 42);
|
BOOST_TEST(std::get<5>(resp).value() == 42);
|
||||||
BOOST_TEST(std::get<6>(resp).value() == 42);
|
BOOST_TEST(std::get<6>(resp).value() == 42u);
|
||||||
BOOST_TEST(std::get<7>(resp).value() == 42);
|
BOOST_TEST(std::get<7>(resp).value() == 42);
|
||||||
BOOST_TEST(std::get<8>(resp).value() == 42);
|
BOOST_TEST(std::get<8>(resp).value() == 42u);
|
||||||
BOOST_TEST(std::get<9>(resp).value() == 42);
|
BOOST_TEST(std::get<9>(resp).value() == 42);
|
||||||
BOOST_TEST(std::get<10>(resp).value() == 42);
|
BOOST_TEST(std::get<10>(resp).value() == 42u);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(bools)
|
BOOST_AUTO_TEST_CASE(bools)
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ auto co_main(config) -> net::awaitable<void>
|
|||||||
BOOST_AUTO_TEST_CASE(issue_50)
|
BOOST_AUTO_TEST_CASE(issue_50)
|
||||||
{
|
{
|
||||||
net::io_context ioc;
|
net::io_context ioc;
|
||||||
net::co_spawn(ioc, std::move(co_main({})), net::detached);
|
net::co_spawn(ioc, co_main({}), net::detached);
|
||||||
ioc.run();
|
ioc.run();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,26 +4,24 @@
|
|||||||
* accompanying file LICENSE.txt)
|
* accompanying file LICENSE.txt)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <boost/redis/request.hpp>
|
|
||||||
#include <boost/redis/response.hpp>
|
|
||||||
#include <boost/redis/adapter/adapt.hpp>
|
#include <boost/redis/adapter/adapt.hpp>
|
||||||
|
#include <boost/redis/request.hpp>
|
||||||
#include <boost/redis/resp3/parser.hpp>
|
#include <boost/redis/resp3/parser.hpp>
|
||||||
|
#include <boost/redis/response.hpp>
|
||||||
|
|
||||||
#define BOOST_TEST_MODULE low level
|
#define BOOST_TEST_MODULE low_level
|
||||||
#include <boost/test/included/unit_test.hpp>
|
#include <boost/test/included/unit_test.hpp>
|
||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <iostream>
|
|
||||||
#include <optional>
|
#include <optional>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
|
|
||||||
// TODO: Test with empty strings.
|
// TODO: Test with empty strings.
|
||||||
|
|
||||||
namespace std
|
namespace std {
|
||||||
{
|
auto operator==(boost::redis::ignore_t, boost::redis::ignore_t) noexcept { return true; }
|
||||||
auto operator==(boost::redis::ignore_t, boost::redis::ignore_t) noexcept {return true;}
|
auto operator!=(boost::redis::ignore_t, boost::redis::ignore_t) noexcept { return false; }
|
||||||
auto operator!=(boost::redis::ignore_t, boost::redis::ignore_t) noexcept {return false;}
|
} // namespace std
|
||||||
}
|
|
||||||
|
|
||||||
namespace redis = boost::redis;
|
namespace redis = boost::redis;
|
||||||
namespace resp3 = boost::redis::resp3;
|
namespace resp3 = boost::redis::resp3;
|
||||||
@@ -56,12 +54,20 @@ using array_type = result<std::array<int, 3>>;
|
|||||||
using array_type2 = result<std::array<int, 1>>;
|
using array_type2 = result<std::array<int, 1>>;
|
||||||
|
|
||||||
// Map
|
// Map
|
||||||
using map_type = result<std::map<std::string, std::string>>;
|
using map_type = result<std::map<std::string, std::string>>;
|
||||||
using mmap_type = result<std::multimap<std::string, std::string>>;
|
using mmap_type = result<std::multimap<std::string, std::string>>;
|
||||||
using umap_type = result<std::unordered_map<std::string, std::string>>;
|
using umap_type = result<std::unordered_map<std::string, std::string>>;
|
||||||
using mumap_type = result<std::unordered_multimap<std::string, std::string>>;
|
using mumap_type = result<std::unordered_multimap<std::string, std::string>>;
|
||||||
using op_map_type = result<std::optional<std::map<std::string, std::string>>>;
|
using op_map_type = result<std::optional<std::map<std::string, std::string>>>;
|
||||||
using tuple8_type = result<response<std::string, std::string, std::string, std::string, std::string, std::string, std::string, std::string>>;
|
using tuple8_type = result<response<
|
||||||
|
std::string,
|
||||||
|
std::string,
|
||||||
|
std::string,
|
||||||
|
std::string,
|
||||||
|
std::string,
|
||||||
|
std::string,
|
||||||
|
std::string,
|
||||||
|
std::string>>;
|
||||||
|
|
||||||
// Null
|
// Null
|
||||||
using op_type_01 = result<std::optional<bool>>;
|
using op_type_01 = result<std::optional<bool>>;
|
||||||
@@ -85,7 +91,11 @@ struct expect {
|
|||||||
};
|
};
|
||||||
|
|
||||||
template <class Result>
|
template <class Result>
|
||||||
auto make_expected(std::string in, Result expected, error_code ec = {}, resp3::type error_type = resp3::type::invalid)
|
auto make_expected(
|
||||||
|
std::string in,
|
||||||
|
Result expected,
|
||||||
|
error_code ec = {},
|
||||||
|
resp3::type error_type = resp3::type::invalid)
|
||||||
{
|
{
|
||||||
return expect<Result>{in, expected, ec, error_type};
|
return expect<Result>{in, expected, ec, error_type};
|
||||||
}
|
}
|
||||||
@@ -99,7 +109,7 @@ void test_sync(expect<Result> e)
|
|||||||
error_code ec;
|
error_code ec;
|
||||||
auto const res = parse(p, e.in, adapter, ec);
|
auto const res = parse(p, e.in, adapter, ec);
|
||||||
|
|
||||||
BOOST_TEST(res); // None of these tests need more data.
|
BOOST_TEST(res); // None of these tests need more data.
|
||||||
|
|
||||||
if (ec) {
|
if (ec) {
|
||||||
BOOST_CHECK_EQUAL(ec, e.ec);
|
BOOST_CHECK_EQUAL(ec, e.ec);
|
||||||
@@ -123,7 +133,7 @@ void test_sync2(expect<Result> e)
|
|||||||
error_code ec;
|
error_code ec;
|
||||||
auto const res = parse(p, e.in, adapter, ec);
|
auto const res = parse(p, e.in, adapter, ec);
|
||||||
|
|
||||||
BOOST_TEST(res); // None of these tests need more data.
|
BOOST_TEST(res); // None of these tests need more data.
|
||||||
BOOST_CHECK_EQUAL(ec, e.ec);
|
BOOST_CHECK_EQUAL(ec, e.ec);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,8 +143,6 @@ auto make_blob()
|
|||||||
str[1000] = '\r';
|
str[1000] = '\r';
|
||||||
str[1001] = '\n';
|
str[1001] = '\n';
|
||||||
return str;
|
return str;
|
||||||
|
|
||||||
return str;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
auto const blob = make_blob();
|
auto const blob = make_blob();
|
||||||
@@ -154,6 +162,8 @@ auto make_blob_string(std::string const& b)
|
|||||||
result<std::optional<int>> op_int_ok = 11;
|
result<std::optional<int>> op_int_ok = 11;
|
||||||
result<std::optional<bool>> op_bool_ok = true;
|
result<std::optional<bool>> op_bool_ok = true;
|
||||||
|
|
||||||
|
// clang-format off
|
||||||
|
|
||||||
// TODO: Test a streamed string that is not finished with a string of
|
// TODO: Test a streamed string that is not finished with a string of
|
||||||
// size 0 but other command comes in.
|
// size 0 but other command comes in.
|
||||||
generic_response streamed_string_e1
|
generic_response streamed_string_e1
|
||||||
@@ -461,12 +471,11 @@ generic_response const attr_e1b
|
|||||||
test(make_expected(S10b, node_type{{resp3::type::simple_error, 1UL, 0UL, {""}}}, {}, resp3::type::simple_error)); \
|
test(make_expected(S10b, node_type{{resp3::type::simple_error, 1UL, 0UL, {""}}}, {}, resp3::type::simple_error)); \
|
||||||
test(make_expected(S12a, node_type{{resp3::type::blob_error, 1UL, 0UL, {"SYNTAX invalid syntax"}}}, {}, resp3::type::blob_error));\
|
test(make_expected(S12a, node_type{{resp3::type::blob_error, 1UL, 0UL, {"SYNTAX invalid syntax"}}}, {}, resp3::type::blob_error));\
|
||||||
test(make_expected(S12b, node_type{{resp3::type::blob_error, 1UL, 0UL, {}}}, {}, resp3::type::blob_error));\
|
test(make_expected(S12b, node_type{{resp3::type::blob_error, 1UL, 0UL, {}}}, {}, resp3::type::blob_error));\
|
||||||
test(make_expected(S12c, result<ignore_t>{}, boost::redis::error::resp3_blob_error));\
|
test(make_expected(S12c, result<ignore_t>{}, boost::redis::error::resp3_blob_error));
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(sansio)
|
// clang-format on
|
||||||
{
|
|
||||||
NUMBER_TEST_CONDITIONS(test_sync)
|
BOOST_AUTO_TEST_CASE(sansio){NUMBER_TEST_CONDITIONS(test_sync)}
|
||||||
}
|
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(ignore_adapter_simple_error)
|
BOOST_AUTO_TEST_CASE(ignore_adapter_simple_error)
|
||||||
{
|
{
|
||||||
@@ -478,10 +487,7 @@ BOOST_AUTO_TEST_CASE(ignore_adapter_blob_error)
|
|||||||
test_sync2(make_expected(S12a, ignore, boost::redis::error::resp3_blob_error));
|
test_sync2(make_expected(S12a, ignore, boost::redis::error::resp3_blob_error));
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(ignore_adapter_no_error)
|
BOOST_AUTO_TEST_CASE(ignore_adapter_no_error) { test_sync2(make_expected(S05b, ignore)); }
|
||||||
{
|
|
||||||
test_sync2(make_expected(S05b, ignore));
|
|
||||||
}
|
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------------
|
||||||
void check_error(char const* name, boost::redis::error ev)
|
void check_error(char const* name, boost::redis::error ev)
|
||||||
@@ -492,10 +498,9 @@ void check_error(char const* name, boost::redis::error ev)
|
|||||||
BOOST_TEST(!ec.message().empty());
|
BOOST_TEST(!ec.message().empty());
|
||||||
BOOST_TEST(cat.equivalent(
|
BOOST_TEST(cat.equivalent(
|
||||||
static_cast<std::underlying_type<boost::redis::error>::type>(ev),
|
static_cast<std::underlying_type<boost::redis::error>::type>(ev),
|
||||||
ec.category().default_error_condition(
|
ec.category().default_error_condition(
|
||||||
static_cast<std::underlying_type<boost::redis::error>::type>(ev))));
|
static_cast<std::underlying_type<boost::redis::error>::type>(ev))));
|
||||||
BOOST_TEST(cat.equivalent(ec,
|
BOOST_TEST(cat.equivalent(ec, static_cast<std::underlying_type<boost::redis::error>::type>(ev)));
|
||||||
static_cast<std::underlying_type<boost::redis::error>::type>(ev)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(cover_error)
|
BOOST_AUTO_TEST_CASE(cover_error)
|
||||||
@@ -606,7 +611,7 @@ BOOST_AUTO_TEST_CASE(adapter_as)
|
|||||||
result<std::set<std::string>> set;
|
result<std::set<std::string>> set;
|
||||||
auto adapter = adapt2(set);
|
auto adapter = adapt2(set);
|
||||||
|
|
||||||
for (auto const& e: set_expected1a.value()) {
|
for (auto const& e : set_expected1a.value()) {
|
||||||
error_code ec;
|
error_code ec;
|
||||||
adapter(e, ec);
|
adapter(e, ec);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ BOOST_AUTO_TEST_CASE(issue_210_non_empty_set_size_one)
|
|||||||
deserialize(wire, adapt2(resp));
|
deserialize(wire, adapt2(resp));
|
||||||
|
|
||||||
BOOST_CHECK_EQUAL(std::get<0>(resp.value()).value(), 1);
|
BOOST_CHECK_EQUAL(std::get<0>(resp.value()).value(), 1);
|
||||||
BOOST_CHECK_EQUAL(std::get<1>(resp.value()).value().size(), 1);
|
BOOST_CHECK_EQUAL(std::get<1>(resp.value()).value().size(), 1u);
|
||||||
BOOST_CHECK_EQUAL(std::get<1>(resp.value()).value().at(0), std::string{"foo"});
|
BOOST_CHECK_EQUAL(std::get<1>(resp.value()).value().at(0), std::string{"foo"});
|
||||||
BOOST_CHECK_EQUAL(std::get<2>(resp.value()).value(), "this_should_not_be_in_set");
|
BOOST_CHECK_EQUAL(std::get<2>(resp.value()).value(), "this_should_not_be_in_set");
|
||||||
BOOST_CHECK_EQUAL(std::get<3>(resp.value()).value(), 2);
|
BOOST_CHECK_EQUAL(std::get<3>(resp.value()).value(), 2);
|
||||||
@@ -264,11 +264,11 @@ BOOST_AUTO_TEST_CASE(multiplexer_push)
|
|||||||
auto const ret = mpx.commit_read(ec);
|
auto const ret = mpx.commit_read(ec);
|
||||||
|
|
||||||
BOOST_TEST(ret.first.value());
|
BOOST_TEST(ret.first.value());
|
||||||
BOOST_CHECK_EQUAL(ret.second, 16);
|
BOOST_CHECK_EQUAL(ret.second, 16u);
|
||||||
|
|
||||||
// TODO: Provide operator << for generic_response so we can compare
|
// TODO: Provide operator << for generic_response so we can compare
|
||||||
// the whole vector.
|
// the whole vector.
|
||||||
BOOST_CHECK_EQUAL(resp.value().size(), 3);
|
BOOST_CHECK_EQUAL(resp.value().size(), 3u);
|
||||||
BOOST_CHECK_EQUAL(resp.value().at(1).value, "one");
|
BOOST_CHECK_EQUAL(resp.value().at(1).value, "one");
|
||||||
BOOST_CHECK_EQUAL(resp.value().at(2).value, "two");
|
BOOST_CHECK_EQUAL(resp.value().at(2).value, "two");
|
||||||
|
|
||||||
@@ -294,11 +294,11 @@ BOOST_AUTO_TEST_CASE(multiplexer_push_needs_more)
|
|||||||
ret = mpx.commit_read(ec);
|
ret = mpx.commit_read(ec);
|
||||||
|
|
||||||
BOOST_TEST(ret.first.value());
|
BOOST_TEST(ret.first.value());
|
||||||
BOOST_CHECK_EQUAL(ret.second, 16);
|
BOOST_CHECK_EQUAL(ret.second, 16u);
|
||||||
|
|
||||||
// TODO: Provide operator << for generic_response so we can compare
|
// TODO: Provide operator << for generic_response so we can compare
|
||||||
// the whole vector.
|
// the whole vector.
|
||||||
BOOST_CHECK_EQUAL(resp.value().size(), 3);
|
BOOST_CHECK_EQUAL(resp.value().size(), 3u);
|
||||||
BOOST_CHECK_EQUAL(resp.value().at(1).value, "one");
|
BOOST_CHECK_EQUAL(resp.value().at(1).value, "one");
|
||||||
BOOST_CHECK_EQUAL(resp.value().at(2).value, "two");
|
BOOST_CHECK_EQUAL(resp.value().at(2).value, "two");
|
||||||
}
|
}
|
||||||
@@ -343,8 +343,8 @@ BOOST_AUTO_TEST_CASE(multiplexer_pipeline)
|
|||||||
|
|
||||||
// There are three requests to coalesce, a second call should do
|
// There are three requests to coalesce, a second call should do
|
||||||
// nothing.
|
// nothing.
|
||||||
BOOST_CHECK_EQUAL(mpx.prepare_write(), 3);
|
BOOST_CHECK_EQUAL(mpx.prepare_write(), 3u);
|
||||||
BOOST_CHECK_EQUAL(mpx.prepare_write(), 0);
|
BOOST_CHECK_EQUAL(mpx.prepare_write(), 0u);
|
||||||
|
|
||||||
// After coalescing the requests for writing their statuses should
|
// After coalescing the requests for writing their statuses should
|
||||||
// be changed to "staged".
|
// be changed to "staged".
|
||||||
@@ -354,7 +354,7 @@ BOOST_AUTO_TEST_CASE(multiplexer_pipeline)
|
|||||||
|
|
||||||
// There are no waiting requests to cancel since they are all
|
// There are no waiting requests to cancel since they are all
|
||||||
// staged.
|
// staged.
|
||||||
BOOST_CHECK_EQUAL(mpx.cancel_waiting(), 0);
|
BOOST_CHECK_EQUAL(mpx.cancel_waiting(), 0u);
|
||||||
|
|
||||||
// Since the requests haven't been sent (written) the done
|
// Since the requests haven't been sent (written) the done
|
||||||
// callback should not have been called yet.
|
// callback should not have been called yet.
|
||||||
@@ -365,7 +365,7 @@ BOOST_AUTO_TEST_CASE(multiplexer_pipeline)
|
|||||||
// The commit_write call informs the multiplexer the payload was
|
// The commit_write call informs the multiplexer the payload was
|
||||||
// sent (e.g. written to the socket). This step releases requests
|
// sent (e.g. written to the socket). This step releases requests
|
||||||
// that has no response.
|
// that has no response.
|
||||||
BOOST_CHECK_EQUAL(mpx.commit_write(), 1);
|
BOOST_CHECK_EQUAL(mpx.commit_write(), 1u);
|
||||||
|
|
||||||
// The staged status should now have changed to written.
|
// The staged status should now have changed to written.
|
||||||
BOOST_TEST(item1.elem_ptr->is_written());
|
BOOST_TEST(item1.elem_ptr->is_written());
|
||||||
@@ -387,7 +387,7 @@ BOOST_AUTO_TEST_CASE(multiplexer_pipeline)
|
|||||||
|
|
||||||
// The read operation should have been successfull.
|
// The read operation should have been successfull.
|
||||||
BOOST_TEST(ret.first.has_value());
|
BOOST_TEST(ret.first.has_value());
|
||||||
BOOST_TEST(ret.second != 0);
|
BOOST_TEST(ret.second != 0u);
|
||||||
|
|
||||||
// The read buffer should also be empty now
|
// The read buffer should also be empty now
|
||||||
BOOST_TEST(mpx.get_read_buffer().empty());
|
BOOST_TEST(mpx.get_read_buffer().empty());
|
||||||
|
|||||||
@@ -295,6 +295,8 @@ def _run_b2_tests(
|
|||||||
'toolset={}'.format(toolset),
|
'toolset={}'.format(toolset),
|
||||||
'cxxstd={}'.format(cxxstd),
|
'cxxstd={}'.format(cxxstd),
|
||||||
'variant={}'.format(variant),
|
'variant={}'.format(variant),
|
||||||
|
'warnings=extra',
|
||||||
|
'warnings-as-errors=on',
|
||||||
'-j4',
|
'-j4',
|
||||||
'libs/redis/test'
|
'libs/redis/test'
|
||||||
])
|
])
|
||||||
|
|||||||
Reference in New Issue
Block a user