Foo モジュールをクラスにインクルードして「bar」を呼び出したときに、メソッド (この場合は「puts」) が呼び出されるかどうかをテストしたいと思います。
require 'minitest/autorun'
module Foo
def bar
puts 'bar'
end
end
class FooTest < MiniTest::Unit::TestCase
def setup
@class = Class.new do
extend Foo
end
end
def test_if_bar_method_calls_puts
mock = MiniTest::Mock.new
mock.expect(:puts, nil, ['bar'])
@class.bar
assert mock.verify
end
end