2011-05-21 3 views
1

У меня есть следующая строка в моем действии создания моего учителя-контроллера.Тестирование ассоциации сборки с использованием Rspec в Rails 3

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

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

Я использую заводскую девушку и должен, если это поможет.

ответ

3

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

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

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

КСТАТИ, вы не должны проверить эту линию, потому что это уже протестировали на Rails. Вы должны проверить поведение, если эта строка встроена в какое-то действие.

Смежные вопросы