我正在使用minitest测试ruby应用程序
我有这样的场景:
class TestExample
def test_method
SomeOtherClass.new.print_message "Hello World!!!!!"
end
end
在这里,我想模仿print_message
的{{1}}方法,并尝试这样做
SomeOtherClass
它不起作用,它给出了例外: -
MockExpectationError:expect#(“Hello World !!!!!”)=> [],得到[]
感谢任何建议和回答。
答案 0 :(得分:4)
class TestMocking < MiniTest::Unit::TestCase
def test_mocking
some_other_class_mock = MiniTest::Mock.new
some_other_class_mock.expect :print_message, nil, ["Hello World!!!!!"]
SomeOtherClass.stub :new, some_other_class_mock do
test_example = TestExample.new
test_example.test_method
end
some_other_class_mock.verify
end
end