Rspec - rails put :update any examples

I’m looking for a working example of a put :update on a controller. The
documentation online avoids the update function.

Any help pointing to this example would be great. Trying to get to 100%
coverage…can’t make it without update :slight_smile:

Brian

On Feb 4, 2008 9:44 PM, Brian R. [email protected] wrote:

I’m looking for a working example of a put :update on a controller. The
documentation online avoids the update function.

Any help pointing to this example would be great. Trying to get to 100%
coverage…can’t make it without update :slight_smile:

This is what I do:

it “should replace foo with bar partial” do
page = mock(“page”)
page.should_receive(:replace_html).with(‘foo’, :partial => ‘bar’)
controller.expect_render(:update).and_yield(page)
do_post
end

HTH,
David

David, I tried doing this, and I get an exception. Here’s a pastie of
the
error, controller, controller_spec: http://pastie.caboo.se/148021

And, of course, here are my versions:

Ruby 1.8.6
Rails 2.0.2
Zentest 3.8
RSpec (I believe 1.1.2)

On Feb 5, 2008 6:42 PM, Corey H. [email protected] wrote:

David, I tried doing this, and I get an exception. Here’s a pastie of the
error, controller, controller_spec: http://pastie.caboo.se/148021

You’ve got page[:coupon_list], not just page. So what you need to mock
is this:

page = mock(“page”)
page.should_receive(:[]).with(:coupon_list).and_return(page)
page.should_receive(:replace_html).with(:partial => “coupon_list”)

That’s starting to get a bit brittle, but that’s what you get for
mixing all that view logic in your controllers. It’s the Rails Way,
but it comes with a price if you want this level of coverage and
isolation.

FWIW,
David

Okay, I’ll try that. Thanks.

I don’t really like all the view stuff in the controllers, and I intend
to
eventually move them into RJS, but, while I’m learning, I’m keeping it
there. :slight_smile:

-Corey