Изменение имени хоста для тестов в Rails - PullRequest
3 голосов
/ 26 августа 2011

Очевидно, что при запуске тестов в Rails имя хоста - "www.example.com".Если я запускаю root_url в тесте, он выдаст "http://www.example.com/".

. Поскольку я создаю приложение, для которого требуются другие имена хостов, есть ли способ изменить имя хоста по умолчанию на другое, поэтому мне не нужноуказывать его каждый раз, когда я генерирую URL в тестах?

Спасибо.

Ответы [ 4 ]

2 голосов
/ 24 сентября 2011

Помощники пути / URL-адреса берут имя хоста из объекта запроса. Таким образом, в тесте вы можете сделать что-то вроде этого:

request.host = "another-domain.com"
1 голос
/ 10 февраля 2012

Кажется, ответ - нет, в тестовом коде вы должны указать хост при вызове помощников по URL.

0 голосов
/ 26 августа 2011

Ну, это зависит от того, как вы тестируете. Например, если вы используете Capybara для своего набора тестов, вы можете указать default_host

0 голосов
/ 26 августа 2011

Да, я думаю, что вы можете сделать что-то подобное в вашем файле config / environment / test.rb:

config.action_controller.asset_host = "127.0.0.1"

ps пока не проверено. Я знаю, что сделал что-то подобное, но однажды, но код на моем компьютере на работе. Завтра проверю, если не получится.

...