Mocking kills usefullness of controller tests?

Hello,

Let’s say we mock our User objects in controllers. Then we change
attr_accessible in user.rb. Model tests break, controller do not.

You fix the model ones and go on thinking everything is ok when it’s not
(the controllers are broken).

Even with technique in Example for attr_accessible? - RSpec - Ruby-Forum you would
only be testing if attr_accessible gets called. It wouldn’t show you
places in your controllers where you need to change that mass assignment
to attribute assignment.

Any ideas how to prevent it?

On Feb 19, 2008 1:41 PM, Artûras Ðlajus [email protected] wrote:

places in your controllers where you need to change that mass assignment
to attribute assignment.

Any ideas how to prevent it?
This is a common tradeoff when using mocks. You lose the integration
aspects and arguably incur more maintenance overhead but gain speed
and isolation.
It looks like you want to have integration coverage over that code.
You can either use controller specs without mocks, rails integration
specs, and/or selenium (or watir) test that covers that piece of code.