Рассмотрим, например, следующий код:Тестирование помощников просмотра: как я могу указать контроллер?
class ViewHelpersTest < ActionView::TestCase
should 'generate tag with correct parameters' do
assert_equal theme_stylesheet_link_tag('style', :media => 'print'),
'<link href="/themes/default/stylesheets/style.css" media="print" rel="stylesheet" type="text/css" />'
end
end
current_theme_stylesheet_tag
вид помощника, который создает таблицу стилей ссылок тег, который указывает на файл CSS, расположенной внутри директории текущей темы. Текущую тему можно получить, позвонив по номеру ApplicationController::current_theme
.
Итак, я должен предоставить действующий экземпляр контроллера, который приносит мне на мой вопрос:
Как именно я указать контроллер для использования при тестировании их помощников в Rails 3?
Также, если есть лучший способ выразить это испытание, сообщите мне. У меня мало опыта тестирования.
Прошу прощения, но ИМХО это не имеет значения, если вы «поклонник тестирования помощников». Это метод, поэтому он должен быть протестирован. – rubiii
Не нужно извиняться :) Если вы разрабатываете стиль BDD, и вы уже определили результат вспомогательных функций, я не вижу необходимости проверять помощника отдельно, особенно когда вы только рефакторинг просмотреть код. Я признаю, что спецификации полезны для сложных помощников. – zetetic