email_repair 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/email_repair/mechanic.rb +20 -0
- data/lib/email_repair/version.rb +1 -1
- data/spec/lib/email_repair/mechanic_spec.rb +15 -0
- metadata +7 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c006eab73457e196a6f2723466d75bd668c8c96f
|
4
|
+
data.tar.gz: e51207841fc572de5a97f1247229a61e5f4b6d1f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 44ba45751bf6e6a67fb9e69134603b380ea359bd5452321990665720e908abfc2dc60f4bc9d5894933a427fb63ac873379f7ccd6ffc53b0c7e295848cd15619b
|
7
|
+
data.tar.gz: 2167ea3c6b132a7fddae6b02313c7c5f5c3e952488255f6ed5bb6a5cfd31cf48c63c6be8e2e24e67ffa6629921ceb0986034bacef46a2e9a3fff68e2e29c9f23
|
@@ -11,6 +11,26 @@ module EmailRepair
|
|
11
11
|
]
|
12
12
|
end
|
13
13
|
|
14
|
+
def repair_all(emails)
|
15
|
+
sanitized_emails = []
|
16
|
+
invalid_emails = []
|
17
|
+
|
18
|
+
emails.each do |email|
|
19
|
+
repaired_email = repair(email)
|
20
|
+
|
21
|
+
if repaired_email
|
22
|
+
sanitized_emails << repaired_email
|
23
|
+
else
|
24
|
+
invalid_emails << email
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
OpenStruct.new(
|
29
|
+
sanitized_emails: sanitized_emails,
|
30
|
+
invalid_emails: invalid_emails,
|
31
|
+
)
|
32
|
+
end
|
33
|
+
|
14
34
|
def repair(email)
|
15
35
|
return unless email
|
16
36
|
|
data/lib/email_repair/version.rb
CHANGED
@@ -1,6 +1,21 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
module EmailRepair
|
4
|
+
describe Mechanic, '#repair_all' do
|
5
|
+
|
6
|
+
it 'sanitizes an array of emails and returns bulk results' do
|
7
|
+
mechanic = Mechanic.new
|
8
|
+
salvageable_emails = %w(One@@two.com three@four.com)
|
9
|
+
sanitized_emails = %w(one@two.com three@four.com)
|
10
|
+
bad_emails = %w(bleep@blop plooooooop)
|
11
|
+
|
12
|
+
result = mechanic.repair_all(salvageable_emails + bad_emails)
|
13
|
+
expect(result.sanitized_emails).to match_array sanitized_emails
|
14
|
+
expect(result.invalid_emails).to match_array bad_emails
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
18
|
+
|
4
19
|
describe Mechanic, '#repair' do
|
5
20
|
let(:mechanic) { Mechanic.new }
|
6
21
|
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: email_repair
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Holman Gao
|
8
|
+
- JT Bowler
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2016-06-28 00:00:00.000000000 Z
|
12
13
|
dependencies: []
|
13
14
|
description:
|
14
15
|
email:
|
15
16
|
- holman@golmansax.com
|
17
|
+
- jbowler2400@gmail.com
|
16
18
|
executables: []
|
17
19
|
extensions: []
|
18
20
|
extra_rdoc_files: []
|
@@ -35,21 +37,20 @@ require_paths:
|
|
35
37
|
- lib
|
36
38
|
required_ruby_version: !ruby/object:Gem::Requirement
|
37
39
|
requirements:
|
38
|
-
- -
|
40
|
+
- - ">="
|
39
41
|
- !ruby/object:Gem::Version
|
40
42
|
version: '0'
|
41
43
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
42
44
|
requirements:
|
43
|
-
- -
|
45
|
+
- - ">="
|
44
46
|
- !ruby/object:Gem::Version
|
45
47
|
version: '0'
|
46
48
|
requirements: []
|
47
49
|
rubyforge_project:
|
48
|
-
rubygems_version: 2.
|
50
|
+
rubygems_version: 2.4.8
|
49
51
|
signing_key:
|
50
52
|
specification_version: 4
|
51
53
|
summary: Library to fix invalid emails
|
52
54
|
test_files:
|
53
55
|
- spec/lib/email_repair/mechanic_spec.rb
|
54
56
|
- spec/spec_helper.rb
|
55
|
-
has_rdoc:
|