2013-12-19 2 views
4

У меня есть следующий в RspecRspec - redirect_to соответствие пути регулярного выражения

response.should redirect_to %r{\A/my_settings/mysub_path/} 

Я получаю следующую ошибку

NoMethodError: undefined method `model_name' for Regexp:Class 

Мне просто нужно, чтобы соответствовать части моего пути, который содержит my_settings/mysub_path. Как это достигается в rspec?

ответ

4

redirect_to ожидает строку или активную модель записи.

, если вы хотите, чтобы соответствовать что-то, вы можете использовать response.location

6

Чтобы проверить переадресацию против регулярных выражений сделать матч строку на response.location, например, так:

expect(response.location).to match('your_expected_location.com') 
1

Вот еще один простой способ для этого:

response.location.should =~ /whatever_you_want_to_match/ 
+0

Я думаю, что синтаксис «должен» устарел в пользу «ожидать». –

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