如何在btakita / rr中调用原始方法?

时间:2013-12-03 08:13:40

标签: ruby-on-rails ruby rspec rr

我需要检查是否调用了特定方法。在btakita / rr有可能吗?

rspec示例来自: https://www.relishapp.com/rspec/rspec-mocks/v/2-13/docs/message-expectations/calling-the-original-method

    Addition.should_receive(:two_plus_two).and_call_original

1 个答案:

答案 0 :(得分:0)

根据original rr announcement,您需要使用以下方法:

original_two_plus_two = Addition.method(:two_plus_two)
mock(Addition).two_plus_two {original_two_plus_two.call}

但是,如果你原来可以使用之后的,那么你可以使用rr的代理功能,如https://github.com/rr/rr#proxies所述,如下:

mock.proxy(Addition).two_plus_two

(向@ElliotWinkler致意,澄清在这种情况下不需要阻止。)