summaryrefslogtreecommitdiff
path: root/test/plugins
diff options
context:
space:
mode:
authorMatthias Hecker <mail@apoc.cc>2020-04-07 19:57:49 +0200
committerMatthias Hecker <mail@apoc.cc>2020-04-07 19:57:49 +0200
commit08cd983415786c83f8661195f2200a35c272b6b1 (patch)
tree92158bdf5b7d066d790b3f1165b1336736eb3410 /test/plugins
parent07a397f63f0c7dc7f53830a57ce9048cfd9efb53 (diff)
plugin(note): test cases added, closes #24
Diffstat (limited to 'test/plugins')
-rw-r--r--test/plugins/test_note.rb40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/plugins/test_note.rb b/test/plugins/test_note.rb
new file mode 100644
index 00000000..b8320965
--- /dev/null
+++ b/test/plugins/test_note.rb
@@ -0,0 +1,40 @@
+$:.unshift File.join(File.dirname(__FILE__), '..', '..', 'lib')
+$:.unshift File.join(File.dirname(__FILE__), '..', '..')
+
+require 'test/unit'
+require 'test/mock'
+
+require 'rbot/ircbot'
+require 'rbot/registry'
+require 'rbot/plugins'
+
+
+class NotePluginTest < Test::Unit::TestCase
+ def setup
+ @bot = MockBot.new
+ @bot.config['note.private_message'] = false
+ manager = Irc::Bot::Plugins.manager
+ manager.bot_associate(@bot)
+ manager.load_botmodule_file('./data/rbot/plugins/note.rb')
+ @plugin = manager.get_plugin('note')
+ end
+
+ def test_note
+ assert_not_nil(@plugin)
+ assert_equal(@plugin.help(nil), 'note <nick> <string> => stores a note (<string>) for <nick>')
+
+
+ m = MockMessage.new
+ @plugin.note(m, {nick: 'AlIcE', string: 'Hello Alice!'})
+ assert_equal(1, m.replies.size)
+ assert_equal('okay', m.replies.first)
+
+ m = MockMessage.new('', 'Alice')
+ @plugin.message(m)
+ assert_equal(1, @bot.messages.size)
+ to, message = @bot.messages.first
+ assert_equal('Alice', to)
+ assert_match(/you have notes!/, message)
+ assert_match(/<user> Hello Alice!/, message)
+ end
+end