phone_number_validator 0.0.0
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 +7 -0
- data/.gitignore +25 -0
- data/Gemfile +6 -0
- data/LICENSE +21 -0
- data/README.rdoc +94 -0
- data/Rakefile +27 -0
- data/bin/phone_number_validator +13 -0
- data/doc/PhoneNumberValidator.html +164 -0
- data/doc/PhoneNumberValidator/Validator.html +216 -0
- data/doc/PhoneNumberValidatorTest.html +190 -0
- data/doc/README_rdoc.html +206 -0
- data/doc/created.rid +6 -0
- data/doc/css/fonts.css +167 -0
- data/doc/css/rdoc.css +590 -0
- data/doc/fonts/Lato-Light.ttf +0 -0
- data/doc/fonts/Lato-LightItalic.ttf +0 -0
- data/doc/fonts/Lato-Regular.ttf +0 -0
- data/doc/fonts/Lato-RegularItalic.ttf +0 -0
- data/doc/fonts/SourceCodePro-Bold.ttf +0 -0
- data/doc/fonts/SourceCodePro-Regular.ttf +0 -0
- data/doc/images/add.png +0 -0
- data/doc/images/arrow_up.png +0 -0
- data/doc/images/brick.png +0 -0
- data/doc/images/brick_link.png +0 -0
- data/doc/images/bug.png +0 -0
- data/doc/images/bullet_black.png +0 -0
- data/doc/images/bullet_toggle_minus.png +0 -0
- data/doc/images/bullet_toggle_plus.png +0 -0
- data/doc/images/date.png +0 -0
- data/doc/images/delete.png +0 -0
- data/doc/images/find.png +0 -0
- data/doc/images/loadingAnimation.gif +0 -0
- data/doc/images/macFFBgHack.png +0 -0
- data/doc/images/package.png +0 -0
- data/doc/images/page_green.png +0 -0
- data/doc/images/page_white_text.png +0 -0
- data/doc/images/page_white_width.png +0 -0
- data/doc/images/plugin.png +0 -0
- data/doc/images/ruby.png +0 -0
- data/doc/images/tag_blue.png +0 -0
- data/doc/images/tag_green.png +0 -0
- data/doc/images/transparent.png +0 -0
- data/doc/images/wrench.png +0 -0
- data/doc/images/wrench_orange.png +0 -0
- data/doc/images/zoom.png +0 -0
- data/doc/index.html +193 -0
- data/doc/js/darkfish.js +161 -0
- data/doc/js/jquery.js +4 -0
- data/doc/js/navigation.js +142 -0
- data/doc/js/navigation.js.gz +0 -0
- data/doc/js/search.js +109 -0
- data/doc/js/search_index.js +1 -0
- data/doc/js/search_index.js.gz +0 -0
- data/doc/js/searcher.js +228 -0
- data/doc/js/searcher.js.gz +0 -0
- data/doc/table_of_contents.html +105 -0
- data/lib/phone_number_validator.rb +19 -0
- data/lib/phone_number_validator/validator.rb +15 -0
- data/phone_number_validator.gemspec +27 -0
- data/test/test_phone_number_validator.rb +13 -0
- metadata +150 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
class PhoneNumberValidator
|
2
|
+
class << self
|
3
|
+
# Validate any United States phone mumber!
|
4
|
+
#
|
5
|
+
# Example:
|
6
|
+
# >> PhoneNumberValidator.validate_phone_number('+1 (949) 355-6244 ext. 198842')
|
7
|
+
# => '+1 (949) 355-6244 ext. 198842' is a valid phone number.'
|
8
|
+
# => true
|
9
|
+
#
|
10
|
+
# Arguments:
|
11
|
+
# phone_no: (String)
|
12
|
+
def validate_phone_number(phone_number)
|
13
|
+
validator = Validator.new(phone_number)
|
14
|
+
validator.validate_phone_number
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
require 'phone_number_validator/validator'
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class PhoneNumberValidator::Validator
|
2
|
+
PHONE_NUMBER_REGEX = /^(?:(?:[2-9]11)|(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:\x20+|#|x\.?|ext\.?|extension)\s*(\d+))?)$/i
|
3
|
+
def initialize(phone_number = '+1 (949) 355-6244 ext. 198842')
|
4
|
+
@phone_number = phone_number
|
5
|
+
end
|
6
|
+
def validate_phone_number
|
7
|
+
if (@phone_number.match(PHONE_NUMBER_REGEX))
|
8
|
+
puts "'%s' is a valid phone number." % @phone_number
|
9
|
+
return true
|
10
|
+
else
|
11
|
+
puts "'%s' is not a valid phone number." % @phone_number
|
12
|
+
return false
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Gem::Specification.new do |spec|
|
2
|
+
spec.name = 'phone_number_validator'
|
3
|
+
spec.version = '0.0.0'
|
4
|
+
spec.date = Time.now.strftime("%Y-%m-%d")
|
5
|
+
spec.summary = 'Validate any US phone number!'
|
6
|
+
spec.description = 'A United States phone number validator.'
|
7
|
+
spec.authors = ['bag33188', 'Broccolini']
|
8
|
+
spec.email = 'bglatman@outlook.com'
|
9
|
+
spec.files = ['phone_number_validator.gemspec', 'Gemfile', 'Rakefile', 'LICENSE', 'README.rdoc']
|
10
|
+
spec.files += Dir['lib/**/*'] + Dir['bin/*'] + Dir['doc/**/*']
|
11
|
+
spec.files = `git ls-files -z`.split("\x0")
|
12
|
+
# spec.require_paths = ['lib', 'lib/phone_number_validator', 'doc', 'test', 'bin', '.']
|
13
|
+
spec.test_files = ['test/test_phone_number_validator.rb']
|
14
|
+
spec.executables << 'phone_number_validator'
|
15
|
+
spec.homepage = 'http://rubygems.org/gems/phone_number_validator'
|
16
|
+
spec.license = 'MIT'
|
17
|
+
spec.bindir = 'bin'
|
18
|
+
spec.extra_rdoc_files = ['README.rdoc']
|
19
|
+
spec.platform = Gem::Platform::RUBY
|
20
|
+
spec.required_ruby_version = '>= 2.0.0'
|
21
|
+
spec.required_rubygems_version = '>= 2.6.0'
|
22
|
+
spec.metadata = {'GitLab Repository URL' => 'https://gitlab.com/bag3318/phone_number_validator', 'Repository Host' => 'GitLab (https://gitlab.com)'}
|
23
|
+
spec.post_install_message = "\r\nThanks for installing my phone_number_validator gem!\r\nI hope you will enjoy using it! :)\r\n\r\n"
|
24
|
+
spec.requirements << 'A Windows, Mac, or Linux computer with Ruby and RubyGems'
|
25
|
+
spec.add_runtime_dependency 'bundler', '~> 1.11', '>= 1.11.2'
|
26
|
+
spec.add_development_dependency 'bundler', '~> 1.11', '>= 1.11.2'
|
27
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'phone_number_validator'
|
3
|
+
|
4
|
+
class PhoneNumberValidatorTest < Test::Unit::TestCase
|
5
|
+
def test_valid_phone_number
|
6
|
+
assert_equal true,
|
7
|
+
PhoneNumberValidator.validate_phone_number('+1 (949) 355-6244 ext. 198842')
|
8
|
+
end
|
9
|
+
def test_invalid_phone_number
|
10
|
+
assert_equal false,
|
11
|
+
PhoneNumberValidator.validate_phone_number('94643823637337')
|
12
|
+
end
|
13
|
+
end
|
metadata
ADDED
@@ -0,0 +1,150 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: phone_number_validator
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- bag33188
|
8
|
+
- Broccolini
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2018-11-04 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: bundler
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '1.11'
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 1.11.2
|
24
|
+
type: :runtime
|
25
|
+
prerelease: false
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
27
|
+
requirements:
|
28
|
+
- - "~>"
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: '1.11'
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.11.2
|
34
|
+
- !ruby/object:Gem::Dependency
|
35
|
+
name: bundler
|
36
|
+
requirement: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.11'
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 1.11.2
|
44
|
+
type: :development
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: !ruby/object:Gem::Requirement
|
47
|
+
requirements:
|
48
|
+
- - "~>"
|
49
|
+
- !ruby/object:Gem::Version
|
50
|
+
version: '1.11'
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 1.11.2
|
54
|
+
description: A United States phone number validator.
|
55
|
+
email: bglatman@outlook.com
|
56
|
+
executables:
|
57
|
+
- phone_number_validator
|
58
|
+
extensions: []
|
59
|
+
extra_rdoc_files:
|
60
|
+
- README.rdoc
|
61
|
+
files:
|
62
|
+
- ".gitignore"
|
63
|
+
- Gemfile
|
64
|
+
- LICENSE
|
65
|
+
- README.rdoc
|
66
|
+
- Rakefile
|
67
|
+
- bin/phone_number_validator
|
68
|
+
- doc/PhoneNumberValidator.html
|
69
|
+
- doc/PhoneNumberValidator/Validator.html
|
70
|
+
- doc/PhoneNumberValidatorTest.html
|
71
|
+
- doc/README_rdoc.html
|
72
|
+
- doc/created.rid
|
73
|
+
- doc/css/fonts.css
|
74
|
+
- doc/css/rdoc.css
|
75
|
+
- doc/fonts/Lato-Light.ttf
|
76
|
+
- doc/fonts/Lato-LightItalic.ttf
|
77
|
+
- doc/fonts/Lato-Regular.ttf
|
78
|
+
- doc/fonts/Lato-RegularItalic.ttf
|
79
|
+
- doc/fonts/SourceCodePro-Bold.ttf
|
80
|
+
- doc/fonts/SourceCodePro-Regular.ttf
|
81
|
+
- doc/images/add.png
|
82
|
+
- doc/images/arrow_up.png
|
83
|
+
- doc/images/brick.png
|
84
|
+
- doc/images/brick_link.png
|
85
|
+
- doc/images/bug.png
|
86
|
+
- doc/images/bullet_black.png
|
87
|
+
- doc/images/bullet_toggle_minus.png
|
88
|
+
- doc/images/bullet_toggle_plus.png
|
89
|
+
- doc/images/date.png
|
90
|
+
- doc/images/delete.png
|
91
|
+
- doc/images/find.png
|
92
|
+
- doc/images/loadingAnimation.gif
|
93
|
+
- doc/images/macFFBgHack.png
|
94
|
+
- doc/images/package.png
|
95
|
+
- doc/images/page_green.png
|
96
|
+
- doc/images/page_white_text.png
|
97
|
+
- doc/images/page_white_width.png
|
98
|
+
- doc/images/plugin.png
|
99
|
+
- doc/images/ruby.png
|
100
|
+
- doc/images/tag_blue.png
|
101
|
+
- doc/images/tag_green.png
|
102
|
+
- doc/images/transparent.png
|
103
|
+
- doc/images/wrench.png
|
104
|
+
- doc/images/wrench_orange.png
|
105
|
+
- doc/images/zoom.png
|
106
|
+
- doc/index.html
|
107
|
+
- doc/js/darkfish.js
|
108
|
+
- doc/js/jquery.js
|
109
|
+
- doc/js/navigation.js
|
110
|
+
- doc/js/navigation.js.gz
|
111
|
+
- doc/js/search.js
|
112
|
+
- doc/js/search_index.js
|
113
|
+
- doc/js/search_index.js.gz
|
114
|
+
- doc/js/searcher.js
|
115
|
+
- doc/js/searcher.js.gz
|
116
|
+
- doc/table_of_contents.html
|
117
|
+
- lib/phone_number_validator.rb
|
118
|
+
- lib/phone_number_validator/validator.rb
|
119
|
+
- phone_number_validator.gemspec
|
120
|
+
- test/test_phone_number_validator.rb
|
121
|
+
homepage: http://rubygems.org/gems/phone_number_validator
|
122
|
+
licenses:
|
123
|
+
- MIT
|
124
|
+
metadata:
|
125
|
+
GitLab Repository URL: https://gitlab.com/bag3318/phone_number_validator
|
126
|
+
Repository Host: GitLab (https://gitlab.com)
|
127
|
+
post_install_message: "\r\nThanks for installing my phone_number_validator gem!\r\nI
|
128
|
+
hope you will enjoy using it! :)\r\n\r\n"
|
129
|
+
rdoc_options: []
|
130
|
+
require_paths:
|
131
|
+
- lib
|
132
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
133
|
+
requirements:
|
134
|
+
- - ">="
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: 2.0.0
|
137
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
138
|
+
requirements:
|
139
|
+
- - ">="
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 2.6.0
|
142
|
+
requirements:
|
143
|
+
- A Windows, Mac, or Linux computer with Ruby and RubyGems
|
144
|
+
rubyforge_project:
|
145
|
+
rubygems_version: 2.7.7
|
146
|
+
signing_key:
|
147
|
+
specification_version: 4
|
148
|
+
summary: Validate any US phone number!
|
149
|
+
test_files:
|
150
|
+
- test/test_phone_number_validator.rb
|