如何在机架/测试中设置环境['SERVER_NAME']?



在Sinatra测试中,env['SERVER_NAME']默认为www.example.com。我怎么把它设为任意定义域?

Capybara有.default_host方法,但不使用Capybara。

或者,是否有可能改变环境[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>

env helper只能在Sinatra应用中访问。

一种改变它的方法是在发出请求时:

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

机架/测试getpost的第三个参数是标头哈希值

相关内容

  • 没有找到相关文章

最新更新