Rspec 3.7
現在、rspecのrequest specを使用してエンドポイントのテストを作成しています。
そこで、ユーザーのサインアップのテストを行いたいのですが、body
にemailとpasswordを入れてエンドポイントを叩きたいのですが、body
にkeyとvalueを含める場合の書き方がわかりません。
headersへの含め方はわかるのでそれと同様にbodyに変えてやってみたのですがそれではできませんでした。
bodyにemailとpasswordを含めて、/api/v1/authのエンドポイントにpostすると、ユーザーが作成されるという仕様です。
テストの記述はこのようになってます。
spec/requests/user_spec.rb it "ユーザー作成のテスト" do post '/api/v1/auth' expect(response).to have_http_status(200) #ユーザーが増える確認をどのようにするかまだ考えていないためこのようになってます。 end end
こちらがheaderを含めるのと同じ感じで書いて失敗した記述です。
it "ユーザー作成のテスト" do post '/api/v1/auth', body: { 'email' => Faker::Internet.email, 'password' => 'fdsafdsa', 'password_confitmation' => 'fdsafdsa' } expect(response).to have_http_status(200) end #エラー文 Failure/Error: post '/api/v1/auth', body: { 'email' => Faker::Internet.email, 'password' => 'fdsafdsa', 'password_confitmation' => 'fdsafdsa' } ArgumentError: unknown keyword: body
どのように書いたら良いかわかる方いましたら教えていただきたいです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。