validates_phone_number 2.0.0 → 2.0.1

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.
@@ -20,6 +20,26 @@ By default, both 10 and 7 digit numbers are valid.
20
20
 
21
21
  ## Options
22
22
 
23
+ ### Seven Digits
24
+
25
+ I.e. 555-5555
26
+
27
+ ```ruby
28
+ class Person < ActiveRecord::Base
29
+ validates :mobile, :phone_number => {:seven_digits => true}
30
+ end
31
+
32
+ ```
33
+ ### Ten Digits
34
+
35
+ I.e. (555)-555-5555
36
+
37
+ ```ruby
38
+ class Person < ActiveRecord::Base
39
+ validates :mobile, :phone_number => {:ten_digits => true}
40
+ end
41
+ ```
42
+
23
43
  ### Message
24
44
 
25
45
  Set the message that's added to the errors collection by using the
@@ -50,22 +70,11 @@ class Person < ActiveRecord::Base
50
70
  end
51
71
  ```
52
72
 
53
- ### Seven Digits
54
-
55
- I.e. 555-5555
56
-
57
- ```ruby
58
- class Person < ActiveRecord::Base
59
- validates :mobile, :phone_number => {:seven_digits => true}
60
- end
61
-
62
- ```
63
- ### Ten Digits
73
+ ## Self-Promotion
64
74
 
65
- I.e. (555)-555-5555
75
+ Like validates\_phone\_number? Follow the project on
76
+ [GitHub](https://github.com/travisjeffery/validates_phone_number).
66
77
 
67
- ```ruby
68
- class Person < ActiveRecord::Base
69
- validates :mobile, :phone_number => {:ten_digits => true}
70
- end
71
- ```
78
+ You should follow [travisjeffery](http://travisjeffery.com) on
79
+ [GitHub](https://github.com/travisjeffery) and
80
+ [Twitter](http://twitter.com/travisjeffery) too. Thanks!
@@ -9,6 +9,7 @@ module ValidatesPhoneNumber
9
9
  @default = options.keys.size == 1
10
10
  @type = options.delete(:type) || :string
11
11
  @allow_nil = options.delete(:allow_nil)
12
+ @allow_blank = options.delete(:allow_blank)
12
13
  @format = options.delete(:format)
13
14
  @message = options.delete(:message)
14
15
  @ten_digits = options.delete(:ten_digits)
@@ -19,6 +20,7 @@ module ValidatesPhoneNumber
19
20
 
20
21
  def validate_each record, attr_name, value
21
22
  return if @allow_nil && value.nil?
23
+ return if @allow_blank && value.blank?
22
24
  return if value =~ @format
23
25
  return if value =~ TEN_DIGITS if @ten_digits
24
26
  return if value =~ SEVEN_DIGITS if @seven_digits
@@ -1,3 +1,3 @@
1
1
  module ValidatesPhoneNumber
2
- VERSION = "2.0.0"
2
+ VERSION = "2.0.1"
3
3
  end
@@ -109,5 +109,15 @@ class TestValidator < MiniTest::Unit::TestCase
109
109
  @person.phone_number = nil
110
110
  assert @person.valid?
111
111
  end
112
+
113
+ def def test_allow_blank_validates_blank_phone_number
114
+ Person.validates :phone_number, :phone_number => {:allow_blank => true}
115
+
116
+ @person.phone_number = nil
117
+ assert @person.valid?
118
+
119
+ @person.phone_number = ""
120
+ assert @person.valid?
121
+ end
112
122
  end
113
123
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: validates_phone_number
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,30 +9,40 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-19 00:00:00.000000000Z
12
+ date: 2012-11-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: minitest
16
- requirement: &70269310105660 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - =
19
+ - - '='
20
20
  - !ruby/object:Gem::Version
21
21
  version: 2.10.0
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70269310105660
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - '='
28
+ - !ruby/object:Gem::Version
29
+ version: 2.10.0
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: rails
27
- requirement: &70269310105080 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
- - - =
35
+ - - '='
31
36
  - !ruby/object:Gem::Version
32
37
  version: 3.1.0
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *70269310105080
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - '='
44
+ - !ruby/object:Gem::Version
45
+ version: 3.1.0
36
46
  description: Adds validation methods to ActiveModel for validating phone numbers.
37
47
  email:
38
48
  - t@travisjeffery.com
@@ -65,21 +75,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
65
75
  - - ! '>='
66
76
  - !ruby/object:Gem::Version
67
77
  version: '0'
68
- segments:
69
- - 0
70
- hash: 3377125952189612186
71
78
  required_rubygems_version: !ruby/object:Gem::Requirement
72
79
  none: false
73
80
  requirements:
74
81
  - - ! '>='
75
82
  - !ruby/object:Gem::Version
76
83
  version: '0'
77
- segments:
78
- - 0
79
- hash: 3377125952189612186
80
84
  requirements: []
81
85
  rubyforge_project: validates_phone_number
82
- rubygems_version: 1.8.10
86
+ rubygems_version: 1.8.23
83
87
  signing_key:
84
88
  specification_version: 3
85
89
  summary: Adds validation methods to ActiveModel for validating phone numbers.