2017-07-21 12 views
0

下記のようなnginxリライトコールのserverspecにテストを作成したいと考えています(^/folder/file.json URLのリクエストを@redirect_url変数にリダイレクトします):serverspecを使用してリダイレクトをテストする

rewrite ^/folder/file.json <%= @redirect_url %> permanent; 

私が更新しているシェフの料理本の場合。残念ながら、私はインターネット上で見つけられたことから、nginxとserverspecの用語の理解の完全な欠如か、それを行うことができないという事実を強調しています。助けることができる人は誰ですか?

答えて

2

あなたが直接RubyのNetを使用して応答コードを確認することができます:: HTTP

describe Net::HTTP.get_response(URI('http://localhost:port/path')) do 
    its(:code) { should eq '301' } 
    its(:msg) { should match 'Moved Permanently' } 
end 
1

Aは、curlコマンドを使用してseverspecリダイレクトこのようなものです:

redirect_url = "..." 
describe command("curl -I http://example.com/folder/file.json") do 
    its(:stdout) { should match(%r|HTTP/1.1 301 Moved Permanently|) } 
    its(:stdout) { should match(%r|Location: #{Regexp.escape(redirect_url)}|) } 
end 
関連する問題