リダイレクトリンクのデータベースにRESTfulAPIを設定しようとしています。私はキュウリで多くのテストを設定しました。そのうちの1つは、ユーザーが/links/:idでGETを実行するときです。これは、ユーザーをリンクにリダイレクトすることになっています。ブラウザでは動作しますが、キュウリでこのテストを設定するのに問題があります。
Given /^The link id part of the URL matches an existing entry in the links table$/ do
FactoryGirl.create(:users)
FactoryGirl.create(:links, :OWNER_USERID => Users.first.id)
Users.count.should==1
Links.count.should==1
end
When /^you use GET on link$/ do
visit link_path(Links.first.id)
end
指定されたlink_pathは、次のshowメソッドに移動します。
def show
redir=Links.find_by_id(params[:id])
redirect_to redir.target, :status=>307
end
問題は、アプリケーション/インデックスのテンプレートがないと文句を言うWhen部分でキュウリが失敗することです。何らかの理由で、リダイレクトされずに自分のサイトのroot_pathに移動します。そのようなリダイレクトが実際に機能するかどうかを確認する方法を知っている人はいますか?