Mercurial > irccd
comparison 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 |
comparison
equal
deleted
inserted
replaced
736:49b7c7660a00 | 737:190b16cfa848 |
---|---|
63 | 63 |
64 BOOST_FIXTURE_TEST_SUITE(plugin_info_test_suite, command_test<plugin_info_command>) | 64 BOOST_FIXTURE_TEST_SUITE(plugin_info_test_suite, command_test<plugin_info_command>) |
65 | 65 |
66 BOOST_AUTO_TEST_CASE(basic) | 66 BOOST_AUTO_TEST_CASE(basic) |
67 { | 67 { |
68 auto plg = std::make_unique<sample_plugin>(); | 68 daemon_->plugins().add(std::make_unique<sample_plugin>()); |
69 auto response = nlohmann::json(); | |
70 | 69 |
71 daemon_->plugins().add(std::move(plg)); | 70 const auto [json, code] = request({ |
72 | |
73 const auto result = request({ | |
74 { "command", "plugin-info" }, | 71 { "command", "plugin-info" }, |
75 { "plugin", "test" }, | 72 { "plugin", "test" }, |
76 }); | 73 }); |
77 | 74 |
78 BOOST_TEST(result.first["author"].get<std::string>() == "Francis Beaugrand"); | 75 BOOST_TEST(!code); |
79 BOOST_TEST(result.first["license"].get<std::string>() == "GPL"); | 76 BOOST_TEST(json["author"].get<std::string>() == "Francis Beaugrand"); |
80 BOOST_TEST(result.first["summary"].get<std::string>() == "Completely useless plugin"); | 77 BOOST_TEST(json["license"].get<std::string>() == "GPL"); |
81 BOOST_TEST(result.first["version"].get<std::string>() == "0.0.0.0.0.0.0.0.1-beta5"); | 78 BOOST_TEST(json["summary"].get<std::string>() == "Completely useless plugin"); |
79 BOOST_TEST(json["version"].get<std::string>() == "0.0.0.0.0.0.0.0.1-beta5"); | |
82 } | 80 } |
83 | 81 |
84 BOOST_AUTO_TEST_SUITE(errors) | 82 BOOST_AUTO_TEST_SUITE(errors) |
85 | 83 |
86 BOOST_AUTO_TEST_CASE(invalid_identifier) | 84 BOOST_AUTO_TEST_CASE(invalid_identifier) |
87 { | 85 { |
88 const auto result = request({ | 86 const auto [json, code] = request({ |
89 { "command", "plugin-info" } | 87 { "command", "plugin-info" } |
90 }); | 88 }); |
91 | 89 |
92 BOOST_TEST(result.second == plugin_error::invalid_identifier); | 90 BOOST_TEST(code == plugin_error::invalid_identifier); |
93 BOOST_TEST(result.first["error"].template get<int>() == plugin_error::invalid_identifier); | 91 BOOST_TEST(json["error"].get<int>() == plugin_error::invalid_identifier); |
94 BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); | 92 BOOST_TEST(json["errorCategory"].get<std::string>() == "plugin"); |
95 } | 93 } |
96 | 94 |
97 BOOST_AUTO_TEST_CASE(not_found) | 95 BOOST_AUTO_TEST_CASE(not_found) |
98 { | 96 { |
99 const auto result = request({ | 97 const auto [json, code] = request({ |
100 { "command", "plugin-info" }, | 98 { "command", "plugin-info" }, |
101 { "plugin", "unknown" } | 99 { "plugin", "unknown" } |
102 }); | 100 }); |
103 | 101 |
104 BOOST_TEST(result.second == plugin_error::not_found); | 102 BOOST_TEST(code == plugin_error::not_found); |
105 BOOST_TEST(result.first["error"].template get<int>() == plugin_error::not_found); | 103 BOOST_TEST(json["error"].get<int>() == plugin_error::not_found); |
106 BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); | 104 BOOST_TEST(json["errorCategory"].get<std::string>() == "plugin"); |
107 } | 105 } |
108 | 106 |
109 BOOST_AUTO_TEST_SUITE_END() | 107 BOOST_AUTO_TEST_SUITE_END() |
110 | 108 |
111 BOOST_AUTO_TEST_SUITE_END() | 109 BOOST_AUTO_TEST_SUITE_END() |