おもしろwebサービス開発日記

Ruby や Rails を中心に、web技術について書いています

Cells で params や cookies を扱うテストを書く

それなりに大きめなRailsアプリを書くとき、Cells を使うと部分テンプレート単位で controller のようなものを作ることができて、controller の肥大化を防ぐことができます。たいへん便利です。

Cells に対してのテストも普通に書けますが、params や cookies を設定してテストをする方法がドキュメントに書いてなかったので調べました。下記のようにします。

class HogeCellTest < Cell::TestCase
  test "indes" do
    @controller.params[:hoge] = 'fuga'
    @request.cookies[:hoge] = 'fuga'
    invoke :index
    assert_select "p", 'hogehoge'
  end
end