メモ書き.
ハマった点は
- assertViewHasにはpaginate()の結果を渡してやる必要がある(これはまぁそうだよね)
- assertViewHasに渡すデータはwithでeagar loadingしたデータを渡す必要がある
それっぽいコードを書くと、以下ではダメで
// 検索結果が昇順でソートされて表示されるはず $found_products = Product::where('name', 'search_condition')->orderBy('name')->orderBy('kana')->paginate(20); $response->assertViewHas('products', $found_products);
以下なら思った通り動いた. (Relationshipのあるテーブルをwithでロードしてやる必要がある)
// 検索結果が昇順でソートされて表示されるはず $found_products = Product::where('name', 'search_condition')->orderBy('name')->orderBy('kana')->with('customer', 'pic')->paginate(20); $response->assertViewHas('products', $found_products);
どのタイミングで動的プロパティが追加されるのかよくわからないな.
メッセージ見れば想像つくけど、一応メモっとく.