Ruby on rails Rspec:测试实例变量的赋值

Ruby on rails Rspec:测试实例变量的赋值,ruby-on-rails,ruby,rspec,Ruby On Rails,Ruby,Rspec,与工厂女孩一起使用Rspec。尝试检查控制器中分配了哪些数据(并对其进行测试)。我读过的每一篇帖子都说我应该能够从assigns()中得到一些东西,但它总是返回nill 控制器 def index @stickies = Sticky.where(:user_id => current_user.id) end 规格 输出 foo = 我使用了错误的语法吗?有更好的方法吗?谢谢 您必须首先调用操作 describe StickiesController do describe

与工厂女孩一起使用Rspec。尝试检查控制器中分配了哪些数据(并对其进行测试)。我读过的每一篇帖子都说我应该能够从assigns()中得到一些东西,但它总是返回nill

控制器

def index
 @stickies = Sticky.where(:user_id => current_user.id)
end
规格

输出

foo = 

我使用了错误的语法吗?有更好的方法吗?谢谢

您必须首先调用操作


describe StickiesController do
  describe "GET index" do
    it "should assign stickies" do
      get :index
      assigns(:stickies).should_not be_nil
    end
  end
end

如果使用rspec>2.99,则可以使用:


expect(assigns(:stickies))。不要成为我最愚蠢的动作之一。谢谢你,大卫根本就没有骨子里的动作。

describe StickiesController do
  describe "GET index" do
    it "should assign stickies" do
      get :index
      assigns(:stickies).should_not be_nil
    end
  end
end