discourse/spec/components/email_spec.rb

42 lines
950 B
Ruby

require 'spec_helper'
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
end
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
end