iz 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -0
- data/Rakefile +1 -1
- data/lib/iz/email.rb +19 -0
- data/lib/iz/version.rb +1 -1
- data/lib/iz.rb +5 -0
- data/test/test_email.rb +25 -0
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 681d8ce4ad5124840e3702912a51286af3f6717e
|
4
|
+
data.tar.gz: a69484149c8392352655e28b720cc2b746c9a5df
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb560dd9003cbcf7b518f1d97110a878705411774c5819692d6805b2b1eeee961768b67d698523b0d4e1496707d8404757cc60e2300f7d74dc274d33152e22f7
|
7
|
+
data.tar.gz: 8db13e2cf15b80acf1edf0e3f1e71bf904a543ac1f0100a7f9d0b60f03e6a4b3c9c1ad362070504337fb4c04af02d1741773539e2717eff10e6a6d5098c38922
|
data/README.md
CHANGED
@@ -33,6 +33,9 @@ Iz.credit_card?('4242424242424242') # => true
|
|
33
33
|
Iz.mac?('ababababab') # => true
|
34
34
|
Iz.mac?(-1) # => false
|
35
35
|
|
36
|
+
Iz.email?('johnotander@gmail.com') # => true
|
37
|
+
Iz.email?(nil) # => false
|
38
|
+
|
36
39
|
Iz.binary?('010101') # => true
|
37
40
|
Iz.binary?('foo') # => false
|
38
41
|
|
data/Rakefile
CHANGED
data/lib/iz/email.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
module Iz
|
2
|
+
class Email
|
3
|
+
REGEX = /.+@.+/
|
4
|
+
|
5
|
+
attr_accessor :value
|
6
|
+
|
7
|
+
def initialize(email)
|
8
|
+
self.value = email
|
9
|
+
end
|
10
|
+
|
11
|
+
def valid?
|
12
|
+
!!Iz::Email.is_email?(value)
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.is_email?(value)
|
16
|
+
value.to_s =~ REGEX
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/iz/version.rb
CHANGED
data/lib/iz.rb
CHANGED
@@ -5,6 +5,7 @@ require 'iz/phone_number'
|
|
5
5
|
require 'iz/credit_card'
|
6
6
|
require 'iz/hexadecimal'
|
7
7
|
require 'iz/binary'
|
8
|
+
require 'iz/email'
|
8
9
|
require 'iz/mac'
|
9
10
|
require 'iz/url'
|
10
11
|
|
@@ -17,6 +18,10 @@ module Iz
|
|
17
18
|
!!Iz::Hexadecimal.is_hexadecimal?(hexadecimal)
|
18
19
|
end
|
19
20
|
|
21
|
+
def self.email?(email)
|
22
|
+
!!Iz::Email.is_email?(email)
|
23
|
+
end
|
24
|
+
|
20
25
|
def self.binary?(binary)
|
21
26
|
!!Iz::Binary.is_binary?(binary)
|
22
27
|
end
|
data/test/test_email.rb
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'iz'
|
3
|
+
|
4
|
+
class TestHexadecimal < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def valid_emails
|
7
|
+
['johnotander@gmail.com', 'foo@bar.com', 'j+j@j.j']
|
8
|
+
end
|
9
|
+
|
10
|
+
def invalid_emails
|
11
|
+
[nil, false, -1, '', ' ', 'g', '123g', 'foo@', '@foo']
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_that_email_values_return_true
|
15
|
+
valid_emails.each do |hex|
|
16
|
+
assert Iz.email?(hex)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_that_invalid_email_values_return_false
|
21
|
+
invalid_emails.each do |hex|
|
22
|
+
assert !Iz.email?(hex)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: iz
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Otander
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -70,6 +70,7 @@ files:
|
|
70
70
|
- lib/iz/alphanumeric.rb
|
71
71
|
- lib/iz/binary.rb
|
72
72
|
- lib/iz/credit_card.rb
|
73
|
+
- lib/iz/email.rb
|
73
74
|
- lib/iz/hexadecimal.rb
|
74
75
|
- lib/iz/mac.rb
|
75
76
|
- lib/iz/phone_number.rb
|
@@ -78,6 +79,7 @@ files:
|
|
78
79
|
- test/test_alphanumeric.rb
|
79
80
|
- test/test_binary.rb
|
80
81
|
- test/test_credit_card.rb
|
82
|
+
- test/test_email.rb
|
81
83
|
- test/test_hexadecimal.rb
|
82
84
|
- test/test_mac.rb
|
83
85
|
- test/test_phone_number.rb
|
@@ -102,7 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
102
104
|
version: '0'
|
103
105
|
requirements: []
|
104
106
|
rubyforge_project:
|
105
|
-
rubygems_version: 2.4.
|
107
|
+
rubygems_version: 2.4.5.1
|
106
108
|
signing_key:
|
107
109
|
specification_version: 4
|
108
110
|
summary: All your type checking in one place.
|
@@ -110,6 +112,7 @@ test_files:
|
|
110
112
|
- test/test_alphanumeric.rb
|
111
113
|
- test/test_binary.rb
|
112
114
|
- test/test_credit_card.rb
|
115
|
+
- test/test_email.rb
|
113
116
|
- test/test_hexadecimal.rb
|
114
117
|
- test/test_mac.rb
|
115
118
|
- test/test_phone_number.rb
|