2011-01-22 51 views
0

由於某種原因,我的集成測試正在測試我的登錄控制器突然不起作用。剛剛升級到2.3.9,並有奇怪的問題。在2.3.5甚至2.3.8中一切都很好!下面是一些代碼,不再通過:Rails 2.3.9會話將無法在集成測試中工作

def login_user 
    visit login_url 
    assert_response :success 
    assert_template "new" 

    post session_url, :email => "[email protected]", :password => "secret" 
    assert_response :redirect 
    follow_redirect! 
    assert_response :success 
    assert_template "sessions/organizations" 

    post organizations_session_url, :id => organizations(:ace).id 
    assert_response :redirect 
    follow_redirect! 
    assert_response :success 
    assert_template "mission_control/index" 
end 

當他們的ID的用戶登錄被保存會話[:USER_ID]。當我運行上面的測試時,它在第一個follow_redirect!之後失敗了。看來會話[:user_id]正在被清除,然後要求用戶在他們剛剛完成時再次登錄。什麼可能導致我的會話被清除?我沒有碰過任何東西。 Rails 2.3.5很好。 Rails中有錯誤嗎?

感謝

(順便說一句,該網站運行良好,它只是似乎與我的會話搞亂集成測試。)

回答

0

好吧,我想通了。 2.3.10也有同樣的問題。

我沒有使用Rails 2.3.10 gem,而是從github的2.3分支下載了最新的穩定代碼,並凍結了。我猜Rails的寶石已經過時了。

謝謝