Тестирование ассоциации сборки с использованием Rspec в Rails 3 - PullRequest
1 голос
/ 22 мая 2011

У меня есть следующая строка в моем действии create моего контроллера учителя.

 @rating = @teacher.ratings.build(params[:rating]) unless params[:rating][:rating].blank?

Я знаю, что мои ассоциации верны, потому что эта строка правильно создает новый рейтинг вместе с новым учителем, если рейтинг не оставлен пустым. Однако я стараюсь изо всех сил следовать TDD, и я не имею ни малейшего понятия о том, как протестировать эту строку с помощью rspec. Я в растерянности.

Я использую фабричную девочку и Стоу, если это поможет.

1 Ответ

4 голосов
/ 22 мая 2011

Вы можете сказать что-то вроде:

teacher = Factory(:teacher)
rating = Factory(:rating, :teacher_id => teacher.id)
#your_other_actions_here
teacher.rating.should be present

(то есть если рейтинг принадлежит пользователю.)

Кстати, вы не должны проверять эту строку, потому что она уже проверена Rails. Вы должны проверить поведение, если эта строка встроена в какое-либо действие.

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