使用实例变量的Stub方法

时间:2015-03-24 18:25:43

标签: ruby-on-rails ruby ruby-on-rails-3 stub

假设我有一个控制器:UserController

并且有一种方法:

before_action :add_friend

def add_friend
   @friend = Friend.last
end

如何存根add_friend并创建另一个名为@friend2的instance_variable:

@friend2 = Friend.first

那样:

@friend == nil

@friend2.nil? == false

我尝试的是:

 @friend2 = Friend.first
 UserController.any_instance.stubs(:add_friend).returns(@friend2)

但那没有用! 感谢

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

describe UsersController, "..." do
  before(:each) do
    @friend2 = Friend.first
    controller.stub!(:add_friend).and_return(@friend2)
  end
  ...
  ...
end