Skip to content

Instantly share code, notes, and snippets.

@mupkoo
Created May 5, 2015 13:07
Show Gist options
  • Save mupkoo/b51372a7969fc65e6978 to your computer and use it in GitHub Desktop.
Save mupkoo/b51372a7969fc65e6978 to your computer and use it in GitHub Desktop.
User Spec
RSpec.describe User do
let(:user) { Fabricate(:user, password: 'C0mplex!', password_confirmation: 'C0mplex!') }
describe 'validations' do
describe 'email' do
it 'should be valid with a correct email' do
expect(user).to be_valid
end
it 'should have a valid format' do
user.email = 'testing@notok'
expect(user).to be_invalid
end
it 'should be unique' do
invalid_user = User.new(email: user.email, password: 'C0mplex!', password_confirmation: 'C0mplex!')
expect(invalid_user).to be_invalid
end
end
describe 'password' do
it 'should have valid format' do
expect(user).to be_valid
user.password = user.password_confirmation = 'CComplexx0'
expect(user).to be_invalid
user.password = user.password_confirmation = '!!!mplexx0'
expect(user).to be_invalid
user.password = user.password_confirmation = '!!!mSexxCS'
expect(user).to be_invalid
end
it 'should have a valid length' do
user.password = user.password_confirmation = 'C0mle!'
expect(user).to be_invalid
end
it 'should be confirmed' do
user.password_confirmation = user.password + 'a'
expect(user).to be_invalid
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment