From ce800e5957045e05a8f270bd5caabf9cb83a8ba0 Mon Sep 17 00:00:00 2001 From: Matthias Hecker Date: Mon, 30 Mar 2020 23:46:19 +0200 Subject: [PATCH] test: first plugin test added for rot13 --- tasks/test.rake | 2 +- test/plugins/test_rot13.rb | 58 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 test/plugins/test_rot13.rb diff --git a/tasks/test.rake b/tasks/test.rake index b7939f71..b923118b 100644 --- a/tasks/test.rake +++ b/tasks/test.rake @@ -3,6 +3,6 @@ require 'rake' Rake::TestTask.new do |t| t.libs << "test" - t.test_files = FileList['test/test_*.rb'] + t.test_files = FileList['test/test_*.rb'] + FileList['test/plugins/test_*.rb'] t.verbose = true end diff --git a/test/plugins/test_rot13.rb b/test/plugins/test_rot13.rb new file mode 100644 index 00000000..0727c77f --- /dev/null +++ b/test/plugins/test_rot13.rb @@ -0,0 +1,58 @@ +$:.unshift File.join(File.dirname(__FILE__), '../lib') + +module Irc +class Bot + module Config + @@datadir = File.expand_path(File.dirname($0) + '/../data/rbot') + @@coredir = File.expand_path(File.dirname($0) + '/../lib/rbot/core') + end +end +end + +require 'test/unit' +require 'rbot/ircbot' +require 'rbot/registry' +require 'rbot/plugins' + + +class MockBot + attr_reader :filters + def initialize + @filters = {} + end + + def register_filter(name, &block) + @filters[name] = block + end + + def path + '' + end + + def registry_factory + Irc::Bot::Registry.new('tc') + end +end + + +class PluginTest < Test::Unit::TestCase + def setup + Irc::Bot::Plugins.manager.bot_associate(MockBot.new) + + # @plugin = RotPlugin.new(MockBot.new) + # require '' + plugin_module = Module.new + fname = './data/rbot/plugins/rot13.rb' + bindtextdomain_to(plugin_module, "rbot-#{File.basename(fname, '.rb')}") + plugin_string = IO.read(fname) + plugin_module.module_eval(plugin_string, fname) + end + + def test_rot13 + plugins = Irc::Bot::Plugins.manager.botmodules[:Plugin] + assert_equal(plugins.size, 1) + rot13 = plugins.first + + assert_equal(rot13.help(nil), "rot13 => encode to rot13 or back") + end +end -- 2.39.2