Sha256: 035cda9629fa01cf8b49065b81ae5094096299ccc49dc0a603b796201d7ead1a
Contents?: true
Size: 2 KB
Versions: 10
Compression:
Stored size: 2 KB
Contents
require File.expand_path('../test_helper', __FILE__) class UserTest < ActiveSupport::TestCase def setup @user = User.new end test 'setup' do assert @user.valid? end test 'exuid generation' do assert @user.valid? assert @user.exuid end test 'exuid uniqueness' do @user.exuid = users(:john).exuid assert !@user.valid? end test 'exuid presence' do @user.exuid = '' assert !@user.valid? end test 'exuid randomness' do exuids = [] 1000.times do @user.exuid = nil @user.set_default_exuid exuids << @user.exuid @user.save! # Catch range errors. end assert_equal exuids.length, exuids.uniq.length, 'UIDs are not random enough' end test 'to_param' do assert_equal '56789', users(:john).to_param end test 'with_param' do assert_equal users(:john), User.with_param(users(:john).to_param).first assert_equal users(:jane), User.with_param(users(:jane).to_param).first! assert_equal nil, User.with_param('bogus id').first assert_raise ActiveRecord::RecordNotFound do User.with_param(nil).first! end end test 'find_by_param' do assert_equal users(:john), User.find_by_param(users(:john).to_param) assert_equal users(:jane), User.find_by_param(users(:jane).to_param) assert_equal nil, User.find_by_param('bogus id') assert_equal nil, User.find_by_param(nil) end test 'authenticate_email' do assert_equal users(:john), User.authenticate_signin('john@gmail.com', 'password') assert_equal :invalid, User.authenticate_signin('john@gmail.com', 'pa55w0rd'), "Jane's password on John's account" end test 'autosaves credentials' do user = users(:john) email_credential = user.credentials. find { |c| c.instance_of?(Credentials::Email) } email_credential.verified = true assert email_credential.changed?, 'Broken test assumption' user.save! assert !email_credential.changed?, 'Credential not auto-saved' end end
Version data entries
10 entries across 10 versions & 1 rubygems