- Implement remember me checkbox in login form - Update sessions controller to handle remember me logic - Enhance session management to prevent session hijacking - Add tests for remember me functionality This commit introduces a "Remember me" feature that allows users to stay logged in across sessions. It includes updates to the login form, session handling in the controller, and additional tests to ensure the functionality works as expected. The changes also improve security by validating session tokens to prevent session hijacking.
19 lines
450 B
Ruby
19 lines
450 B
Ruby
require 'test_helper'
|
|
|
|
class SessionsHelperTest < ActionView::TestCase
|
|
|
|
def setup
|
|
@user = users(:michael)
|
|
remember(@user)
|
|
end
|
|
|
|
test "current_user returns right user when session is nil" do
|
|
assert_equal @user, current_user
|
|
assert is_logged_in?
|
|
end
|
|
|
|
test "current_user returns nil when remember digest is wrong" do
|
|
@user.update_attribute(:remember_digest, User.digest(User.new_token))
|
|
assert_nil current_user
|
|
end
|
|
end |