mardi 9 juin 2015

Rails Test Fails - Hartl Tutorial Ch. 6 Page 256/257

According to Hartl uniqueness: is infered by Ruby as true in ruby.rb. Nevertheless my test only passes when I set it to false explicetly. Can you spot the error?

Test:

test "email addresses should be unique" do
    duplicate_user = @user.dup
    duplicate_user.email = @user.email.upcase
    @user.save
    assert_not duplicate_user.valid?
end

Model: (ruby.rb)

class User < ActiveRecord::Base
  validates :name, presence: true, length: { maximum: 50 }
  VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
  validates :email, presence: true, length: { maximum: 255 },
                  format: { with: VALID_EMAIL_REGEX },
                  uniqueness: case_sensitive: false
end

Aucun commentaire:

Enregistrer un commentaire