我將集成的rails應用程序與omniauth和devise集成在一起。在一個控制器我有 -Rspec在控制器中跳過設計動作 - sign_in_and_redirect
def create
# some
# stuff
# here
sign_in_and_redirect(:person, @person)
# some
# stuff
# here
end
因爲這種行動是從色器件,我不應該測試這種行動,但它只是存在(這裏糾正我,如果我錯了。)。另外,由於我嘲笑這個人物,它沒有傳遞原點sign_in_and_redirect動作的方法。
那麼,如何測試這個控制器呢?
UPDATE
我在之前做塊嘗試這 -
controller.stub!(:sign_in_and_redirect).and_return(true)
但是,這給我的錯誤是 - 缺少templace認證/創建 我沒有任何create.html上。 erb,因爲它在正常的工作流程中重定向。
UPDATE
我AuthencationController#創建方法的代碼可以看到這裏 - http://www.pastie.org/2116067 我的測試代碼可以在這裏看到 - http://www.pastie.org/2116081