comparison tests/src/libirccd-js/js-plugin/main.cpp @ 722:3e816cebed2c

Irccd: make plugin pure abstract, closes #796 @3h
author David Demelier <markand@malikania.fr>
date Mon, 16 Jul 2018 21:19:47 +0200
parents 2838134d69bf
children e8c4ba5ed1c6
comparison
equal deleted inserted replaced
721:2fa1f2c898ee 722:3e816cebed2c
33 protected: 33 protected:
34 boost::asio::io_service service_; 34 boost::asio::io_service service_;
35 irccd irccd_{service_}; 35 irccd irccd_{service_};
36 std::shared_ptr<js_plugin> plugin_; 36 std::shared_ptr<js_plugin> plugin_;
37 37
38 void load(std::string name, std::string path) 38 void load(std::string path)
39 { 39 {
40 plugin_ = std::make_unique<js_plugin>(std::move(name), std::move(path)); 40 plugin_ = std::make_unique<js_plugin>(std::move(path));
41 41
42 irccd_jsapi().load(irccd_, plugin_); 42 irccd_jsapi().load(irccd_, plugin_);
43 plugin_jsapi().load(irccd_, plugin_); 43 plugin_jsapi().load(irccd_, plugin_);
44 44
45 plugin_->open(); 45 plugin_->open();
48 48
49 BOOST_FIXTURE_TEST_SUITE(js_plugin_test_suite, js_plugin_test) 49 BOOST_FIXTURE_TEST_SUITE(js_plugin_test_suite, js_plugin_test)
50 50
51 BOOST_AUTO_TEST_CASE(assign) 51 BOOST_AUTO_TEST_CASE(assign)
52 { 52 {
53 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-assign.js"); 53 load(CMAKE_CURRENT_SOURCE_DIR "/config-assign.js");
54 54
55 plugin_->set_config({ 55 plugin_->set_options({
56 { "path", "none" }, 56 { "path", "none" },
57 { "verbose", "false" } 57 { "verbose", "false" }
58 }); 58 });
59 plugin_->handle_load(irccd_); 59 plugin_->handle_load(irccd_);
60 60
61 BOOST_TEST(plugin_->get_config().at("path") == "none"); 61 BOOST_TEST(plugin_->get_options().at("path") == "none");
62 BOOST_TEST(plugin_->get_config().at("verbose") == "false"); 62 BOOST_TEST(plugin_->get_options().at("verbose") == "false");
63 BOOST_TEST(plugin_->get_config().at("hard") == "true"); 63 BOOST_TEST(plugin_->get_options().at("hard") == "true");
64 } 64 }
65 65
66 BOOST_AUTO_TEST_CASE(fill) 66 BOOST_AUTO_TEST_CASE(fill)
67 { 67 {
68 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-fill.js"); 68 load(CMAKE_CURRENT_SOURCE_DIR "/config-fill.js");
69 69
70 plugin_->set_config({ 70 plugin_->set_options({
71 { "path", "none" }, 71 { "path", "none" },
72 { "verbose", "false" } 72 { "verbose", "false" }
73 }); 73 });
74 plugin_->handle_load(irccd_); 74 plugin_->handle_load(irccd_);
75 75
76 BOOST_TEST(plugin_->get_config().at("path") == "none"); 76 BOOST_TEST(plugin_->get_options().at("path") == "none");
77 BOOST_TEST(plugin_->get_config().at("verbose") == "false"); 77 BOOST_TEST(plugin_->get_options().at("verbose") == "false");
78 BOOST_TEST(plugin_->get_config().at("hard") == "true"); 78 BOOST_TEST(plugin_->get_options().at("hard") == "true");
79 } 79 }
80 80
81 BOOST_AUTO_TEST_CASE(merge_after) 81 BOOST_AUTO_TEST_CASE(merge_after)
82 { 82 {
83 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-fill.js"); 83 load(CMAKE_CURRENT_SOURCE_DIR "/config-fill.js");
84 84
85 plugin_->handle_load(irccd_); 85 plugin_->handle_load(irccd_);
86 plugin_->set_config({ 86 plugin_->set_options({
87 { "path", "none" }, 87 { "path", "none" },
88 { "verbose", "false" } 88 { "verbose", "false" }
89 }); 89 });
90 90
91 BOOST_TEST(plugin_->get_config().at("path") == "none"); 91 BOOST_TEST(plugin_->get_options().at("path") == "none");
92 BOOST_TEST(plugin_->get_config().at("verbose") == "false"); 92 BOOST_TEST(plugin_->get_options().at("verbose") == "false");
93 BOOST_TEST(plugin_->get_config().at("hard") == "true"); 93 BOOST_TEST(plugin_->get_options().at("hard") == "true");
94 } 94 }
95 95
96 BOOST_AUTO_TEST_SUITE_END() 96 BOOST_AUTO_TEST_SUITE_END()
97 97
98 class js_plugin_loader_test { 98 class js_plugin_loader_test {
124 124
125 BOOST_AUTO_TEST_CASE(assign) 125 BOOST_AUTO_TEST_CASE(assign)
126 { 126 {
127 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-assign.js"); 127 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-assign.js");
128 128
129 BOOST_TEST(plugin_->get_config().at("path") == "none"); 129 BOOST_TEST(plugin_->get_options().at("path") == "none");
130 BOOST_TEST(plugin_->get_config().at("verbose") == "false"); 130 BOOST_TEST(plugin_->get_options().at("verbose") == "false");
131 BOOST_TEST(plugin_->get_config().at("hard") == "true"); 131 BOOST_TEST(plugin_->get_options().at("hard") == "true");
132 } 132 }
133 133
134 BOOST_AUTO_TEST_CASE(fill) 134 BOOST_AUTO_TEST_CASE(fill)
135 { 135 {
136 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-fill.js"); 136 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-fill.js");
137 137
138 BOOST_TEST(plugin_->get_config().at("path") == "none"); 138 BOOST_TEST(plugin_->get_options().at("path") == "none");
139 BOOST_TEST(plugin_->get_config().at("verbose") == "false"); 139 BOOST_TEST(plugin_->get_options().at("verbose") == "false");
140 BOOST_TEST(plugin_->get_config().at("hard") == "true"); 140 BOOST_TEST(plugin_->get_options().at("hard") == "true");
141 } 141 }
142 142
143 BOOST_AUTO_TEST_CASE(merge_after) 143 BOOST_AUTO_TEST_CASE(merge_after)
144 { 144 {
145 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-fill.js"); 145 load("test", CMAKE_CURRENT_SOURCE_DIR "/config-fill.js");
146 146
147 BOOST_TEST(plugin_->get_config().at("path") == "none"); 147 BOOST_TEST(plugin_->get_options().at("path") == "none");
148 BOOST_TEST(plugin_->get_config().at("verbose") == "false"); 148 BOOST_TEST(plugin_->get_options().at("verbose") == "false");
149 BOOST_TEST(plugin_->get_config().at("hard") == "true"); 149 BOOST_TEST(plugin_->get_options().at("hard") == "true");
150 } 150 }
151 151
152 BOOST_AUTO_TEST_SUITE_END() 152 BOOST_AUTO_TEST_SUITE_END()
153 153
154 } // !irccd 154 } // !irccd