В рельсах, как вы заглушите метод рендера в функциональных тестах? - PullRequest
2 голосов
/ 29 декабря 2008

Я пишу некоторые функциональные тесты для контроллера в рельсах, используя mocha для насмешек.

Есть ли способ предотвратить рендеринг шаблона во время теста, чтобы я мог протестировать только код в контроллере?

Похоже, что rspec предоставляет что-то вроде этого, но я не использую rspec.

Ответы [ 3 ]

4 голосов
/ 29 декабря 2008

Наиболее очевидное решение, похоже, работает:

@controller.expects(:render)

Я мог бы поклясться, что попробовал прошлой ночью без удачи. Но сегодня утром это работает как шарм. Должно быть, я пропустил опечатку.

2 голосов
/ 29 декабря 2008

Не похоже, что использование заглушки здесь необходимо. Если вы хотите убедиться, что данный шаблон отображается, используйте assert_template и / или assert_response. Вы также можете установить состояние объекта ответа вручную или с помощью таких помощников, как assert_select.

0 голосов
/ 29 декабря 2008

Будет render_to_string делать то, что вам нужно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...