AWDwR 12.4まで
まずは、コントローラのテスト。ふつーに書けばいいみたい:-)。
リクエストを発行するメソッドはこんな感じ。
get :index post :login, :user => {:name = 'enkimi', :password => 'enkimi'}
で、アサーションはこんな感じ。
assert_response :success assert_redirected_to :action => 'index' assert_template 'store/index' assert_tag :tag => 'div', :attributes => {:class => 'error'}
アクションで格納されたインスタンス変数を格納したハッシュのassignsは大人の事情?でなぜかシンボルで参照できないので、シンボルで参照できるメソッドを用意しておきましたよ。
assigns[:items] × assigns(:items) ○
次にモック。モックはモデルのモック化したいメソッドをオーバーライドすればOK。テスト時はまずモックをロードし、モックがなければモデルをロードしてくれる。
今日はあっさりとこんな感じで。