valid_email2 5.0.4 → 5.1.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 +4 -4
- data/CHANGELOG.md +10 -1
- data/config/disposable_email_domains.txt +0 -1
- data/lib/valid_email2/email_validator.rb +3 -1
- data/lib/valid_email2/version.rb +1 -1
- data/pull_mailchecker_emails.rb +4 -1
- data/spec/valid_email2_spec.rb +33 -7
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ca51b0f797d9251b8a850e2d55640ea0c278128f29ebed57b8d1e0d426393b0f
|
4
|
+
data.tar.gz: e3d180928ccea8db43191a40df53c0b2f8a226452b30fa55e8ed3d4a32c39186
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b0cdb4311843b16ee38ab13c774c8f9f4e75c6e208f2feca5e143d8abf465bfb29d0e6bf314e0789d18178620bac7c96c17c06fb61c5d4a32b5157ac8a584cf4
|
7
|
+
data.tar.gz: 3c8fc7f7ae71dcb32f290254678d98f1d15151c60ee15602d82765947faae76466609ac483c910f8ce0a3f403eaaab8126abf001b00311c2556ae58d40bbcb66
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,14 @@
|
|
1
|
+
## Version 5.1.0
|
2
|
+
* Allow dynamic validaton error messages [#221](https://github.com/micke/valid_email2/pull/221)
|
3
|
+
|
4
|
+
## Version 5.0.5
|
5
|
+
* Remove false positive duck.com
|
6
|
+
|
1
7
|
## Version 5.0.4
|
2
|
-
* Remove false positives
|
8
|
+
* Remove false positives:
|
9
|
+
* https://github.com/micke/valid_email2/pull/212
|
10
|
+
* https://github.com/micke/valid_email2/pull/213
|
11
|
+
* https://github.com/micke/valid_email2/pull/215
|
3
12
|
|
4
13
|
## Version 5.0.3
|
5
14
|
* Remove false positive mail.com [#210](https://github.com/micke/valid_email2/issues/210)
|
@@ -46278,7 +46278,6 @@ dubukim.me
|
|
46278
46278
|
dubzone.com
|
46279
46279
|
ducatimotorclubdenver.com
|
46280
46280
|
duck.9amail.top
|
46281
|
-
duck.com
|
46282
46281
|
duck2.club
|
46283
46282
|
duckbao.com
|
46284
46283
|
duckcover.com
|
@@ -66,7 +66,9 @@ module ValidEmail2
|
|
66
66
|
end
|
67
67
|
|
68
68
|
def error(record, attribute)
|
69
|
-
|
69
|
+
message = options[:message].respond_to?(:call) ? options[:message].call : options[:message]
|
70
|
+
|
71
|
+
record.errors.add(attribute, message || :invalid)
|
70
72
|
end
|
71
73
|
end
|
72
74
|
end
|
data/lib/valid_email2/version.rb
CHANGED
data/pull_mailchecker_emails.rb
CHANGED
@@ -10,7 +10,10 @@ whitelisted_emails = %w(
|
|
10
10
|
hush.ai hush.com hushmail.me naver.com qq.com example.com
|
11
11
|
yandex.net gmx.com gmx.es webdesignspecialist.com.au vp.com
|
12
12
|
onit.com asics.com freemail.hu 139.com mail2world.com slmail.me
|
13
|
-
zoho.com zoho.in
|
13
|
+
zoho.com zoho.in simplelogin.com simplelogin.fr simplelogin.co
|
14
|
+
simplelogin.io aleeas.com slmails.com silomails.com slmail.me
|
15
|
+
passinbox.com passfwd.com passmail.com passmail.net
|
16
|
+
duck.com mozmail.com
|
14
17
|
)
|
15
18
|
|
16
19
|
existing_emails = File.open("config/disposable_email_domains.txt") { |f| f.read.split("\n") }
|
data/spec/valid_email2_spec.rb
CHANGED
@@ -47,6 +47,14 @@ class TestUserMessage < TestModel
|
|
47
47
|
validates :email, 'valid_email_2/email': { message: "custom message" }
|
48
48
|
end
|
49
49
|
|
50
|
+
class TestUserMessageWithLambda < TestModel
|
51
|
+
validates :email, 'valid_email_2/email': { message: -> { "custom message lambda" } }
|
52
|
+
end
|
53
|
+
|
54
|
+
class TestUserMessageWithProc < TestModel
|
55
|
+
validates :email, 'valid_email_2/email': { message: Proc.new { "custom message proc" } }
|
56
|
+
end
|
57
|
+
|
50
58
|
class TestUserMultiple < TestModel
|
51
59
|
validates :email, 'valid_email_2/email': { multiple: true }
|
52
60
|
end
|
@@ -188,11 +196,11 @@ describe ValidEmail2 do
|
|
188
196
|
let(:whitelist_domain) { disposable_domain }
|
189
197
|
let(:whitelist_file_path) { "config/whitelisted_email_domains.yml" }
|
190
198
|
|
191
|
-
# Some of the specs below need to explictly set the whitelist var or it
|
199
|
+
# Some of the specs below need to explictly set the whitelist var or it
|
192
200
|
# may be cached to an empty set
|
193
201
|
def set_whitelist
|
194
202
|
ValidEmail2.instance_variable_set(
|
195
|
-
:@whitelist,
|
203
|
+
:@whitelist,
|
196
204
|
ValidEmail2.send(:load_if_exists, ValidEmail2::WHITELIST_FILE)
|
197
205
|
)
|
198
206
|
end
|
@@ -308,11 +316,29 @@ describe ValidEmail2 do
|
|
308
316
|
end
|
309
317
|
end
|
310
318
|
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
319
|
+
context "when message is present" do
|
320
|
+
describe "with custom error message" do
|
321
|
+
it "supports settings a custom error message" do
|
322
|
+
user = TestUserMessage.new(email: "fakeemail")
|
323
|
+
user.valid?
|
324
|
+
expect(user.errors.full_messages).to include("Email custom message")
|
325
|
+
end
|
326
|
+
end
|
327
|
+
|
328
|
+
describe "with custom error message lambda" do
|
329
|
+
it "supports settings a custom error message lambda" do
|
330
|
+
user = TestUserMessageWithLambda.new(email: "fakeemail")
|
331
|
+
user.valid?
|
332
|
+
expect(user.errors.full_messages).to include("Email custom message lambda")
|
333
|
+
end
|
334
|
+
end
|
335
|
+
|
336
|
+
describe "with custom error message proc" do
|
337
|
+
it "supports settings a custom error message proc" do
|
338
|
+
user = TestUserMessageWithProc.new(email: "fakeemail")
|
339
|
+
user.valid?
|
340
|
+
expect(user.errors.full_messages).to include("Email custom message proc")
|
341
|
+
end
|
316
342
|
end
|
317
343
|
end
|
318
344
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: valid_email2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0
|
4
|
+
version: 5.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Micke Lisinge
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-10-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|