例えばログインしてるか確認する処理などbefore_filterで共通して使われそうなメソッドをテストする際に上手いことテストする方法。
Anonymous Controllerを使うと良い。
Anonymous Controllerを使うとテスト内でactionを定義することが出来るのでこのactionにリクエストを投げると良い。また、paramsの値によってテスト内容が変わる場合などもこの方法を取るとget,post呼び出し時にクエリストリングを渡す事が出来るので便利。
describe ApplicationController do
describe "#login?" do
controller do
# index actionを定義
def index
login?
render :text => 'dummy message'
end
end
it '' do
…
# 上で定義したactionを呼び出す
get :index
…
end
end
end