On Tue, Aug 23, 2011 at 6:22 AM, Gordon Yeong <anexi...@gmail.com> wrote:
> I found out why it was not working. > > The line, 'Part.should_receive(:update_attributes).with('title' => 'Brake > pads').and_return(part)' should not be there because the controller specs > should not care about implementation (ie. how things are processed, rather > just what is done). > Depends on what you want to do. Now, your controller spec is coupled to your model, so if "update_attributes" fails, your controller spec will fail too. > I realised this when I looked at my specs for creation of new objects. > > I commented the line and the spec now passes as expected. > > > ------------ Spec extract starts ------------------------- > > context 'saves updates to an existing part object successfully' do > it 'does its job in saving the update' do > Part.should_receive(:find).with(1).and_return(part) > # Part.should_receive(:update_attributes).with('title' => 'Brake > pads').and_return(part) > put :update, :id => 1, :part => {'title' => 'Brake pads'} > flash[:notice].should eq('Part was successfully updated.') > end > end > > ------------ Spec extract ends ------------------------- > > Thank you for your help, Justin! > > Gordon Yeong :) > > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users >
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users