我有一个使用RSpec测试的Rails 3应用程序。我已经使用外部类MustMock
作为模拟Rails控制器规范中的外部类
class FooController < ApplicationController
def myaction
mockme = MustMock.new
@foobar = mockme.do_something
end
end
我怎样才能最好地嘲笑的MustMock
实例在我的控制器规格控制器?
我有一个使用RSpec测试的Rails 3应用程序。我已经使用外部类MustMock
作为模拟Rails控制器规范中的外部类
class FooController < ApplicationController
def myaction
mockme = MustMock.new
@foobar = mockme.do_something
end
end
我怎样才能最好地嘲笑的MustMock
实例在我的控制器规格控制器?
describe FooController do
specify :myaction do
MustMock.should_receive(:new)
.and_return(stub :do_something => :something)
get :myaction
assigns[:foobar].should == :something
end
end
你可以试试这个:
it "does something in myaction" do
my_stub = stub()
my_stub.should_receive(:do_something).once.and_return(:foobar)
MustMock.stub(:new => my_stub)
get :myaction
response.should be_success
end
+1,我喜欢这个块的形式很多。我要复制你的风格! :) – iain 2012-01-07 03:24:43