better consistency around email case sensitivity

This commit is contained in:
Régis Hanol
2013-04-15 02:20:33 +02:00
parent c6ab9fec9d
commit b24c1a1ad9
10 changed files with 62 additions and 35 deletions

View File

@ -3,20 +3,39 @@ require 'email'
describe Email do
describe "is_valid?" do
it 'treats a good email as valid' do
Email.is_valid?('sam@sam.com').should be_true
end
it 'treats a bad email as invalid' do
Email.is_valid?('sam@sam').should be_false
end
it 'allows museum tld' do
Email.is_valid?('sam@nic.museum').should be_true
end
it 'does not think a word is an email' do
Email.is_valid?('sam').should be_false
end
it 'should treat a good email as valid' do
Email.is_valid?('sam@sam.com').should be_true
end
it 'should treat a bad email as invalid' do
Email.is_valid?('sam@sam').should be_false
describe "downcase" do
it 'downcases only the host part' do
Email.downcase('SAM@GMAIL.COM').should == 'SAM@gmail.com'
Email.downcase('sam@GMAIL.COM').should_not == 'SAM@gmail.com'
end
it 'leaves invalid emails untouched' do
Email.downcase('SAM@GMAILCOM').should == 'SAM@GMAILCOM'
Email.downcase('samGMAIL.COM').should == 'samGMAIL.COM'
Email.downcase('sam@GM@AIL.COM').should == 'sam@GM@AIL.COM'
end
end
it 'should allow museum tld' do
Email.is_valid?('sam@nic.museum').should be_true
end
it 'should not think a word is an email' do
Email.is_valid?('sam').should be_false
end
end