5

Sinatraテストでは、env['SERVER_NAME']デフォルトはwww.example.com。です。これを任意のドメインに設定するにはどうすればよいですか?

カピバラには.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>

4

1 に答える 1

5

ヘルパーには、envSinatraアプリ内でのみアクセスできます。

これを変更する1つの方法は、リクエストを行うときです。

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

ラック/テストの3番目の引数getまたはpostヘッダーハッシュです。

于 2012-12-29T19:58:35.427 に答える