2012-12-28 2 views
4

Sinatra 테스트에서 env['SERVER_NAME']의 기본값은 www.example.com입니다. 어떻게 이것을 임의의 도메인으로 설정할 수 있습니까?랙/테스트에서 env [ 'SERVER_NAME']을 (를) 설정하는 방법은 무엇입니까?

카피 바라 (Capybara)는 .default_host 방법을 사용하지만 카피 바라 (Capybara)는 사용하지 않습니다.

또는 env [DEFAULT_HOST]을 (를) 변경할 수 있습니까?

RSpec, Sinatra, WebMock을 사용하십시오.

편집 :

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 도우미는시나 응용 프로그램 내에서만 액세스 : RSpec에 시험에 env['SERVER_NAME'] = 'www.foo.com' 추가 예외가 발생합니다.

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

랙/테스트 get 또는 post의 세번째 인수는 헤더의 해시 : 요청을 할 때 그것을 변경할 수

한 가지 방법이다.