[rspec-users] [RSpec] Testing "validates_uniquesness of"

Joseph.DelCioppio joseph.delcioppio at gmail.com
Sun Nov 1 23:48:13 EST 2009


Getting used to doing BDD, and in my current project I'm trying to
spec out my model, and in particular the fact that my model must
validate that one of its fields are unique; in this case, the
customer's email address.

Simple enough model, a customer, who only has two
fields.  :email_address and :state.

I have a model spec that does the following:

it "ensureness that the customer's email is unique" do
  customer.new :email_address => "Joe at Test.com"
  customer2.new :email_address => "Joe @Test.com"

  customer2.should_not be_valid

Once I run my spec, it fails, as their is no validator in the model
yet.  However, once I add the validator it still fails.

class Customer < ActiveRecord::Base
validates_precense_of :email_address, :message => "needs to be valid."


The thing is, the validator actually works if I fire up the server and
try to do it myself.

Anybody know why that spec doesn't do what I expect it to?  I have a
feeling its something to do with the variables I'm creating, but could
anybody give me an example that would show me how to do this?



More information about the rspec-users mailing list