Mercurial > irccd
changeset 759:791d7591eca7
Tests: rename plugin_test to js_plugin_fixture
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 09 Aug 2018 13:29:00 +0200 |
parents | 445c071e8efb |
children | 35c1517d705d |
files | libirccd-test/CMakeLists.txt libirccd-test/irccd/test/js_plugin_fixture.cpp libirccd-test/irccd/test/js_plugin_fixture.hpp libirccd-test/irccd/test/plugin_test.cpp libirccd-test/irccd/test/plugin_test.hpp tests/src/plugins/ask/main.cpp tests/src/plugins/auth/main.cpp tests/src/plugins/hangman/main.cpp tests/src/plugins/history/main.cpp tests/src/plugins/joke/main.cpp tests/src/plugins/logger/main.cpp tests/src/plugins/plugin/main.cpp tests/src/plugins/tictactoe/main.cpp |
diffstat | 13 files changed, 145 insertions(+), 145 deletions(-) [+] |
line wrap: on
line diff
--- a/libirccd-test/CMakeLists.txt Thu Aug 09 13:07:19 2018 +0200 +++ b/libirccd-test/CMakeLists.txt Thu Aug 09 13:29:00 2018 +0200 @@ -28,7 +28,7 @@ ${libirccd-test_SOURCE_DIR}/irccd/test/mock_plugin.hpp ${libirccd-test_SOURCE_DIR}/irccd/test/mock_server.hpp $<$<BOOL:${IRCCD_HAVE_JS}>:${libirccd-test_SOURCE_DIR}/irccd/test/js_fixture.hpp> - $<$<BOOL:${IRCCD_HAVE_JS}>:${libirccd-test_SOURCE_DIR}/irccd/test/plugin_test.hpp> + $<$<BOOL:${IRCCD_HAVE_JS}>:${libirccd-test_SOURCE_DIR}/irccd/test/js_plugin_fixture.hpp> ) set( @@ -41,7 +41,7 @@ ${libirccd-test_SOURCE_DIR}/irccd/test/mock_plugin.cpp ${libirccd-test_SOURCE_DIR}/irccd/test/mock_server.cpp $<$<BOOL:${IRCCD_HAVE_JS}>:${libirccd-test_SOURCE_DIR}/irccd/test/js_fixture.cpp> - $<$<BOOL:${IRCCD_HAVE_JS}>:${libirccd-test_SOURCE_DIR}/irccd/test/plugin_test.cpp> + $<$<BOOL:${IRCCD_HAVE_JS}>:${libirccd-test_SOURCE_DIR}/irccd/test/js_plugin_fixture.cpp> ) if (${IRCCD_HAVE_JS})
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libirccd-test/irccd/test/js_plugin_fixture.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -0,0 +1,61 @@ +/* + * js_plugin_fixture.cpp -- test fixture helper for Javascript plugins + * + * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#include <cassert> + +#include <irccd/daemon/logger.hpp> +#include <irccd/daemon/plugin_service.hpp> +#include <irccd/daemon/server_service.hpp> + +#include <irccd/js/directory_js_api.hpp> +#include <irccd/js/elapsed_timer_js_api.hpp> +#include <irccd/js/file_js_api.hpp> +#include <irccd/js/irccd_js_api.hpp> +#include <irccd/js/js_plugin.hpp> +#include <irccd/js/logger_js_api.hpp> +#include <irccd/js/plugin_js_api.hpp> +#include <irccd/js/server_js_api.hpp> +#include <irccd/js/system_js_api.hpp> +#include <irccd/js/timer_js_api.hpp> +#include <irccd/js/unicode_js_api.hpp> +#include <irccd/js/util_js_api.hpp> + +#include "js_plugin_fixture.hpp" + +namespace irccd { + +js_plugin_fixture::js_plugin_fixture(std::string path) + : server_(std::make_shared<mock_server>(service_, "test", "local")) +{ + plugin_ = std::make_unique<js::js_plugin>("test", std::move(path)); + + irccd_.set_log(std::make_unique<logger::silent_sink>()); + irccd_.get_log().set_verbose(false); + irccd_.plugins().add(plugin_); + irccd_.servers().add(server_); + + server_->set_nickname("irccd"); + server_->clear(); + + for (const auto& f : js::js_api::registry) + f()->load(irccd_, plugin_); + + plugin_->open(); +} + +} // !irccd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libirccd-test/irccd/test/js_plugin_fixture.hpp Thu Aug 09 13:29:00 2018 +0200 @@ -0,0 +1,58 @@ +/* + * js_plugin_fixture.hpp -- test fixture helper for Javascript plugins + * + * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +#ifndef IRCCD_TEST_JS_PLUGIN_FIXTURE_HPP +#define IRCCD_TEST_JS_PLUGIN_FIXTURE_HPP + +/** + * \file js_plugin_fixture.hpp + * \brief test fixture helper for Javascript plugins. + */ + +#include <irccd/daemon/irccd.hpp> + +#include <irccd/js/js_plugin.hpp> + +#include "mock_server.hpp" + +namespace irccd { + +/** + * \brief test fixture helper for Javascript plugins. + * + * Holds a plugin that is opened (but not loaded). + */ +class js_plugin_fixture { +protected: + boost::asio::io_service service_; + irccd irccd_{service_}; + std::shared_ptr<js::js_plugin> plugin_; + std::shared_ptr<mock_server> server_; + +public: + /** + * Construct the fixture test. + * + * \param path the full plugin path (e.g. /usr/lib64/irccd/ask.js) + */ + js_plugin_fixture(std::string path); +}; + +} // !irccd + +#endif // !IRCCD_TEST_JS_PLUGIN_FIXTURE_HPP
--- a/libirccd-test/irccd/test/plugin_test.cpp Thu Aug 09 13:07:19 2018 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,61 +0,0 @@ -/* - * plugin_test.cpp -- test fixture helper for Javascript plugins - * - * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#include <cassert> - -#include <irccd/daemon/logger.hpp> -#include <irccd/daemon/plugin_service.hpp> -#include <irccd/daemon/server_service.hpp> - -#include <irccd/js/directory_js_api.hpp> -#include <irccd/js/elapsed_timer_js_api.hpp> -#include <irccd/js/file_js_api.hpp> -#include <irccd/js/irccd_js_api.hpp> -#include <irccd/js/js_plugin.hpp> -#include <irccd/js/logger_js_api.hpp> -#include <irccd/js/plugin_js_api.hpp> -#include <irccd/js/server_js_api.hpp> -#include <irccd/js/system_js_api.hpp> -#include <irccd/js/timer_js_api.hpp> -#include <irccd/js/unicode_js_api.hpp> -#include <irccd/js/util_js_api.hpp> - -#include "plugin_test.hpp" - -namespace irccd { - -plugin_test::plugin_test(std::string path) - : server_(std::make_shared<mock_server>(service_, "test", "local")) -{ - plugin_ = std::make_unique<js::js_plugin>("test", std::move(path)); - - irccd_.set_log(std::make_unique<logger::silent_sink>()); - irccd_.get_log().set_verbose(false); - irccd_.plugins().add(plugin_); - irccd_.servers().add(server_); - - server_->set_nickname("irccd"); - server_->clear(); - - for (const auto& f : js::js_api::registry) - f()->load(irccd_, plugin_); - - plugin_->open(); -} - -} // !irccd
--- a/libirccd-test/irccd/test/plugin_test.hpp Thu Aug 09 13:07:19 2018 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ -/* - * plugin_test.hpp -- test fixture helper for Javascript plugins - * - * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#ifndef IRCCD_TEST_PLUGIN_TEST_HPP -#define IRCCD_TEST_PLUGIN_TEST_HPP - -/** - * \file plugin_test.hpp - * \brief test fixture helper for Javascript plugins. - */ - -#include <irccd/daemon/irccd.hpp> - -#include <irccd/js/js_plugin.hpp> - -#include "mock_server.hpp" - -namespace irccd { - -/** - * \brief test fixture helper for Javascript plugins. - * - * Holds a plugin that is opened (but not loaded). - */ -class plugin_test { -protected: - boost::asio::io_service service_; - irccd irccd_{service_}; - std::shared_ptr<js::js_plugin> plugin_; - std::shared_ptr<mock_server> server_; - -public: - /** - * Construct the fixture test. - * - * \param path the full plugin path (e.g. /usr/lib64/irccd/ask.js) - */ - plugin_test(std::string path); -}; - -} // !irccd - -#endif // !IRCCD_TEST_PLUGIN_TEST_HPP
--- a/tests/src/plugins/ask/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/ask/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -22,16 +22,16 @@ #include <irccd/daemon/irccd.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class ask_test : public plugin_test { +class ask_test : public js_plugin_fixture { public: ask_test() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { plugin_->set_options({ { "file", CMAKE_CURRENT_SOURCE_DIR "/answers.conf" }
--- a/tests/src/plugins/auth/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/auth/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -22,13 +22,13 @@ #include <irccd/daemon/irccd.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class auth_test : public plugin_test { +class auth_test : public js_plugin_fixture { protected: std::shared_ptr<mock_server> nickserv1_; std::shared_ptr<mock_server> nickserv2_; @@ -36,7 +36,7 @@ public: auth_test() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) , nickserv1_(std::make_shared<mock_server>(service_, "nickserv1", "localhost")) , nickserv2_(std::make_shared<mock_server>(service_, "nickserv2", "localhost")) , quakenet_(std::make_shared<mock_server>(service_, "quakenet", "localhost"))
--- a/tests/src/plugins/hangman/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/hangman/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -25,16 +25,16 @@ #include <irccd/daemon/irccd.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class hangman_test : public plugin_test { +class hangman_test : public js_plugin_fixture { public: hangman_test() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { plugin_->set_formats({ { "asked", "asked=#{plugin}:#{command}:#{server}:#{channel}:#{origin}:#{nickname}:#{letter}" },
--- a/tests/src/plugins/history/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/history/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -24,16 +24,16 @@ #include <irccd/daemon/irccd.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class history_test : public plugin_test { +class history_test : public js_plugin_fixture { public: history_test() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { plugin_->set_formats({ { "error", "error=#{plugin}:#{command}:#{server}:#{channel}:#{origin}:#{nickname}" },
--- a/tests/src/plugins/joke/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/joke/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -19,16 +19,16 @@ #define BOOST_TEST_MODULE "Joke plugin" #include <boost/test/unit_test.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class joke_test : public plugin_test { +class joke_test : public js_plugin_fixture { public: joke_test() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { plugin_->set_formats({ { "error", "error=#{server}:#{channel}:#{origin}:#{nickname}" }
--- a/tests/src/plugins/logger/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/logger/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -25,13 +25,13 @@ #include <irccd/daemon/irccd.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class logger_test : public plugin_test { +class logger_test : public js_plugin_fixture { protected: std::string last() const { @@ -42,7 +42,7 @@ public: logger_test() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { remove(CMAKE_CURRENT_BINARY_DIR "/log.txt");
--- a/tests/src/plugins/plugin/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/plugin/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -26,7 +26,7 @@ #include <irccd/daemon/plugin_service.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> using boost::format; using boost::str; @@ -65,10 +65,10 @@ } }; -class test_fixture : public plugin_test { +class test_fixture : public js_plugin_fixture { public: test_fixture() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { irccd_.plugins().add(std::make_shared<fake_plugin>("fake"));
--- a/tests/src/plugins/tictactoe/main.cpp Thu Aug 09 13:07:19 2018 +0200 +++ b/tests/src/plugins/tictactoe/main.cpp Thu Aug 09 13:29:00 2018 +0200 @@ -25,16 +25,16 @@ #include <irccd/daemon/plugin_service.hpp> #include <irccd/daemon/server.hpp> -#include <irccd/test/plugin_test.hpp> +#include <irccd/test/js_plugin_fixture.hpp> namespace irccd { namespace { -class test_fixture : public plugin_test { +class test_fixture : public js_plugin_fixture { public: test_fixture() - : plugin_test(PLUGIN_PATH) + : js_plugin_fixture(PLUGIN_PATH) { plugin_->set_formats({ { "draw", "draw=#{channel}:#{command}:#{nickname}:#{plugin}:#{server}" },