I want to use mocks and stubs to test the controller, but am having trouble getting my validation not to trigger. Here's the code:
# spec: Image.stub!(:find).and_return(@image) @image.should_receive(:save!).once.with(:any_args) put :update, :id => @image.id, :category_id => @category.id, :image => {:name => 'test', :image_number => 13554} #model validates_presence_of :name validates_uniqueness_of :name, :allow_nil => true # rspec output ActiveRecord::RecordInvalid in 'ImagesController should update a database record when it receives a PUT' Validation failed: Name has already been taken, Image number has already been taken It seems AR is not detecting that this is an edit/update that will not cause a uniqueness conflict. I believe the code in the model needs to remain in place because I don't want a user creating a name conflict by editing an existing name into one that already exists in the database. Any thoughts on how better to spec this? Thanks _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users