2012-12-28 69 views
4

在Sinatra測試中,env['SERVER_NAME']默認爲www.example.com。我如何設置這個任意域?如何在機架/測試中設置env ['SERVER_NAME']?

水豚有.default_host方法,但不使用水豚。

或者,是否可以更改env [DEFAULT_HOST]?

使用RSpec,Sinatra,WebMock。

編輯:添加env['SERVER_NAME'] = 'www.foo.com'到RSpec的測試引發異常:

NameError: undefined local variable or method 'env' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x007fe6ce3b5ff8>

+2

'env ['SERVER_NAME'] ='mything.com''? – Linuxios

回答

4

env助手只是一個西納特拉的應用程序中訪問。

一個,以改變它的方法是做出請求時:

get "/blah", {}, {'HTTP_SERVER_NAME' => 'www.foo.com' } 

齒條/測試getpost的第三參數是標頭散列。

相關問題