it "re-renders the 'new' template" do
# Trigger the behavior that occurs when invalid params are submitted
Sector.any_instance.stub(:save).and_return(false)
post :create, :sector => {}
response.should render_template("new")
end
I have the new template under app/views/sectors but the test says:
SectorsController POST create with invalid params re-renders the 'new' template
Failure/Error: response.should render_template("new")
expecting <"new"> but rendering with <"">
It sounds like the test is working and that your code is at fault by
the looks of it. Do you have a "render"/redirect_to method being
called in your 'create' controller action? Where is it going?
If I launch the application and I try to create an invalid sector, it
renders the new template correctly
I have another application and this test:
it "re-renders the 'new' template" do
UnsafeBuilding.stub(:new) { mock_unsafe_building(:save => false) }
post :create, :unsafe_building => {}
response.should render_template("new")
end
This works and the controller uses inherited_resources too.
I don't understand why the test in the first application doens't work
while the one in the second application works.