0
我有一個測試:Ruby on Rails的 - 測試單位
test "should not allow access" do
get :new
assert_redirected_to new_user_session_url
end
我使用的設計進行驗證。
對於我的每個操作,我都有兩個視圖:一個正常,一個用於移動設備,因此在使用通常的默認視圖(sign_in.html.erb)之前 - 測試是通過的,但是當我添加移動視圖(sign_in.mobile.erb)我有下一個失敗消息。
預期響應是重定向到http://test.host/users/sign_in但是http://test.host/users/sign_in.mobile
所以重定向但從客戶端測試點 - 邏輯工作正常,例如如果用戶未通過身份驗證,他將被重定向到會話新路徑(new_user_session_url)。這也適用於移動設備(移動客戶端將被重定向到登錄頁面的移動視圖),但如果客戶端是移動設備且我的控制器重定向到移動視圖,則由於某些原因,測試失敗。
我的問題是如何解決測試問題?我已經試過:
assert_redirected_to new_user_session_path
assert_redirected_to :controller => "devise/session", :action => "new"
,但沒有成功,同樣的情況下,失敗消息,如果客戶端是移動設備和重定向發生移動視圖。
有什麼想法?
我真的不明白你在問什麼。如果你能提供更清晰的格式和更多的信息,我可能會提供幫助。 – Mario 2011-04-28 22:14:35
對不起我的英文,我添加了一些更多的細節,希望它有道理。 – paxer 2011-04-28 23:39:43