activevalidators 3.1.2 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/.travis.yml +1 -4
- data/ChangeLog.md +16 -1
- data/README.md +4 -2
- data/activevalidators.gemspec +1 -1
- data/certs/franckverrot.pem +0 -0
- data/checksums/3.1.2.sha512 +1 -0
- data/lib/{active_model → active_validators/active_model}/validations/barcode_validator.rb +2 -2
- data/lib/{active_model → active_validators/active_model}/validations/credit_card_validator.rb +1 -1
- data/lib/{active_model → active_validators/active_model}/validations/date_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/email_validator.rb +1 -1
- data/lib/active_validators/active_model/validations/hex_color_validator.rb +11 -0
- data/lib/{active_model → active_validators/active_model}/validations/ip_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/nino_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/password_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/phone_validator.rb +2 -0
- data/lib/{active_model → active_validators/active_model}/validations/postal_code_validator.rb +0 -0
- data/lib/active_validators/active_model/validations/regexp_validator.rb +22 -0
- data/lib/{active_model → active_validators/active_model}/validations/respond_to_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/shared/luhn_checker.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/sin_validator.rb +2 -2
- data/lib/{active_model → active_validators/active_model}/validations/siren_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/slug_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/ssn_validator.rb +7 -5
- data/lib/{active_model → active_validators/active_model}/validations/tracking_number_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/twitter_validator.rb +0 -0
- data/lib/{active_model → active_validators/active_model}/validations/url_validator.rb +0 -0
- data/lib/activevalidators.rb +2 -4
- data/test/test_helper.rb +2 -1
- data/test/validations/barcode_test.rb +9 -1
- data/test/validations/hex_color_test.rb +55 -0
- data/test/validations/regexp_test.rb +35 -0
- data/test/validations/ssn_test.rb +8 -8
- metadata +27 -20
- metadata.gz.sig +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2bfed38515b9a564947994fcb1c43dfe88ad510
|
4
|
+
data.tar.gz: 3e4f455a22673e298c4c7957b59ce227e3c122c8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 537572510a16b9f160eefdc2fde8ab7301049f7f967a09d226a17108183849ee18ff3b7e3ef7223055558e2f6a9c16448b53394332cd43e7f5f2b451a2fb8618
|
7
|
+
data.tar.gz: 935a66f8260aadc377cb2f7a8277d5fa8bdf0a158709211d2ba164a7d61b9d57dcc7375b1f1381f533fbefa193d77d8a280c0f0381d9446a36f6ec4dd96f9aa5
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/.travis.yml
CHANGED
data/ChangeLog.md
CHANGED
@@ -1,6 +1,18 @@
|
|
1
1
|
# UNRELEASED
|
2
2
|
|
3
|
-
|
3
|
+
# 3.2.0
|
4
|
+
|
5
|
+
## MAJOR CHANGES
|
6
|
+
|
7
|
+
* Ensure the $LOAD\_PATH could never break ActiveValidators (see #71 for details)
|
8
|
+
|
9
|
+
## DEPRECATION
|
10
|
+
|
11
|
+
* [SSN validations doesn't support any options anymore][ssn_validation_options]
|
12
|
+
|
13
|
+
## FEATURES
|
14
|
+
|
15
|
+
* Regexp validator.
|
4
16
|
|
5
17
|
# 3.1.0
|
6
18
|
|
@@ -195,3 +207,6 @@
|
|
195
207
|
* Add errors with the ActiveModel::Errors#add method -> i18n support
|
196
208
|
* Add phone format validator
|
197
209
|
* Public release
|
210
|
+
|
211
|
+
|
212
|
+
[ssn_validation_options]: https://github.com/franckverrot/activevalidators/commit/dee076a8e344897f0325747504625285be7da226
|
data/README.md
CHANGED
@@ -50,7 +50,7 @@ In your models, the gem provides new validators like `email`, or `url`:
|
|
50
50
|
```ruby
|
51
51
|
class User
|
52
52
|
validates :email_address, :email => true # == :email => { :strict => false }
|
53
|
-
validates :link_url, :url => true
|
53
|
+
validates :link_url, :url => true # (Could be combined with `allow_blank: true`)
|
54
54
|
validates :user_phone, :phone => true
|
55
55
|
validates :company_siren, :siren => true
|
56
56
|
validates :password, :password => { :strength => :medium }
|
@@ -109,11 +109,13 @@ Exhaustive list of supported validators and their implementation:
|
|
109
109
|
* `siren`
|
110
110
|
* `slug` : based on `ActiveSupport::String#parameterize`
|
111
111
|
* `sin` : Social Insurance Number (only for Canada). You also can allow permanent residents cards (such cards start with '9'): `:sin => {:country => :canada, :country_options => {allow_permanent_residents: true}}`
|
112
|
-
* `ssn` : Social Security Number (only for USA).
|
112
|
+
* `ssn` : Social Security Number (only for USA).
|
113
113
|
* `tracking_number`: based on a set of predefined masks
|
114
114
|
* `twitter` : based on a regular expression
|
115
115
|
* `url` : based on a regular expression
|
116
116
|
* `barcode` : based on known formats (:ean13 only for now)
|
117
|
+
* `hex_color` : based on a regular expression
|
118
|
+
* `regexp` : uses Ruby's [`Regexp.compile`](http://www.ruby-doc.org/core-2.1.1/Regexp.html#method-c-new) method
|
117
119
|
|
118
120
|
## Todo
|
119
121
|
|
data/activevalidators.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
Gem::Specification.new do |s|
|
3
3
|
s.name = 'activevalidators'
|
4
|
-
s.version = '3.
|
4
|
+
s.version = '3.2.0'
|
5
5
|
s.platform = Gem::Platform::RUBY
|
6
6
|
s.authors = ['Franck Verrot', 'Paco Guzmán', 'Oriol Gual', 'Garrett Bjerkhoel', 'Renato Riccieri Santos Zannon', 'Brian Moseley', 'Serj L aka Loremaster']
|
7
7
|
s.email = ['franck@verrot.fr']
|
data/certs/franckverrot.pem
CHANGED
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
4faf052c6018bd3f17ab23c2cc6f5e2e7c9beaadd3fbb85652fc70cac785b1a6886ffa1a0d0c164607acf5bbf43881f7a17b75a3eba5647784d7c67c274574c4
|
@@ -12,7 +12,7 @@ module ActiveModel
|
|
12
12
|
|
13
13
|
def validate_each(record, attribute, value)
|
14
14
|
method = "valid_#{options[:format].to_s}?"
|
15
|
-
record.errors.add(attribute) if value.blank? || !self.send(method, value)
|
15
|
+
record.errors.add(attribute) if value.blank? || !self.send(method, value.to_s)
|
16
16
|
end
|
17
17
|
|
18
18
|
def valid_ean13?(value)
|
@@ -32,7 +32,7 @@ module ActiveModel
|
|
32
32
|
uneven_sum += digit.to_i
|
33
33
|
end
|
34
34
|
end
|
35
|
-
(10 - ((even_sum*3 + uneven_sum) % 10)).to_s
|
35
|
+
((10 - ((even_sum*3 + uneven_sum) % 10)) % 10).to_s
|
36
36
|
end
|
37
37
|
end
|
38
38
|
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/{active_model → active_validators/active_model}/validations/postal_code_validator.rb
RENAMED
File without changes
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module ActiveModel
|
2
|
+
module Validations
|
3
|
+
class RegexpValidator < EachValidator
|
4
|
+
def validate_each(record, attribute, value)
|
5
|
+
unless valid_regexp?(value)
|
6
|
+
record.errors.add(attribute)
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
|
11
|
+
private
|
12
|
+
|
13
|
+
def valid_regexp?(value)
|
14
|
+
Regexp.compile(value.to_s)
|
15
|
+
true
|
16
|
+
|
17
|
+
rescue RegexpError
|
18
|
+
false
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/{active_model → active_validators/active_model}/validations/respond_to_validator.rb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -2,16 +2,18 @@ module ActiveModel
|
|
2
2
|
module Validations
|
3
3
|
class SsnValidator < EachValidator
|
4
4
|
def validate_each(record, attribute, value)
|
5
|
-
|
6
|
-
record.errors.add(attribute) if value.blank? || !SsnValidatorGeneral.valid?(type, value)
|
5
|
+
record.errors.add(attribute) if value.blank? || !SsnValidatorGeneral.valid?(options, value)
|
7
6
|
end
|
8
7
|
end
|
9
8
|
|
9
|
+
# <b>DEPRECATED:</b> Please use <tt>:ssn => true</tt> instead.
|
10
10
|
class SsnValidatorGeneral
|
11
|
-
def self.valid?(
|
12
|
-
if type == :usa_ssn
|
13
|
-
|
11
|
+
def self.valid?(options, value)
|
12
|
+
if options[:type] == :usa_ssn
|
13
|
+
warn "[DEPRECATION] providing {:type => :usa_ssn} is deprecated and will be removed in the future. Please use `:ssn => true` instead."
|
14
14
|
end
|
15
|
+
|
16
|
+
SsnValidatorUSA.new(value).valid?
|
15
17
|
end
|
16
18
|
end
|
17
19
|
|
data/lib/{active_model → active_validators/active_model}/validations/tracking_number_validator.rb
RENAMED
File without changes
|
File without changes
|
File without changes
|
data/lib/activevalidators.rb
CHANGED
@@ -1,11 +1,9 @@
|
|
1
1
|
require 'active_model'
|
2
|
-
require 'phony'
|
3
|
-
require 'countries'
|
4
2
|
require 'active_validators/one_nine_shims/one_nine_string'
|
5
3
|
|
6
4
|
module ActiveValidators
|
7
5
|
def self.activevalidators
|
8
|
-
%w(email url respond_to phone slug ip credit_card date password twitter postal_code tracking_number siren ssn sin nino barcode date)
|
6
|
+
%w(email url respond_to phone slug ip credit_card date password twitter postal_code tracking_number siren ssn sin nino barcode date hex_color regexp)
|
9
7
|
end
|
10
8
|
|
11
9
|
# Require each validator independently or just pass :all
|
@@ -17,7 +15,7 @@ module ActiveValidators
|
|
17
15
|
syms = validators.include?(:all) ? activevalidators : validators.map(&:to_s) & activevalidators
|
18
16
|
|
19
17
|
syms.each do |validator_name|
|
20
|
-
require "active_model/validations/#{validator_name}_validator"
|
18
|
+
require "active_validators/active_model/validations/#{validator_name}_validator"
|
21
19
|
end
|
22
20
|
end
|
23
21
|
|
data/test/test_helper.rb
CHANGED
@@ -14,7 +14,8 @@ class TestRecord
|
|
14
14
|
include ActiveModel::Validations
|
15
15
|
attr_accessor :ip, :url, :slug, :responder, :global_condition,
|
16
16
|
:local_condition, :phone, :email, :card, :password, :twitter_username,
|
17
|
-
:postal_code, :carrier, :tracking_number, :start_date, :end_date, :siren, :ssn, :sin, :nino, :barcode
|
17
|
+
:postal_code, :carrier, :tracking_number, :start_date, :end_date, :siren, :ssn, :sin, :nino, :barcode,
|
18
|
+
:text_color, :redirect_rule
|
18
19
|
|
19
20
|
def initialize(attrs = {})
|
20
21
|
attrs.each_pair { |k,v| send("#{k}=", v) }
|
@@ -4,7 +4,15 @@ ActiveValidators.activate(:barcode)
|
|
4
4
|
describe "Barcode Validation" do
|
5
5
|
describe "EAN13 Validation" do
|
6
6
|
it "accepts valid EAN13s" do
|
7
|
-
|
7
|
+
["9782940199617", "9782940199600"].each do |barcode|
|
8
|
+
subject = build_barcode_record :ean13, :barcode => barcode
|
9
|
+
subject.valid?.must_equal true
|
10
|
+
subject.errors.size.must_equal 0
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
it "accepts EAN13s as integers" do
|
15
|
+
subject = build_barcode_record :ean13, :barcode => 9782940199617
|
8
16
|
subject.valid?.must_equal true
|
9
17
|
subject.errors.size.must_equal 0
|
10
18
|
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
ActiveValidators.activate(:hex_color)
|
3
|
+
|
4
|
+
describe "Hex-Color Validation" do
|
5
|
+
let(:invalid_message) { subject.errors.generate_message(:text_color, :invalid) }
|
6
|
+
|
7
|
+
subject { TestRecord.new }
|
8
|
+
|
9
|
+
before do
|
10
|
+
TestRecord.reset_callbacks(:validate)
|
11
|
+
TestRecord.validates :text_color, :hex_color => true
|
12
|
+
end
|
13
|
+
|
14
|
+
it "accepts blank value" do
|
15
|
+
subject.text_color = ''
|
16
|
+
|
17
|
+
subject.must_be :valid?
|
18
|
+
subject.errors.must_be :empty?
|
19
|
+
end
|
20
|
+
|
21
|
+
it "accepts 3 hex characters" do
|
22
|
+
subject.text_color = 'abc'
|
23
|
+
|
24
|
+
subject.must_be :valid?
|
25
|
+
subject.errors.must_be :empty?
|
26
|
+
end
|
27
|
+
|
28
|
+
it "accepts 6 hex characters" do
|
29
|
+
subject.text_color = 'abc012'
|
30
|
+
|
31
|
+
subject.must_be :valid?
|
32
|
+
subject.errors.must_be :empty?
|
33
|
+
end
|
34
|
+
|
35
|
+
it "rejects non-hex characters" do
|
36
|
+
subject.text_color = 'efg345'
|
37
|
+
|
38
|
+
subject.must_be :invalid?
|
39
|
+
subject.errors[:text_color].must_include invalid_message
|
40
|
+
end
|
41
|
+
|
42
|
+
it "rejects too few characters" do
|
43
|
+
subject.text_color = 'ef'
|
44
|
+
|
45
|
+
subject.must_be :invalid?
|
46
|
+
subject.errors[:text_color].must_include invalid_message
|
47
|
+
end
|
48
|
+
|
49
|
+
it "rejects too many characters" do
|
50
|
+
subject.text_color = 'efab001'
|
51
|
+
|
52
|
+
subject.must_be :invalid?
|
53
|
+
subject.errors[:text_color].must_include invalid_message
|
54
|
+
end
|
55
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
ActiveValidators.activate(:regexp)
|
3
|
+
|
4
|
+
describe "Regexp Validation" do
|
5
|
+
let(:invalid_message) { subject.errors.generate_message(:redirect_rule, :invalid) }
|
6
|
+
|
7
|
+
subject { TestRecord.new }
|
8
|
+
|
9
|
+
before do
|
10
|
+
TestRecord.reset_callbacks(:validate)
|
11
|
+
TestRecord.validates :redirect_rule, :regexp => true
|
12
|
+
end
|
13
|
+
|
14
|
+
it "accepts blank value" do
|
15
|
+
subject.redirect_rule = ''
|
16
|
+
|
17
|
+
subject.must_be :valid?
|
18
|
+
subject.errors.must_be :empty?
|
19
|
+
end
|
20
|
+
|
21
|
+
it "rejects malformed regular expressions" do
|
22
|
+
subject.redirect_rule = '['
|
23
|
+
|
24
|
+
subject.must_be :invalid?
|
25
|
+
subject.errors[:redirect_rule].must_include invalid_message
|
26
|
+
end
|
27
|
+
|
28
|
+
it "allow proper regular expressions" do
|
29
|
+
subject.redirect_rule = '^/vanity-url(-2014)?'
|
30
|
+
|
31
|
+
subject.must_be :valid?
|
32
|
+
subject.errors.must_be :empty?
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -5,45 +5,45 @@ describe "SSN validations" do
|
|
5
5
|
describe "USA ssn" do
|
6
6
|
describe "for invalid" do
|
7
7
|
it "rejects empty ssn" do
|
8
|
-
subject = build_ssn_record({:ssn => ''},
|
8
|
+
subject = build_ssn_record({:ssn => ''}, true)
|
9
9
|
subject.valid?.must_equal false
|
10
10
|
end
|
11
11
|
|
12
12
|
it "rejects ssn when it doesn't consist of numbers" do
|
13
|
-
subject = build_ssn_record({:ssn => 'aaabbcccc'},
|
13
|
+
subject = build_ssn_record({:ssn => 'aaabbcccc'}, true)
|
14
14
|
subject.valid?.must_equal false
|
15
15
|
end
|
16
16
|
|
17
17
|
it "rejects ssn when the first group of digits is 000" do
|
18
|
-
subject = build_ssn_record({:ssn => '000112222'},
|
18
|
+
subject = build_ssn_record({:ssn => '000112222'}, true)
|
19
19
|
subject.valid?.must_equal false
|
20
20
|
end
|
21
21
|
|
22
22
|
it "rejects ssn when the first group of digits is 666" do
|
23
|
-
subject = build_ssn_record({:ssn => '666112222'},
|
23
|
+
subject = build_ssn_record({:ssn => '666112222'}, true)
|
24
24
|
subject.valid?.must_equal false
|
25
25
|
end
|
26
26
|
|
27
27
|
(900..999).each do |first_group_num|
|
28
28
|
it "rejects ssn when the first group of digits is #{first_group_num}" do
|
29
|
-
subject = build_ssn_record({:ssn => "#{first_group_num}112222"},
|
29
|
+
subject = build_ssn_record({:ssn => "#{first_group_num}112222"}, true)
|
30
30
|
subject.valid?.must_equal false
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
34
|
it "reject ssn when the second group of digits is 00" do
|
35
|
-
subject = build_ssn_record({:ssn => "555002222"},
|
35
|
+
subject = build_ssn_record({:ssn => "555002222"}, true)
|
36
36
|
subject.valid?.must_equal false
|
37
37
|
end
|
38
38
|
|
39
39
|
it "reject ssn when the third group of digits is 0000" do
|
40
|
-
subject = build_ssn_record({:ssn => "555660000"},
|
40
|
+
subject = build_ssn_record({:ssn => "555660000"}, true)
|
41
41
|
subject.valid?.must_equal false
|
42
42
|
end
|
43
43
|
|
44
44
|
(987654320..987654329).each do |reserved_ssn|
|
45
45
|
it "rejects reserved ssn such as #{reserved_ssn}" do
|
46
|
-
subject = build_ssn_record({:ssn => "#{reserved_ssn}"},
|
46
|
+
subject = build_ssn_record({:ssn => "#{reserved_ssn}"}, true)
|
47
47
|
subject.valid?.must_equal false
|
48
48
|
end
|
49
49
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activevalidators
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Franck Verrot
|
@@ -36,7 +36,7 @@ cert_chain:
|
|
36
36
|
UeH0jxnbT6lYw622u74Z7Dd6iQfaOy1h+iJxnCQglf70rs9bS665Nr0QvvrbW8Hz
|
37
37
|
Vr/YT3S8RkdBsIdM
|
38
38
|
-----END CERTIFICATE-----
|
39
|
-
date: 2014-
|
39
|
+
date: 2014-10-22 00:00:00.000000000 Z
|
40
40
|
dependencies:
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
@@ -166,24 +166,27 @@ files:
|
|
166
166
|
- Rakefile
|
167
167
|
- activevalidators.gemspec
|
168
168
|
- certs/franckverrot.pem
|
169
|
-
-
|
170
|
-
- lib/active_model/validations/
|
171
|
-
- lib/active_model/validations/
|
172
|
-
- lib/active_model/validations/
|
173
|
-
- lib/active_model/validations/
|
174
|
-
- lib/active_model/validations/
|
175
|
-
- lib/active_model/validations/
|
176
|
-
- lib/active_model/validations/
|
177
|
-
- lib/active_model/validations/
|
178
|
-
- lib/active_model/validations/
|
179
|
-
- lib/active_model/validations/
|
180
|
-
- lib/active_model/validations/
|
181
|
-
- lib/active_model/validations/
|
182
|
-
- lib/active_model/validations/
|
183
|
-
- lib/active_model/validations/
|
184
|
-
- lib/active_model/validations/
|
185
|
-
- lib/active_model/validations/
|
186
|
-
- lib/active_model/validations/
|
169
|
+
- checksums/3.1.2.sha512
|
170
|
+
- lib/active_validators/active_model/validations/barcode_validator.rb
|
171
|
+
- lib/active_validators/active_model/validations/credit_card_validator.rb
|
172
|
+
- lib/active_validators/active_model/validations/date_validator.rb
|
173
|
+
- lib/active_validators/active_model/validations/email_validator.rb
|
174
|
+
- lib/active_validators/active_model/validations/hex_color_validator.rb
|
175
|
+
- lib/active_validators/active_model/validations/ip_validator.rb
|
176
|
+
- lib/active_validators/active_model/validations/nino_validator.rb
|
177
|
+
- lib/active_validators/active_model/validations/password_validator.rb
|
178
|
+
- lib/active_validators/active_model/validations/phone_validator.rb
|
179
|
+
- lib/active_validators/active_model/validations/postal_code_validator.rb
|
180
|
+
- lib/active_validators/active_model/validations/regexp_validator.rb
|
181
|
+
- lib/active_validators/active_model/validations/respond_to_validator.rb
|
182
|
+
- lib/active_validators/active_model/validations/shared/luhn_checker.rb
|
183
|
+
- lib/active_validators/active_model/validations/sin_validator.rb
|
184
|
+
- lib/active_validators/active_model/validations/siren_validator.rb
|
185
|
+
- lib/active_validators/active_model/validations/slug_validator.rb
|
186
|
+
- lib/active_validators/active_model/validations/ssn_validator.rb
|
187
|
+
- lib/active_validators/active_model/validations/tracking_number_validator.rb
|
188
|
+
- lib/active_validators/active_model/validations/twitter_validator.rb
|
189
|
+
- lib/active_validators/active_model/validations/url_validator.rb
|
187
190
|
- lib/active_validators/one_nine_shims/one_nine_string.rb
|
188
191
|
- lib/activevalidators.rb
|
189
192
|
- test/test_helper.rb
|
@@ -191,11 +194,13 @@ files:
|
|
191
194
|
- test/validations/credit_card_test.rb
|
192
195
|
- test/validations/date_test.rb
|
193
196
|
- test/validations/email_test.rb
|
197
|
+
- test/validations/hex_color_test.rb
|
194
198
|
- test/validations/ip_test.rb
|
195
199
|
- test/validations/nino_test.rb
|
196
200
|
- test/validations/password_test.rb
|
197
201
|
- test/validations/phone_test.rb
|
198
202
|
- test/validations/postal_code_test.rb
|
203
|
+
- test/validations/regexp_test.rb
|
199
204
|
- test/validations/respond_to_test.rb
|
200
205
|
- test/validations/sin_test.rb
|
201
206
|
- test/validations/siren_test.rb
|
@@ -234,11 +239,13 @@ test_files:
|
|
234
239
|
- test/validations/credit_card_test.rb
|
235
240
|
- test/validations/date_test.rb
|
236
241
|
- test/validations/email_test.rb
|
242
|
+
- test/validations/hex_color_test.rb
|
237
243
|
- test/validations/ip_test.rb
|
238
244
|
- test/validations/nino_test.rb
|
239
245
|
- test/validations/password_test.rb
|
240
246
|
- test/validations/phone_test.rb
|
241
247
|
- test/validations/postal_code_test.rb
|
248
|
+
- test/validations/regexp_test.rb
|
242
249
|
- test/validations/respond_to_test.rb
|
243
250
|
- test/validations/sin_test.rb
|
244
251
|
- test/validations/siren_test.rb
|
metadata.gz.sig
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
�l����M�����v?o��Y�)۱^aT��o� =�1p���;�- F��g$�+/�/F��L\�@
|