Both avoiding 'should' and repiting 'it' on the tests description improves reading them and also makes all descriptions consistent. Read about cop at http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleWording
22 lines
688 B
Ruby
22 lines
688 B
Ruby
require 'rails_helper'
|
|
|
|
describe Verification::Sms do
|
|
it "is valid" do
|
|
sms = build(:verification_sms)
|
|
expect(sms).to be_valid
|
|
end
|
|
|
|
it "validates uniqness of phone" do
|
|
create(:user, confirmed_phone: "699999999")
|
|
sms = described_class.new(phone: "699999999")
|
|
expect(sms).to_not be_valid
|
|
end
|
|
|
|
it "only allows spaces, numbers and the + sign" do
|
|
expect(build(:verification_sms, phone: "0034 666666666")).to be_valid
|
|
expect(build(:verification_sms, phone: "+34 666666666")).to be_valid
|
|
expect(build(:verification_sms, phone: "hello there")).to_not be_valid
|
|
expect(build(:verification_sms, phone: "555; DROP TABLE USERS")).to_not be_valid
|
|
end
|
|
|
|
end |