Когато тествам моите контролери, имам този вид код:
describe "GET 'show'" do
let!(:comment) { build_stubbed(:comment) }
before(:each) { Project.stubs(:find).returns(project) }
it "render show template" do
get 'show', id: project.id
should render_template('show')
end
it "create a new comment" do
Comment.expects(:new).returns(comment)
get 'show', id: project.id
end
end
Проблемът ми е следният: трябва да предам ID, за да използвам метода load_and_authorize_resource à cause de la ligne 139 dans ce code: https://github.com/ryanb/cancan/blob/2.0/lib/cancan/controller_resource.rb, които проверяват дали има идентификатор в параметрите.
Как да поправя това?
Благодаря!
Редактиране: С други думи: променливата @project не се създава от метода load_and_authorize_resource, защото няма идентификатор и може да провери дали има идентификатор, за да намери модел.