[rspec-users] Debugging trick.

Rick DeNatale rick.denatale at gmail.com
Sat Apr 19 09:43:50 EDT 2008


On Fri, Apr 18, 2008 at 10:13 PM, Scott Taylor
<mailing_lists at railsnewbie.com> wrote:
>
>  On Apr 18, 2008, at 5:14 PM, Rick DeNatale wrote:
>
>  > Some have probably already discovered this but I've been working
>  > through some ui stories, using the rails integration test stuff.
>  >
>  > I had a story where one very used step was failing in one place.  The
>  > failing expectation looked like this:
>  >
>  >       response.should have_tag("tr.group_info_row td",group_title)
>  >
>  > I wanted to look at the response, but only for the case which was
>  > failing, so I changed this to:
>  >
>  >      debugger unless have_tag("tr.group_info_row
>  > td",group_title).matches?(response)
>  >      response.should have_tag("tr.group_info_row td",group_title)
>  >
>  > And rdebug broke right before the expectation would have thrown its
>  > exception, and I could see the problem, which was an earlier step
>  > which had checked that the request had redirected without following
>  > the redirect.
>
>  Yeah - I use this all the time.   I have a textmate snippet called
>  debug(tab) which inserts the following:
>
>  require "rubygems"; require "ruby-debug"; debugger

Well I wasn't really talking about just using the debugger, but using
matcher.matches?(value) instead of value.should matcher as a way to
trigger a conditional break.

-- 
Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/


More information about the rspec-users mailing list