[rspec-users] silly partial qu

Rick DeNatale rick.denatale at gmail.com
Sat May 3 18:17:38 EDT 2008

On Sat, May 3, 2008 at 4:08 PM, steven shingler <shingler at gmail.com> wrote:
> hi all,
>  i'm just trying to check a partial has been rendered, by using:
>  response.template.should_receive(:render).with(:partial => "tasks/list")
>  this passes, even if I put something bogus in the partial name, such as:
>  response.template.should_receive(:render).with(:partial =>
>  "___tassdfsdfks/list")
>  does anyone know why this doesn't fail?
>  is this the wrong way to simply check a partial is being rendered?
>  am running this as a story step.

I'm not sure how this is working to begin with.

Where is this expectation in the flow of the code?  It would seem to
need to be before the request since it's a should_receive
But then what's response at this point?
And what's response.template?

It's the controller, not the template which receives the render call.

You say that this is in a story step? I've got a hunch that the step
is'nt actually matching and therfore not getting run, which would
explain why the assertion never fails.

If you're doing this as a full stack rails integration story, I don't
believe that you've got access to the controller, and this level of
specification doesn't belong here but rather in a controller spec,
where you might want to use expect_render instead of
should_receive(:render) as well.

Rick DeNatale

My blog on Ruby

More information about the rspec-users mailing list