emails: move EmailValidator into Danbooru::EmailAddress.
This commit is contained in:
@@ -11,6 +11,8 @@ class EmailAddressTest < ActiveSupport::TestCase
|
||||
should allow_value("foo_bar@gmail.com").for(:address)
|
||||
should allow_value("foo+bar@gmail.com").for(:address)
|
||||
should allow_value("foo@foo.bar.com").for(:address)
|
||||
should allow_value("foo@iki.fi").for(:address)
|
||||
should allow_value("foo@ne.jp").for(:address)
|
||||
|
||||
should_not allow_value("foo@example").for(:address)
|
||||
should_not allow_value("fooqq@.com").for(:address)
|
||||
@@ -21,6 +23,17 @@ class EmailAddressTest < ActiveSupport::TestCase
|
||||
should_not allow_value("foo@localhost").for(:address)
|
||||
end
|
||||
|
||||
context "normalization" do
|
||||
should "normalize email addresses" do
|
||||
assert_equal("foo@gmail.com", EmailAddress.new(address: "FOO@GMAIL.com").normalized_address.to_s)
|
||||
assert_equal("foo@gmail.com", EmailAddress.new(address: "foo@googlemail.com").normalized_address.to_s)
|
||||
assert_equal("foobar@gmail.com", EmailAddress.new(address: "foo.bar@googlemail.com").normalized_address.to_s)
|
||||
assert_equal("foobar@gmail.com", EmailAddress.new(address: "foo.bar+nospam@googlemail.com").normalized_address.to_s)
|
||||
assert_equal("foobar@gmail.com", EmailAddress.new(address: "Foo.Bar+nospam@Googlemail.com").normalized_address.to_s)
|
||||
assert_equal("foo.bar@yahoo.com", EmailAddress.new(address: "Foo.Bar-nospam@yahoo.com").normalized_address.to_s)
|
||||
end
|
||||
end
|
||||
|
||||
should "fix typos" do
|
||||
assert_equal("foo@gmail.com", EmailAddress.new(address: "foo@gmail.com ").address.to_s)
|
||||
assert_equal("foo@gmail.com", EmailAddress.new(address: " foo@gmail.com").address.to_s)
|
||||
|
||||
Reference in New Issue
Block a user