Mercurial > irccd
diff tests/src/libirccd/command-plugin-info/main.cpp @ 737:190b16cfa848
Tests: improve command tests readability
author | David Demelier <markand@malikania.fr> |
---|---|
date | Tue, 24 Jul 2018 23:01:00 +0200 |
parents | 9d13aabfd63a |
children | 199f36d4edc8 |
line wrap: on
line diff
--- a/tests/src/libirccd/command-plugin-info/main.cpp Tue Jul 24 22:14:00 2018 +0200 +++ b/tests/src/libirccd/command-plugin-info/main.cpp Tue Jul 24 23:01:00 2018 +0200 @@ -65,45 +65,43 @@ BOOST_AUTO_TEST_CASE(basic) { - auto plg = std::make_unique<sample_plugin>(); - auto response = nlohmann::json(); + daemon_->plugins().add(std::make_unique<sample_plugin>()); - daemon_->plugins().add(std::move(plg)); - - const auto result = request({ + const auto [json, code] = request({ { "command", "plugin-info" }, { "plugin", "test" }, }); - BOOST_TEST(result.first["author"].get<std::string>() == "Francis Beaugrand"); - BOOST_TEST(result.first["license"].get<std::string>() == "GPL"); - BOOST_TEST(result.first["summary"].get<std::string>() == "Completely useless plugin"); - BOOST_TEST(result.first["version"].get<std::string>() == "0.0.0.0.0.0.0.0.1-beta5"); + BOOST_TEST(!code); + BOOST_TEST(json["author"].get<std::string>() == "Francis Beaugrand"); + BOOST_TEST(json["license"].get<std::string>() == "GPL"); + BOOST_TEST(json["summary"].get<std::string>() == "Completely useless plugin"); + BOOST_TEST(json["version"].get<std::string>() == "0.0.0.0.0.0.0.0.1-beta5"); } BOOST_AUTO_TEST_SUITE(errors) BOOST_AUTO_TEST_CASE(invalid_identifier) { - const auto result = request({ + const auto [json, code] = request({ { "command", "plugin-info" } }); - BOOST_TEST(result.second == plugin_error::invalid_identifier); - BOOST_TEST(result.first["error"].template get<int>() == plugin_error::invalid_identifier); - BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); + BOOST_TEST(code == plugin_error::invalid_identifier); + BOOST_TEST(json["error"].get<int>() == plugin_error::invalid_identifier); + BOOST_TEST(json["errorCategory"].get<std::string>() == "plugin"); } BOOST_AUTO_TEST_CASE(not_found) { - const auto result = request({ + const auto [json, code] = request({ { "command", "plugin-info" }, { "plugin", "unknown" } }); - BOOST_TEST(result.second == plugin_error::not_found); - BOOST_TEST(result.first["error"].template get<int>() == plugin_error::not_found); - BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); + BOOST_TEST(code == plugin_error::not_found); + BOOST_TEST(json["error"].get<int>() == plugin_error::not_found); + BOOST_TEST(json["errorCategory"].get<std::string>() == "plugin"); } BOOST_AUTO_TEST_SUITE_END()