Use secure password min cost option in its own tests for a speed up

Around 0.564359s => 0.092244s speed up in my machine.
This commit is contained in:
Carlos Antonio da Silva 2012-11-19 23:07:12 -02:00
parent 293c121fee
commit c2c1ecb05e
1 changed files with 10 additions and 2 deletions

View File

@ -5,13 +5,18 @@ require 'models/visitor'
require 'models/administrator'
class SecurePasswordTest < ActiveModel::TestCase
setup do
ActiveModel::SecurePassword.min_cost = true
@user = User.new
@visitor = Visitor.new
@oauthed_user = OauthedUser.new
end
teardown do
ActiveModel::SecurePassword.min_cost = false
end
test "blank password" do
@user.password = @visitor.password = ''
assert !@user.valid?(:create), 'user should be invalid'
@ -70,13 +75,16 @@ class SecurePasswordTest < ActiveModel::TestCase
end
end
test "Password digest cost defaults to bcrypt default cost" do
test "Password digest cost defaults to bcrypt default cost when min_cost is false" do
ActiveModel::SecurePassword.min_cost = false
@user.password = "secret"
assert_equal BCrypt::Engine::DEFAULT_COST, @user.password_digest.cost
end
test "Password digest cost can be set to bcrypt min cost to speed up tests" do
ActiveModel::SecurePassword.min_cost = true
@user.password = "secret"
assert_equal BCrypt::Engine::MIN_COST, @user.password_digest.cost
end