Postというオブジェクト名のせいで地味に嫌なエラーにあたったので書いておく
PostsControllerのrspecを書いていたら、「post」という名前のせいで挙動がおかしくなった。
コントローラのテストでpost
という名前でfactoryからcreateした
let!(:post) { create(:post, user: post_user) }
で、controllerの以下のようなテストを動かすと
it 'コメントが作成されること' do
expect do
post :create, params: valid_attributes
end.to change(Comment, :count).by(1)
end
argment error?なんで?
wrong number of arguments (given 2, expected 0)
post
という命名がpost
メソッドと被ってたらしくこうしたら直った
let!(:commented_post) { create(:post, user: post_user) }