我在Rails中使用RSpec(2.14)并尝试测试是否在模块上调用了一个方法,而且我没有找到任何可用的传统方法。
module TestModule
self.method_to_test
end
end
我知道需要在模块上调用stubs
而不是stub
,但我似乎无法弄清楚如何测试have_received
, receive
或should_receive
方法。
答案 0 :(得分:0)
我知道的一种方式是:
module TestModule
self.method_to_test
end
end
你指的是test_module_spec.rb:
describe "TestModule" do
let(:dummy_class) do
Class.new do
include TestModule
def to_s
"Dummy class"
end
end
end
context 'class methods' do
subject { dummy_class }
it { should respond_to(:method_to_test)}
it { should be_a(TestModule) }
its (:to_s) { should eq("Dummy class") }
end
end
我希望它有所帮助。