Mercurial > irccd
annotate tests/plugin-load-command/main.cpp @ 579:84ea13c850f4
Tests: rename close to target names
author | David Demelier <markand@malikania.fr> |
---|---|
date | Mon, 04 Dec 2017 13:49:51 +0100 |
parents | tests/cmd-plugin-load/main.cpp@153e84e7b09b |
children |
rev | line source |
---|---|
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * main.cpp -- test plugin-load remote command |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
394 | 4 * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr> |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
19 #define BOOST_TEST_MODULE "plugin-load" |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
20 #include <boost/test/unit_test.hpp> |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
22 #include <irccd/command.hpp> |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
23 #include <irccd/plugin_service.hpp> |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
24 |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
25 #include <command_test.hpp> |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
26 |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
27 namespace irccd { |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 namespace { |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
31 class custom_loader : public plugin_loader { |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 public: |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
33 std::shared_ptr<plugin> open(const std::string&, |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
34 const std::string&) noexcept override |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 { |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 return nullptr; |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 } |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
39 std::shared_ptr<plugin> find(const std::string& id) noexcept override |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 { |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
41 class broken : public plugin { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
42 public: |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
43 using plugin::plugin; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
44 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
45 void on_load(irccd&) override |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
46 { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
47 throw std::runtime_error("broken"); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
48 } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
49 }; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
50 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
51 /* |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
52 * The 'magic' plugin will be created for the unit tests, all other |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
53 * plugins will return null. |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
54 */ |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
55 if (id == "magic") |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
56 return std::make_unique<plugin>(id, ""); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
57 if (id == "broken") |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
58 return std::make_unique<broken>(id, ""); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
59 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
60 return nullptr; |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 } |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 }; |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
64 class plugin_load_test : public command_test<plugin_load_command> { |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 public: |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
66 plugin_load_test() |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 { |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
68 daemon_->plugins().add_loader(std::make_unique<custom_loader>()); |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
69 daemon_->plugins().add(std::make_unique<plugin>("already", "")); |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 } |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 }; |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
73 } // !namespace |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
74 |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
75 BOOST_FIXTURE_TEST_SUITE(plugin_load_test_suite, plugin_load_test) |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
77 BOOST_AUTO_TEST_CASE(basic) |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
78 { |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
79 ctl_->send({ |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
80 { "command", "plugin-load" }, |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
81 { "plugin", "magic" } |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
82 }); |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
84 wait_for([&] () { |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
85 return daemon_->plugins().has("magic"); |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
86 }); |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
87 |
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
88 BOOST_TEST(!daemon_->plugins().list().empty()); |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
89 BOOST_TEST(daemon_->plugins().has("magic")); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
90 } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
91 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
92 BOOST_AUTO_TEST_SUITE(errors) |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
93 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
94 BOOST_AUTO_TEST_CASE(not_found) |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
95 { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
96 boost::system::error_code result; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
97 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
98 ctl_->send({ |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
99 { "command", "plugin-load" }, |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
100 { "plugin", "unknown" } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
101 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
102 ctl_->recv([&] (auto code, auto) { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
103 result = code; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
104 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
105 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
106 wait_for([&] { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
107 return result; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
108 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
109 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
110 BOOST_ASSERT(result == plugin_error::not_found); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
111 } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
112 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
113 BOOST_AUTO_TEST_CASE(already_exists) |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
114 { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
115 boost::system::error_code result; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
116 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
117 ctl_->send({ |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
118 { "command", "plugin-load" }, |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
119 { "plugin", "already" } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
120 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
121 ctl_->recv([&] (auto code, auto) { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
122 result = code; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
123 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
124 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
125 wait_for([&] { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
126 return result; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
127 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
128 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
129 BOOST_ASSERT(result == plugin_error::already_exists); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
130 } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
131 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
132 BOOST_AUTO_TEST_CASE(exec_error) |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
133 { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
134 boost::system::error_code result; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
135 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
136 ctl_->send({ |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
137 { "command", "plugin-load" }, |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
138 { "plugin", "broken" } |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
139 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
140 ctl_->recv([&] (auto code, auto) { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
141 result = code; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
142 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
143 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
144 wait_for([&] { |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
145 return result; |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
146 }); |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
147 |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
148 BOOST_ASSERT(result == plugin_error::exec_error); |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
149 } |
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
150 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
151 BOOST_AUTO_TEST_SUITE_END() |
314
427bbbcb50d1
Tests: add test for plugin-load, #559
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
152 |
570
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
153 BOOST_AUTO_TEST_SUITE_END() |
153e84e7b09b
Tests: add error code support in cmd-plugin-* tests
David Demelier <markand@malikania.fr>
parents:
555
diff
changeset
|
154 |
555
9b6b0d7d89c6
Tests: convert cmd-plugin-*, #593
David Demelier <markand@malikania.fr>
parents:
488
diff
changeset
|
155 } // !irccd |