在minitest的模拟上多次调用相同的方法

时间:2014-11-07 17:00:00

标签: ruby-on-rails ruby mocking minitest

我正在使用带有Ruby 1.9.3的minitest版本 如何测试模拟的多次调用?我需要像

这样的东西
mockObject.expect.times(2) :method, [return_1 first time, return_2 second time] 
mockObject.verify

有没有办法实现这个目标?

2 个答案:

答案 0 :(得分:6)

每次调用方法时都需要调用expect

mockObject.expect :method, return_1, [first, time, args]
mockObject.expect :method, return_2, [second, time, args]

# run your code using the mock object

mockObject.verify

答案 1 :(得分:2)

不幸的是,我的最小版本更老了。仅在此提交后才支持此操作。 https://github.com/seattlerb/minitest/commit/7a6f1818877c6c8a83a0e6680d5fc23ec32fa633#diff-00a18d559ad9a1e984068e38e5009047