質問: rspecを利用してcontrollerのindex,showメソッドのテストを実装する時の質問です。 beforeで before{post :create, params} のような形で事前にデータを登録しておきます。 このときbeforの結果作成されたidをキーとしてindex,showメソッドを実行した結果をテストしたいのですが、 そもそもbeforで実行したcreateの結果のidを取得する方法がわかりません。 (idはfactory girl等で作成するのではなくDB側でauto incrementで連番でレコード作成時に生成されています。) どのような方法があるのでしょうか? すいませんがどうぞよろしくお願いします。
回答: post の結果を代入することで,作成されたレコードのインスタンスを取得できます. ``` before do @data = post :create, params end it do get :show, params: { id: @data.id } end ```