Я интегрировал приложение rails с поддержкой omniauth и devise.В одном контроллере, который у меня есть -
def create
# some
# stuff
# here
sign_in_and_redirect(:person, @person)
# some
# stuff
# here
end
, поскольку это действие разработано, я должен проверять не это действие, а только его наличие (поправьте меня здесь, если я ошибаюсь).Кроме того, поскольку я осмеиваю этот объект person, у него нет методов для передачи действия origin_in_and_redirect.
Итак, как можно протестировать этот контроллер?
UPDATE
Я пробовал это в своем блоке before do -
controller.stub!(:sign_in_and_redirect).and_return(true)
Но это выдает мне ошибку, так как - Отсутствует аутентификация templace / create У меня нет create.html.erb, так как он перенаправляетв обычном рабочем процессе.
ОБНОВЛЕНИЕ
Мой код метода создания AuthencationController # можно посмотреть здесь - http://www.pastie.org/2116067 Мой тестовый код можно увидеть здесь- http://www.pastie.org/2116081