ika_bot/test/test_ika.rb

44 lines
976 B
Ruby
Raw Permalink Normal View History

2025-08-16 15:36:17 -04:00
require_relative "../lib/ika"
require "minitest/autorun"
2025-08-23 14:38:42 -04:00
class TestHandler < Ika
attr_reader :responses
def initialize
@responses = []
end
def responder
lambda { |response| @responses << response }
2025-08-16 15:36:17 -04:00
end
2025-08-23 14:38:42 -04:00
end
2025-08-16 15:36:17 -04:00
2025-08-23 14:38:42 -04:00
class TestIka < Minitest::Test
def setup
@ika = TestHandler.new
2025-08-16 15:36:17 -04:00
end
def test_handle_command_message
2025-08-24 08:36:10 -04:00
skip
2025-08-16 15:36:17 -04:00
@command = Minitest::Mock.new
@command.expect(:execute, nil)
Commands::Command.stub(:for, @command) do |x|
@ika.handle_message("msg")
end
2025-08-23 14:38:42 -04:00
assert_equal [], @ika.responses
2025-08-16 15:36:17 -04:00
end
def test_handle_normal_message
2025-08-24 08:36:10 -04:00
skip
2025-08-16 15:36:17 -04:00
@ika.current_session = Minitest::Mock.new
@command = Commands::Command.new(nil, nil)
Commands::Command.stub(:for, nil) do |x|
@command.stub(:execute, -> { raise "#execute was called" }) do |x|
@ika.current_session.expect(:respond_to, nil) { |x| x == "msg" }
@ika.handle_message("msg")
end
end
2025-08-23 14:38:42 -04:00
assert_equal [], @ika.responses
2025-08-16 15:36:17 -04:00
end
end