Mercurial > irccd
diff tests/src/libirccd/command-server-join/main.cpp @ 651:1081e45b8628
Tests: use command_test::request helper, closes #784 @1h
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 27 Mar 2018 20:12:02 +0200 |
parents | 27896e9bcd9e |
children | 95ac3ace1610 |
line wrap: on
line diff
--- a/tests/src/libirccd/command-server-join/main.cpp Mon Mar 26 20:46:02 2018 +0200 +++ b/tests/src/libirccd/command-server-join/main.cpp Tue Mar 27 20:12:02 2018 +0200 @@ -65,16 +65,12 @@ BOOST_AUTO_TEST_CASE(nopassword) { - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", "test" }, { "channel", "#music" } }); - wait_for([this] () { - return !server_->cqueue().empty(); - }); - auto cmd = server_->cqueue().back(); BOOST_TEST(cmd["command"].get<std::string>() == "join"); @@ -86,147 +82,81 @@ BOOST_AUTO_TEST_CASE(invalid_identifier_1) { - boost::system::error_code result; - nlohmann::json message; - - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", 123456 }, { "channel", "#music" } }); - ctl_->recv([&] (auto rresult, auto rmessage) { - result = rresult; - message = rmessage; - }); - wait_for([&] { - return result; - }); - - BOOST_TEST(result == server_error::invalid_identifier); - BOOST_TEST(message["error"].template get<int>() == server_error::invalid_identifier); - BOOST_TEST(message["errorCategory"].template get<std::string>() == "server"); + BOOST_TEST(result.second == server_error::invalid_identifier); + BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_identifier); + BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server"); } BOOST_AUTO_TEST_CASE(invalid_identifier_2) { - boost::system::error_code result; - nlohmann::json message; - - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", "" }, { "channel", "#music" } }); - ctl_->recv([&] (auto rresult, auto rmessage) { - result = rresult; - message = rmessage; - }); - wait_for([&] { - return result; - }); - - BOOST_TEST(result == server_error::invalid_identifier); - BOOST_TEST(message["error"].template get<int>() == server_error::invalid_identifier); - BOOST_TEST(message["errorCategory"].template get<std::string>() == "server"); + BOOST_TEST(result.second == server_error::invalid_identifier); + BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_identifier); + BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server"); } BOOST_AUTO_TEST_CASE(invalid_channel_1) { - boost::system::error_code result; - nlohmann::json message; - - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", "test" }, { "channel", "" } }); - ctl_->recv([&] (auto rresult, auto rmessage) { - result = rresult; - message = rmessage; - }); - wait_for([&] { - return result; - }); - - BOOST_TEST(result == server_error::invalid_channel); - BOOST_TEST(message["error"].template get<int>() == server_error::invalid_channel); - BOOST_TEST(message["errorCategory"].template get<std::string>() == "server"); + BOOST_TEST(result.second == server_error::invalid_channel); + BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_channel); + BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server"); } BOOST_AUTO_TEST_CASE(invalid_channel_2) { - boost::system::error_code result; - nlohmann::json message; - - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", "test" }, { "channel", 123456 } }); - ctl_->recv([&] (auto rresult, auto rmessage) { - result = rresult; - message = rmessage; - }); - wait_for([&] { - return result; - }); - - BOOST_TEST(result == server_error::invalid_channel); - BOOST_TEST(message["error"].template get<int>() == server_error::invalid_channel); - BOOST_TEST(message["errorCategory"].template get<std::string>() == "server"); + BOOST_TEST(result.second == server_error::invalid_channel); + BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_channel); + BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server"); } BOOST_AUTO_TEST_CASE(invalid_password) { - boost::system::error_code result; - nlohmann::json message; - - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", "test" }, { "channel", "#staff" }, { "password", 123456 } }); - ctl_->recv([&] (auto rresult, auto rmessage) { - result = rresult; - message = rmessage; - }); - wait_for([&] { - return result; - }); - - BOOST_TEST(result == server_error::invalid_password); - BOOST_TEST(message["error"].template get<int>() == server_error::invalid_password); - BOOST_TEST(message["errorCategory"].template get<std::string>() == "server"); + BOOST_TEST(result.second == server_error::invalid_password); + BOOST_TEST(result.first["error"].template get<int>() == server_error::invalid_password); + BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server"); } BOOST_AUTO_TEST_CASE(not_found) { - boost::system::error_code result; - nlohmann::json message; - - ctl_->send({ + const auto result = request({ { "command", "server-join" }, { "server", "unknown" }, { "channel", "#music" } }); - ctl_->recv([&] (auto rresult, auto rmessage) { - result = rresult; - message = rmessage; - }); - wait_for([&] { - return result; - }); - - BOOST_TEST(result == server_error::not_found); - BOOST_TEST(message["error"].template get<int>() == server_error::not_found); - BOOST_TEST(message["errorCategory"].template get<std::string>() == "server"); + BOOST_TEST(result.second == server_error::not_found); + BOOST_TEST(result.first["error"].template get<int>() == server_error::not_found); + BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "server"); } BOOST_AUTO_TEST_SUITE_END()