Mercurial > irccd
comparison tests/src/libirccd/command-plugin-reload/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 | 7e2d0739f37c |
children | 95ac3ace1610 |
comparison
equal
deleted
inserted
replaced
650:27896e9bcd9e | 651:1081e45b8628 |
---|---|
85 | 85 |
86 BOOST_AUTO_TEST_SUITE(errors) | 86 BOOST_AUTO_TEST_SUITE(errors) |
87 | 87 |
88 BOOST_AUTO_TEST_CASE(invalid_identifier) | 88 BOOST_AUTO_TEST_CASE(invalid_identifier) |
89 { | 89 { |
90 boost::system::error_code result; | 90 const auto result = request({ |
91 nlohmann::json message; | |
92 | |
93 ctl_->send({ | |
94 { "command", "plugin-reload" } | 91 { "command", "plugin-reload" } |
95 }); | 92 }); |
96 ctl_->recv([&] (auto rresult, auto rmessage) { | |
97 result = rresult; | |
98 message = rmessage; | |
99 }); | |
100 | 93 |
101 wait_for([&] { | 94 BOOST_TEST(result.second == plugin_error::invalid_identifier); |
102 return result; | 95 BOOST_TEST(result.first["error"].template get<int>() == plugin_error::invalid_identifier); |
103 }); | 96 BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); |
104 | |
105 BOOST_TEST(result == plugin_error::invalid_identifier); | |
106 BOOST_TEST(message["error"].template get<int>() == plugin_error::invalid_identifier); | |
107 BOOST_TEST(message["errorCategory"].template get<std::string>() == "plugin"); | |
108 } | 97 } |
109 | 98 |
110 BOOST_AUTO_TEST_CASE(not_found) | 99 BOOST_AUTO_TEST_CASE(not_found) |
111 { | 100 { |
112 boost::system::error_code result; | 101 const auto result = request({ |
113 nlohmann::json message; | |
114 | |
115 ctl_->send({ | |
116 { "command", "plugin-reload" }, | 102 { "command", "plugin-reload" }, |
117 { "plugin", "unknown" } | 103 { "plugin", "unknown" } |
118 }); | 104 }); |
119 ctl_->recv([&] (auto rresult, auto rmessage) { | |
120 result = rresult; | |
121 message = rmessage; | |
122 }); | |
123 | 105 |
124 wait_for([&] { | 106 BOOST_TEST(result.second == plugin_error::not_found); |
125 return result; | 107 BOOST_TEST(result.first["error"].template get<int>() == plugin_error::not_found); |
126 }); | 108 BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); |
127 | |
128 BOOST_TEST(result == plugin_error::not_found); | |
129 BOOST_TEST(message["error"].template get<int>() == plugin_error::not_found); | |
130 BOOST_TEST(message["errorCategory"].template get<std::string>() == "plugin"); | |
131 } | 109 } |
132 | 110 |
133 BOOST_AUTO_TEST_CASE(exec_error) | 111 BOOST_AUTO_TEST_CASE(exec_error) |
134 { | 112 { |
135 boost::system::error_code result; | 113 const auto result = request({ |
136 nlohmann::json message; | |
137 | |
138 ctl_->send({ | |
139 { "command", "plugin-reload" }, | 114 { "command", "plugin-reload" }, |
140 { "plugin", "broken" } | 115 { "plugin", "broken" } |
141 }); | 116 }); |
142 ctl_->recv([&] (auto rresult, auto rmessage) { | |
143 result = rresult; | |
144 message = rmessage; | |
145 }); | |
146 | 117 |
147 wait_for([&] { | 118 BOOST_TEST(result.second == plugin_error::exec_error); |
148 return result; | 119 BOOST_TEST(result.first["error"].template get<int>() == plugin_error::exec_error); |
149 }); | 120 BOOST_TEST(result.first["errorCategory"].template get<std::string>() == "plugin"); |
150 | |
151 BOOST_TEST(result == plugin_error::exec_error); | |
152 BOOST_TEST(message["error"].template get<int>() == plugin_error::exec_error); | |
153 BOOST_TEST(message["errorCategory"].template get<std::string>() == "plugin"); | |
154 } | 121 } |
155 | 122 |
156 BOOST_AUTO_TEST_SUITE_END() | 123 BOOST_AUTO_TEST_SUITE_END() |
157 | 124 |
158 BOOST_AUTO_TEST_SUITE_END() | 125 BOOST_AUTO_TEST_SUITE_END() |