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).  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 :)

-- 
You received this message because you are subscribed to the Google Groups 
"rspec" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rspec?hl=en.

Reply via email to