diff options
author | Azul <azul@leap.se> | 2012-12-17 11:07:42 +0100 |
---|---|---|
committer | Azul <azul@leap.se> | 2012-12-17 11:07:42 +0100 |
commit | a8f5a1ec486d5ee378f7b820c9f2c046e5c03672 (patch) | |
tree | 16fe85a62874c51b12a1ea05626c8fe9f06db7c9 | |
parent | fa6992640a83396980112fd012e2b3a58f10861b (diff) |
adopted test to before_validation callback
The before validation hook will overwrite whatever is in random on create. This is what we want - just need to test it properly
-rw-r--r-- | certs/app/models/leap_ca/cert.rb | 3 | ||||
-rw-r--r-- | certs/test/unit/cert_test.rb | 12 |
2 files changed, 13 insertions, 2 deletions
diff --git a/certs/app/models/leap_ca/cert.rb b/certs/app/models/leap_ca/cert.rb index 7e4b49a..9d4f15e 100644 --- a/certs/app/models/leap_ca/cert.rb +++ b/certs/app/models/leap_ca/cert.rb @@ -21,7 +21,8 @@ module LeapCA validates :key, :presence => true validates :cert, :presence => true - validates :random, :presence => true, :numericality => {:greater_than_or_equal_to => 0, :less_than => 1} + validates :random, :presence => true + validates :random, :numericality => {:greater_than => 0, :less_than => 1} design do view :by_random diff --git a/certs/test/unit/cert_test.rb b/certs/test/unit/cert_test.rb index e41edd7..0b21d0b 100644 --- a/certs/test/unit/cert_test.rb +++ b/certs/test/unit/cert_test.rb @@ -10,8 +10,18 @@ class CertTest < ActiveSupport::TestCase assert @sample.valid? end + test "setting random on create validation" do + @sample.random = "asdf" + assert @sample.valid? + assert @sample.random.is_a? Float + assert @sample.random >= 0 + assert @sample.random < 1 + end + test "validates random" do - [-1, 1, nil, "asdf"].each do |invalid| + @sample.save # make sure we are past the on_create + assert @sample.valid? + ["asdf", 1, 2, -0.1, nil, "asdf"].each do |invalid| @sample.random = invalid assert !@sample.valid?, "#{invalid} should not be a valid value for random" end |