mask_validator 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4ec0a58857f3b750976639d4ccda2754bcf206b4
4
+ data.tar.gz: 846416f9ca4910ec2711f25453b484b8a4325e2e
5
+ SHA512:
6
+ metadata.gz: 19e048a911fef5c795cc095cf5d2671b765fcd2dec7a68042b68951b7b952405d2987ca7cf47d31c9eeddedad88bfacd57ab7679a389e98e364a5d00fc8011a4
7
+ data.tar.gz: 7dc0f0d78e199420c5e75bf5833d0697be55f22ff7666c9827392e85e6cb33b15e64ad6568f4601e4f1a8ba36e73cdb37384487f8f10666fc52e52185e4eb011
data/.gitignore CHANGED
@@ -1,5 +1,4 @@
1
1
  *.gem
2
2
  .bundle
3
- Gemfile.lock
4
3
  pkg/*
5
4
  .rvmrc
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9
4
+ - 2.0
5
+ - 2.1
data/Gemfile CHANGED
@@ -4,5 +4,6 @@ gemspec
4
4
 
5
5
  group :test do
6
6
  gem "rspec"
7
+ gem "rake"
7
8
  gem "sqlite3"
8
9
  end
data/Gemfile.lock ADDED
@@ -0,0 +1,55 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ mask_validator (0.2.1)
5
+ activemodel (>= 3.0)
6
+ activerecord (>= 3.0)
7
+
8
+ GEM
9
+ remote: http://rubygems.org/
10
+ specs:
11
+ activemodel (4.2.0)
12
+ activesupport (= 4.2.0)
13
+ builder (~> 3.1)
14
+ activerecord (4.2.0)
15
+ activemodel (= 4.2.0)
16
+ activesupport (= 4.2.0)
17
+ arel (~> 6.0)
18
+ activesupport (4.2.0)
19
+ i18n (~> 0.7)
20
+ json (~> 1.7, >= 1.7.7)
21
+ minitest (~> 5.1)
22
+ thread_safe (~> 0.3, >= 0.3.4)
23
+ tzinfo (~> 1.1)
24
+ arel (6.0.0)
25
+ builder (3.2.2)
26
+ diff-lcs (1.2.5)
27
+ i18n (0.7.0)
28
+ json (1.8.1)
29
+ minitest (5.5.0)
30
+ rake (10.4.2)
31
+ rspec (3.1.0)
32
+ rspec-core (~> 3.1.0)
33
+ rspec-expectations (~> 3.1.0)
34
+ rspec-mocks (~> 3.1.0)
35
+ rspec-core (3.1.7)
36
+ rspec-support (~> 3.1.0)
37
+ rspec-expectations (3.1.2)
38
+ diff-lcs (>= 1.2.0, < 2.0)
39
+ rspec-support (~> 3.1.0)
40
+ rspec-mocks (3.1.3)
41
+ rspec-support (~> 3.1.0)
42
+ rspec-support (3.1.2)
43
+ sqlite3 (1.3.10)
44
+ thread_safe (0.3.4)
45
+ tzinfo (1.2.2)
46
+ thread_safe (~> 0.1)
47
+
48
+ PLATFORMS
49
+ ruby
50
+
51
+ DEPENDENCIES
52
+ mask_validator!
53
+ rake
54
+ rspec
55
+ sqlite3
data/README.markdown CHANGED
@@ -1,33 +1,45 @@
1
- # MaskValidator
1
+ # Mask Validator
2
2
 
3
- This gem was inspired in the Sobrinho's gems to validate simple things inside of ActiveModel.
3
+ [![Gem Version](https://badge.fury.io/rb/mask_validator.png)](http://badge.fury.io/rb/mask_validator)
4
4
 
5
- Use mask in inputs and validate in the models.
5
+ This gem was inspired in the Sobrinho's gems to validate simple things inside of ActiveModel.
6
6
 
7
- The gem works getting the value before type cast and comparing with a regexp from the mask pattern.
7
+ The gem works getting the value before type cast and comparing with a regular expression from the parse of mask pattern.
8
8
 
9
9
  ## Installation
10
10
 
11
- Use the github version until a really stable version be released.
11
+ Put `gem "mask_validator", "0.2.1"` in the Gemfile
12
12
 
13
- `gem "mask_validator", :git => "git://github.com/MarceloCajueiro/mask_validator.git"`
13
+ ## Usage
14
14
 
15
- ## Usage:
15
+ ```ruby
16
+ validates :phone, :mask => "(99) 9999-9999"
16
17
 
17
- `validates :phone, mask: "(99) 9999-9999"`
18
+ validates :acronym, :mask => "***"
18
19
 
19
- `validates :acronym, mask: "***"`
20
+ validates :acronym, :mask => :custom_method
20
21
 
21
- `validates :acronym, mask: :custom_method`
22
+ validates :acronym, :mask => Proc.new { |o| o.custom_method }
23
+ ```
22
24
 
23
- `validates :acronym, mask: Proc.new{|o| o.custom_method}`
24
-
25
- * a - Represents an alpha character (A-Z,a-z)
25
+ * a - Represents an alpha character (A-Z, a-z)
26
26
  * 9 - Represents a numeric character (0-9)
27
- * * - Represents an alphanumeric character (A-Z,a-z,0-9)
27
+ * * - Represents an alphanumeric character (A-Z, a-z, 0-9)
28
28
 
29
29
  For more information about masks in the form inputs check the jquery plugin [Masked input](http://digitalbush.com/projects/masked-input-plugin/)
30
30
 
31
+ ## Application example
32
+
33
+ Use a little trick to call the masked input (jquery plugin) only defining the validation in the model.
34
+
35
+ In other words, defining:
36
+
37
+ ```ruby
38
+ validates :phone, :mask => "(99) 9999-9999"
39
+ ```
40
+
41
+ It is the only necessary thing to apply the masked input.
42
+
31
43
  ## License
32
44
 
33
45
  Copyright © 2011 Marcelo Cajueiro, released under the MIT license
data/Rakefile CHANGED
@@ -1,2 +1,9 @@
1
1
  require "bundler"
2
2
  Bundler::GemHelper.install_tasks
3
+
4
+ begin
5
+ require 'rspec/core/rake_task'
6
+ RSpec::Core::RakeTask.new(:spec)
7
+ task :default => :spec
8
+ rescue LoadError
9
+ end
data/changelog.md ADDED
@@ -0,0 +1,7 @@
1
+ # Changelog
2
+
3
+ ## 0.2.2
4
+
5
+ * Sets the default validation message as :invalid. (#6)
6
+ * Update RSpec
7
+ * Add Travis CI
@@ -20,7 +20,7 @@ class MaskValidator < ActiveModel::EachValidator
20
20
  end
21
21
 
22
22
  def validate_each(record, attribute, value)
23
- value = record.send("#{attribute.to_s}_before_type_cast")
23
+ value = normalize_value(record, attribute, value)
24
24
 
25
25
  return if (@allow_nil && value.nil?) || (@allow_blank && value.blank?)
26
26
 
@@ -65,6 +65,16 @@ class MaskValidator < ActiveModel::EachValidator
65
65
  private
66
66
 
67
67
  def message
68
- options[:message]
68
+ options[:message] || :invalid
69
+ end
70
+
71
+ def normalize_value(record, attribute, value)
72
+ attribute_before_type_cast = "#{attribute.to_s}_before_type_cast"
73
+
74
+ if record.respond_to?(attribute_before_type_cast)
75
+ value = record.send(attribute_before_type_cast)
76
+ end
77
+
78
+ value
69
79
  end
70
80
  end
@@ -3,7 +3,7 @@ $:.push File.expand_path("../lib", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "mask_validator"
6
- s.version = "0.2.1"
6
+ s.version = "0.2.2"
7
7
  s.platform = Gem::Platform::RUBY
8
8
  s.authors = ["Marcelo Cajueiro"]
9
9
  s.email = ["marcelocajueiro@gmail.com"]
@@ -1,187 +1,200 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe MaskValidator do
4
- subject do
5
- Person.new
6
- end
4
+ context 'When class is not an ActiveRecord model' do
5
+ subject do
6
+ NoActiveRecordPerson.new
7
+ end
7
8
 
8
- # validates :phone, :mask => "(99) 9999-9999", :allow_blank => true
9
- context "mask validation to phone" do
10
9
  it "should be valid with a phone in according of the mask" do
11
10
  subject.phone = '(48) 9874-4569'
12
- subject.should have_valid_value_to(:phone)
13
- end
14
-
15
- it "should not be valid with a phone with a wrong pattern" do
16
- subject.phone = '4852458787'
17
- subject.should_not have_valid_value_to(:phone)
18
-
19
- subject.phone = '48 9865 4879'
20
- subject.should_not have_valid_value_to(:phone)
21
-
22
- subject.phone = '(48) 9874-45169'
23
- subject.should_not have_valid_value_to(:phone)
24
-
25
- subject.phone = '(48)98956698'
26
- subject.should_not have_valid_value_to(:phone)
27
- end
28
- end
29
-
30
- # validates :acronym, :mask => "***", :allow_nil => true
31
- context "mask validation to acronym" do
32
- it "should be valid with a acronym in according of the mask" do
33
- subject.acronym = '1gd'
34
- subject.should have_valid_value_to(:acronym)
35
-
36
- subject.acronym = '666'
37
- subject.should have_valid_value_to(:acronym)
38
-
39
- subject.acronym = 'zzz'
40
- subject.should have_valid_value_to(:acronym)
41
- end
42
-
43
- it "should not be valid with a acronym with a wrong pattern" do
44
- subject.acronym = '1qw1'
45
- subject.should_not have_valid_value_to(:acronym)
11
+ expect(subject).to have_valid_value_to(:phone)
46
12
  end
47
13
  end
48
14
 
49
- # validates :alphanumeric, :mask => "aaa999"
50
- context "mask validation to alphanumeric" do
51
- it "should be valid with a alphanumeric in according of the mask" do
52
- subject.alphanumeric = 'awe987'
53
- subject.should have_valid_value_to(:alphanumeric)
15
+ context 'When class is an ActiveRecord model' do
16
+ subject do
17
+ Person.new
54
18
  end
55
19
 
56
- it "should not be valid with a alphanumeric with a wrong pattern" do
57
- subject.alphanumeric = '999999'
58
- subject.should_not have_valid_value_to(:alphanumeric)
20
+ # validates :phone, :mask => "(99) 9999-9999", :allow_blank => true
21
+ context "mask validation to phone" do
22
+ it "should be valid with a phone in according of the mask" do
23
+ subject.phone = '(48) 9874-4569'
24
+ expect(subject).to have_valid_value_to(:phone)
25
+ end
59
26
 
60
- subject.alphanumeric = 'QQQQQQ'
61
- subject.should_not have_valid_value_to(:alphanumeric)
27
+ it "should not be valid with a phone with a wrong pattern" do
28
+ subject.phone = '4852458787'
29
+ expect(subject).to_not have_valid_value_to(:phone)
62
30
 
63
- subject.alphanumeric = '666aaaa'
64
- subject.should_not have_valid_value_to(:alphanumeric)
31
+ subject.phone = '48 9865 4879'
32
+ expect(subject).to_not have_valid_value_to(:phone)
65
33
 
66
- subject.alphanumeric = '666AAA'
67
- subject.should_not have_valid_value_to(:alphanumeric)
68
- end
69
- end
34
+ subject.phone = '(48) 9874-45169'
35
+ expect(subject).to_not have_valid_value_to(:phone)
70
36
 
71
- context "when the attributes type is not a string" do
72
- it "should not be valid with a wrong date format" do
73
- subject.birth_date = "15-12-2009"
74
- subject.should_not have_valid_value_to(:birth_date)
37
+ subject.phone = '(48)98956698'
38
+ expect(subject).to_not have_valid_value_to(:phone)
39
+ end
75
40
  end
76
41
 
77
- it "should not be valid with a wrong birth year" do
78
- subject.birth_year = 20110
79
- subject.should_not have_valid_value_to(:birth_year)
80
- end
42
+ # validates :acronym, :mask => "***", :allow_nil => true
43
+ context "mask validation to acronym" do
44
+ it "should be valid with a acronym in according of the mask" do
45
+ subject.acronym = '1gd'
46
+ expect(subject).to have_valid_value_to(:acronym)
81
47
 
82
- it "should not be valid with a wrong birth time" do
83
- subject.birth_time = "333:20"
84
- subject.should_not have_valid_value_to(:birth_time)
85
- end
48
+ subject.acronym = '666'
49
+ expect(subject).to have_valid_value_to(:acronym)
86
50
 
87
- it "should not be valid with a wrong body fat" do
88
- subject.body_fat = 333.00
89
- subject.should_not have_valid_value_to(:body_fat)
90
- end
91
- end
51
+ subject.acronym = 'zzz'
52
+ expect(subject).to have_valid_value_to(:acronym)
53
+ end
92
54
 
93
- # validates :custom, :mask => :custom_mask, :allow_blank => false
94
- context "mask validation to custom field using custom_mask method" do
95
- it "should be valid with an correct custom value" do
96
- subject.stub!(:custom_mask => "99999-999")
97
- subject.custom = '32632-567'
98
- subject.should have_valid_value_to(:custom)
55
+ it "should not be valid with a acronym with a wrong pattern" do
56
+ subject.acronym = '1qw1'
57
+ expect(subject).to_not have_valid_value_to(:acronym)
58
+ end
99
59
  end
100
60
 
101
- it "should not be valid with an empty custom value" do
102
- subject.stub!(:custom_mask => "9.9.9")
103
- subject.custom = ''
104
- subject.should_not have_valid_value_to(:custom)
105
- end
106
- end
61
+ # validates :alphanumeric, :mask => "aaa999"
62
+ context "mask validation to alphanumeric" do
63
+ it "should be valid with a alphanumeric in according of the mask" do
64
+ subject.alphanumeric = 'awe987'
65
+ expect(subject).to have_valid_value_to(:alphanumeric)
66
+ end
107
67
 
108
- # validates :identification, :mask => Proc.new{|o| o.proc_mask}, :allow_blank => false
109
- context "mask validation to proc field using a Proc" do
110
- it "should be valid with an correct value" do
111
- subject.stub!(:proc_mask => "999.9.99")
112
- subject.identification = '326.3.67'
113
- subject.should have_valid_value_to(:identification)
114
- end
68
+ it "should not be valid with a alphanumeric with a wrong pattern" do
69
+ subject.alphanumeric = '999999'
70
+ expect(subject).to_not have_valid_value_to(:alphanumeric)
71
+
72
+ subject.alphanumeric = 'QQQQQQ'
73
+ expect(subject).to_not have_valid_value_to(:alphanumeric)
115
74
 
116
- it "should not be valid with an empty value" do
117
- subject.stub!(:prock_mask => "9.9.9")
118
- subject.identification = ''
119
- subject.should_not have_valid_value_to(:identification)
120
- end
121
- end
122
-
123
- # validates :phone, :mask => "99999-999", :allow_blank => true
124
- context "mask validation to phone with explicit ':allow_blank => true'" do
125
- it "should not be valid with an nil phone" do
126
- subject.phone = nil
127
- subject.should have_valid_value_to(:phone)
128
- end
129
-
130
- it "should be valid with an empty phone" do
131
- subject.phone = ''
132
- subject.should have_valid_value_to(:phone)
133
- end
134
- end
135
-
136
- # validates :acronym, :mask => "***", :allow_nil => true
137
- context "mask validation to acronym with explicit ':allow_nil => true'" do
138
- it "should be valid with an nil acronym" do
139
- subject.acronym = nil
140
- subject.should have_valid_value_to(:acronym)
141
- end
142
-
143
- it "should be valid with an empty acronym" do
144
- subject.acronym = ''
145
- subject.should_not have_valid_value_to(:acronym)
146
- end
147
- end
148
-
149
- # validates :fax, :mask => "(99) 9999-9999", :allow_nil => false
150
- context "mask validation to fax with explicit ':allow_nil => false'" do
151
- it "should not be valid with an nil fax" do
152
- subject.fax = nil
153
- subject.should_not have_valid_value_to(:fax)
154
- end
155
-
156
- it "should be valid with an empty fax" do
157
- subject.fax = ''
158
- subject.should_not have_valid_value_to(:fax)
159
- end
160
- end
161
-
162
- # validates :zip_code, :mask => "99999-999", :allow_blank => false
163
- context "mask validation to zip_code with explicit ':allow_blank => false'" do
164
- it "should not be valid with an nil zip_code" do
165
- subject.zip_code = nil
166
- subject.should_not have_valid_value_to(:zip_code)
167
- end
168
-
169
- it "should be valid with an empty zip_code" do
170
- subject.zip_code = ''
171
- subject.should_not have_valid_value_to(:zip_code)
172
- end
173
- end
174
-
175
- # validates :birth_date, :mask => '99/99/9999'
176
- context "mask validation to birth_date with implicit ':allow_blank => false'" do
177
- it "should not be valid with an nil birth_date" do
178
- subject.birth_date = nil
179
- subject.should_not have_valid_value_to(:birth_date)
180
- end
75
+ subject.alphanumeric = '666aaaa'
76
+ expect(subject).to_not have_valid_value_to(:alphanumeric)
77
+
78
+ subject.alphanumeric = '666AAA'
79
+ expect(subject).to_not have_valid_value_to(:alphanumeric)
80
+ end
81
+ end
82
+
83
+ context "when the attributes type is not a string" do
84
+ it "should not be valid with a wrong date format" do
85
+ subject.birth_date = "15-12-2009"
86
+ expect(subject).to_not have_valid_value_to(:birth_date)
87
+ end
181
88
 
182
- it "should be valid with an empty birth_date" do
183
- subject.birth_date = ''
184
- subject.should_not have_valid_value_to(:birth_date)
89
+ it "should not be valid with a wrong birth year" do
90
+ subject.birth_year = 20110
91
+ expect(subject).to_not have_valid_value_to(:birth_year)
92
+ end
93
+
94
+ it "should not be valid with a wrong birth time" do
95
+ subject.birth_time = "333:20"
96
+ expect(subject).to_not have_valid_value_to(:birth_time)
97
+ end
98
+
99
+ it "should not be valid with a wrong body fat" do
100
+ subject.body_fat = 333.00
101
+ expect(subject).to_not have_valid_value_to(:body_fat)
102
+ end
103
+ end
104
+
105
+ # validates :custom, :mask => :custom_mask, :allow_blank => false
106
+ context "mask validation to custom field using custom_mask method" do
107
+ it "should be valid with an correct custom value" do
108
+ allow(subject).to receive(:custom_mask).and_return("99999-999")
109
+ subject.custom = '32632-567'
110
+ expect(subject).to have_valid_value_to(:custom)
111
+ end
112
+
113
+ it "should not be valid with an empty custom value" do
114
+ allow(subject).to receive(:custom_mask).and_return("9.9.9")
115
+ subject.custom = ''
116
+ expect(subject).to_not have_valid_value_to(:custom)
117
+ end
118
+ end
119
+
120
+ # validates :identification, :mask => Proc.new{|o| o.proc_mask}, :allow_blank => false
121
+ context "mask validation to proc field using a Proc" do
122
+ it "should be valid with an correct value" do
123
+ allow(subject).to receive(:proc_mask).and_return("999.9.99")
124
+ subject.identification = '326.3.67'
125
+ expect(subject).to have_valid_value_to(:identification)
126
+ end
127
+
128
+ it "should not be valid with an empty value" do
129
+ allow(subject).to receive(:proc_mask).and_return("9.9.9")
130
+ subject.identification = ''
131
+ expect(subject).to_not have_valid_value_to(:identification)
132
+ end
133
+ end
134
+
135
+ # validates :phone, :mask => "99999-999", :allow_blank => true
136
+ context "mask validation to phone with explicit ':allow_blank => true'" do
137
+ it "should not be valid with an nil phone" do
138
+ subject.phone = nil
139
+ expect(subject).to have_valid_value_to(:phone)
140
+ end
141
+
142
+ it "should be valid with an empty phone" do
143
+ subject.phone = ''
144
+ expect(subject).to have_valid_value_to(:phone)
145
+ end
146
+ end
147
+
148
+ # validates :acronym, :mask => "***", :allow_nil => true
149
+ context "mask validation to acronym with explicit ':allow_nil => true'" do
150
+ it "should be valid with an nil acronym" do
151
+ subject.acronym = nil
152
+ expect(subject).to have_valid_value_to(:acronym)
153
+ end
154
+
155
+ it "should be valid with an empty acronym" do
156
+ subject.acronym = ''
157
+ expect(subject).to_not have_valid_value_to(:acronym)
158
+ end
159
+ end
160
+
161
+ # validates :fax, :mask => "(99) 9999-9999", :allow_nil => false
162
+ context "mask validation to fax with explicit ':allow_nil => false'" do
163
+ it "should not be valid with an nil fax" do
164
+ subject.fax = nil
165
+ expect(subject).to_not have_valid_value_to(:fax)
166
+ end
167
+
168
+ it "should be valid with an empty fax" do
169
+ subject.fax = ''
170
+ expect(subject).to_not have_valid_value_to(:fax)
171
+ end
172
+ end
173
+
174
+ # validates :zip_code, :mask => "99999-999", :allow_blank => false
175
+ context "mask validation to zip_code with explicit ':allow_blank => false'" do
176
+ it "should not be valid with an nil zip_code" do
177
+ subject.zip_code = nil
178
+ expect(subject).to_not have_valid_value_to(:zip_code)
179
+ end
180
+
181
+ it "should be valid with an empty zip_code" do
182
+ subject.zip_code = ''
183
+ expect(subject).to_not have_valid_value_to(:zip_code)
184
+ end
185
+ end
186
+
187
+ # validates :birth_date, :mask => '99/99/9999'
188
+ context "mask validation to birth_date with implicit ':allow_blank => false'" do
189
+ it "should not be valid with an nil birth_date" do
190
+ subject.birth_date = nil
191
+ expect(subject).to_not have_valid_value_to(:birth_date)
192
+ end
193
+
194
+ it "should be valid with an empty birth_date" do
195
+ subject.birth_date = ''
196
+ expect(subject).to_not have_valid_value_to(:birth_date)
197
+ end
185
198
  end
186
199
  end
187
200
  end
data/spec/spec_helper.rb CHANGED
@@ -5,6 +5,7 @@ require 'mask_validator'
5
5
 
6
6
  require "support/db/schema"
7
7
  require "support/models/person"
8
+ require "support/models/no_active_record_person"
8
9
 
9
10
  RSpec::Matchers.define :have_valid_value_to do |attribute|
10
11
  match do |actual|
@@ -13,11 +14,11 @@ RSpec::Matchers.define :have_valid_value_to do |attribute|
13
14
  !actual.errors[attribute].include?("is invalid")
14
15
  end
15
16
 
16
- failure_message_for_should do |actual|
17
+ failure_message do |actual|
17
18
  "expected that the #{attribute} attribute would be valid"
18
19
  end
19
20
 
20
- failure_message_for_should_not do |actual|
21
+ failure_message_when_negated do |actual|
21
22
  "expected that the #{attribute} attribute would be invalid"
22
23
  end
23
24
  end
@@ -0,0 +1,7 @@
1
+ class NoActiveRecordPerson
2
+ include ActiveModel::Validations
3
+
4
+ attr_accessor :phone
5
+
6
+ validates :phone, :mask => "(99) 9999-9999", :allow_blank => true
7
+ end
metadata CHANGED
@@ -1,49 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mask_validator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
5
- prerelease:
4
+ version: 0.2.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Marcelo Cajueiro
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-04-19 00:00:00.000000000 Z
11
+ date: 2015-01-08 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activemodel
16
- requirement: &70113695766940 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '3.0'
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *70113695766940
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '3.0'
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: activerecord
27
- requirement: &70113695766380 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - ! '>='
31
+ - - ">="
31
32
  - !ruby/object:Gem::Version
32
33
  version: '3.0'
33
34
  type: :runtime
34
35
  prerelease: false
35
- version_requirements: *70113695766380
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '3.0'
36
41
  - !ruby/object:Gem::Dependency
37
42
  name: rake
38
- requirement: &70113695765640 !ruby/object:Gem::Requirement
39
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
40
44
  requirements:
41
- - - ! '>='
45
+ - - ">="
42
46
  - !ruby/object:Gem::Version
43
47
  version: 0.8.7
44
48
  type: :development
45
49
  prerelease: false
46
- version_requirements: *70113695765640
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 0.8.7
47
55
  description:
48
56
  email:
49
57
  - marcelocajueiro@gmail.com
@@ -51,47 +59,50 @@ executables: []
51
59
  extensions: []
52
60
  extra_rdoc_files: []
53
61
  files:
54
- - .gitignore
55
- - .rspec
62
+ - ".gitignore"
63
+ - ".rspec"
64
+ - ".travis.yml"
56
65
  - Gemfile
66
+ - Gemfile.lock
57
67
  - MIT-LICENSE
58
68
  - README.markdown
59
69
  - Rakefile
70
+ - changelog.md
60
71
  - lib/mask_validator.rb
61
72
  - mask_validator.gemspec
62
73
  - spec/mask_validator_spec.rb
63
74
  - spec/models/person.rb
64
75
  - spec/spec_helper.rb
65
76
  - spec/support/db/schema.rb
77
+ - spec/support/models/no_active_record_person.rb
66
78
  - spec/support/models/person.rb
67
79
  homepage: https://github.com/marcelocajueiro/mask_validator
68
80
  licenses: []
81
+ metadata: {}
69
82
  post_install_message:
70
83
  rdoc_options: []
71
84
  require_paths:
72
85
  - lib
73
86
  required_ruby_version: !ruby/object:Gem::Requirement
74
- none: false
75
87
  requirements:
76
- - - ! '>='
88
+ - - ">="
77
89
  - !ruby/object:Gem::Version
78
90
  version: '0'
79
91
  required_rubygems_version: !ruby/object:Gem::Requirement
80
- none: false
81
92
  requirements:
82
- - - ! '>='
93
+ - - ">="
83
94
  - !ruby/object:Gem::Version
84
95
  version: '0'
85
96
  requirements: []
86
97
  rubyforge_project: mask_validator
87
- rubygems_version: 1.8.17
98
+ rubygems_version: 2.4.4
88
99
  signing_key:
89
- specification_version: 3
100
+ specification_version: 4
90
101
  summary: Input Mask validation for ActiveModel
91
102
  test_files:
92
103
  - spec/mask_validator_spec.rb
93
104
  - spec/models/person.rb
94
105
  - spec/spec_helper.rb
95
106
  - spec/support/db/schema.rb
107
+ - spec/support/models/no_active_record_person.rb
96
108
  - spec/support/models/person.rb
97
- has_rdoc: