在第8章中有練習從cookie切換到會話。在我SessionsHelper模塊我換過
cookies.permanent[:remember_token] = user.remember_token
與
session[:remember_token] = user.remember_token
移動向會議工作得很好,但因爲我已不再「永久」存儲的cookie,測試失敗。我解開了第8章的練習變更,回到了cookies,並且所有的測試都通過了。現在,有關如何將我的授權測試更改爲在使用會話時工作的任何想法?這是我目前的測試:
describe "as wrong user" do
let(:user) { FactoryGirl.create(:user) }
let(:wrong_user) { FactoryGirl.create(:user, email:"[email protected]") }
before { sign_in user }
describe "Visiting Users#edit page" do
before { visit edit_user_path(wrong_user) }
it { should have_selector('title', text: full_title('')) }
end
describe "submitting a PUT request to the Users#update action" do
before { put user_path(wrong_user) } #put is an update?
specify{ response.should redirect_to(root_path) }
end
end
作者應該爲那些做這個練習的人提及這個案例。真的,我花了數小時才解決它。最後我回到了這個答案。 – 2012-05-01 17:05:43