【发布时间】:2011-07-02 15:32:29
【问题描述】:
我有一个用户阅读列表的嵌套资源(一个用户 has_many 阅读列表)。我试图模拟控制器规格中的所有内容,但无法保持简洁。这是#show 操作的之前代码:
@reading_lists = mock("Reading lists")
@reading_lists.stub!(:find).with("1").and_return(@reading_list)
@user = mock_model(User, :reading_lists => @reading_lists)
User.stub!(:find).with("1").and_return(@user)
get :show, :user_id => "1", :id => "1"
正在测试:
def show
@user = User.find(params[:user_id])
@reading_list = @user.reading_lists.find params[:id]
end
这似乎是一个疯狂的样板 - 有没有更好的方法来模拟它?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 mocking rspec