RSpecには統合テストを実行するための "get"と "response.should"という便利なメソッドがあることを知っています。 rakeタスクで同じ結果を達成するための他の方法):Rails - RakeタスクのRSpec "get"と "response"メソッドを使用する
desc "Check all content items with type 0 and do something"
task :my_task => :environment do
ContentItem.where("content_type = ?", 0).each do |obj|
get "/my_path/"+obj.value
if (response has a certain html tag)
perform some action on obj
end
end
end
私はちょうどそのようなRSpecのメソッドを実行することはできませんが、これは私が何をする必要があるか効果的である、と私はできるようにする必要があることを知っています/my_path/obj.valueがオープンされたときに戻される情報を処理します。誰にも何か提案はありますか?
Tarynが理想的だと私は同意します。問題は、情報がビュー内で把握されているため、モデルに移動できないということです。基本的には、サイトのフレームにロードしようとするときにフレームバストするWebサイトがあります。リモートURLにフレームバストが有効かどうかのデータベースレコードを保持しようとしています(これは、このレーキタスクが想定しているものです)彼らがバストしている場合、それらをロードしようとしないように)。 – Kvass
私は基本的にURLをフレームしようとするページのGET httpリクエストを実行するレーキタスクを実行しようとしています。フレームが破棄された場合はデータベースにマークします。 – Kvass
OK - 私は、途中であなたを助けることができるいくつかの例の宝石を与える編集を加えました。 net :: httpが実際にフレームバストを引き起こさないかもしれないので、幸運なことには難しいかもしれません。私はそれが実際にあなたのためにどのように現れるかわかりません。しかし少なくともそれはスタートです:) –