我在書中沿以下,每天的Rails測試使用RSpec,它利用了assigns
:我不知道是什麼RSpec的分配呢,我的測試失敗
it "assigns the requested Category to @category" do
category = FactoryGirl.create(:category)
binding.pry
get :edit, id: category
expect(assigns(:category)).to eq category
end
然而,我測試失敗,所以我用撬挖(如上所示)
[1] pry(#<RSpec::Core::ExampleGroup::Nested_1::Nested_3::Nested_1>)> category
=> #<Category id: 83, name: "Example category", user_id: 1, created_at: "2014-03-31 12:25:45", updated_at: "2014-03-31 12:25:45", amount: nil, group_id: nil, amount_in: nil, amount_out: nil>
..ok,類別很好。大!但是,我不確定assigns
實際上做了什麼,並且找不到它的文檔,因爲我不知道它屬於哪裏(RSpec?FactoryGirl?)。這是我得到的結果:
[2] pry(#<RSpec::Core::ExampleGroup::Nested_1::Nested_3::Nested_1>)> assigns(:category)
=> nil
..並且它是零。如果這件事很明顯,有人能指出我在正確的方向嗎?甚至可以解釋一下在這裏(或者是爲了做什麼)實際做的事情,我會非常感激。另外,assigns
的文檔在哪裏?
https://github.com/rspec/rspec-rails#assignkey-val –