私はすべての非ローカルリクエスタにアプリケーションへのアクセスを遮断したいと考えています(実際には私のアプリケーションの実際の機能はより洗練されていますが、私の特定の問題を解決します)。 RSpecのリクエストテストでこれをテストするにはどうすればいいですか? spec/requests/gatekeeper_spec.rb
Rails/RSpecリクエストテストでローカル以外のリクエストをシミュレートする
describe "A local request to the site root" do
before :each do
get root_path
end
it "should not allow access" do
response.status.should be(401)
end
end
describe "An external (terminology?) request to the site root" do
before :all do
# TODO: make request remote
end
before :each do
get root_path
end
it "should allow access" do
response.status.should be(200)
end
end
で
にはどうすれば# TODO
ラインを実装する必要がありますか?私はモックを調べて、リギングrequest.remote_ip
が適切かもしれないと思っていますが、そのようなモックがどのように実装されているか正確には分かりません。
:10は、Railsの3に存在する
ActionController::Base.allow_rescue
設定から取られ、そしてRSpecの構成が存在することになります"be" ** ** ** ... "? – Hello71@ Hello71:心配はいりません。 RSpecはファンキーです。それは正しい。これは、Rubyの世界で行われているこの読みやすさの傾向の一部です。 –