Sha256: 65a41a4c415f0a1107ffa64244df0e9ad5fd39d6268db97eab9f97de287ce2c9

Contents?: true

Size: 1.4 KB

Versions: 5

Compression:

Stored size: 1.4 KB

Contents

require 'test_helper'

class ResetPasswordTest < ActiveSupport::TestCase
  setup do
    @user = users(:julien)
  end

  test "generate reset password token" do
    assert @user.generate_reset_password_token!
    assert @user.persisted?
    assert_not_nil @user.reset_password_token
    assert_not_nil @user.reset_password_sent_at
  end

  test "reset password" do
    assert @user.generate_reset_password_token!
    assert @user.reset_password!('password' => "azerty", 'password_confirmation' => "azerty")
    assert @user.persisted?
    assert_nil @user.reset_password_token
    assert_nil @user.reset_password_sent_at
    assert @user.valid_password?("azerty")
  end

  test "should find user with token" do
    @user.generate_reset_password_token!
    user = User.find_for_password_reset(@user.reset_password_token)
    assert_equal @user, user
    assert_not_nil user.reset_password_token
    assert_not_nil user.reset_password_sent_at
  end

  test "should not find user with bad tokens" do
    assert_nil User.find_for_password_reset(nil)
    assert_nil User.find_for_password_reset("ariualfknsmgojqm")
  end

  test "token expiration" do
    @user.generate_reset_password_token!
    @user.update_attribute(:reset_password_sent_at, 1.week.ago)
    assert_nil User.find_for_password_reset(@user.reset_password_token)
    @user.reload
    assert_nil @user.reset_password_token
    assert_nil @user.reset_password_sent_at
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
janus-0.9.1 test/unit/reset_password_test.rb
janus-0.9.0 test/unit/reset_password_test.rb
janus-0.8.1 test/unit/reset_password_test.rb
janus-0.8.0 test/unit/reset_password_test.rb
janus-0.5.0 test/unit/reset_password_test.rb