how to debug using rspec stories

Hello. I just started to use rspec stories. I followed the following
tutorial:

http://www.tomtenthij.co.uk/2008/1/25/rspec-plain-text-story-runner-on-a-fresh-rails-app

So I implemented my story and some of the steps are:

  (...)
  When "user creates a product" do
    post "products/new", :name => @name
  end

  Then "there should be a product named '$name'" do |name|
    Product.find_by_name(name).should_not be_nil
  end

When I run the story i get:
  (...)
  When user creates a product
  Then there should be a product named 'Book' (PENDING)
1 scenarios: 0 succeeded, 0 failed, 1 pending
Pending Steps:
1) Creating a product (success): there should be a product named 'Book'

The problem is that there is no message for why the step is pending,
so how can i know how to fix that? I included "require 'ruby-debug'" in
my helper.rb, but it didn't help. Any ideas? Thanks.

PP Junty wrote:

Hello. I just started to use rspec stories. I followed the following
tutorial:

http://www.tomtenthij.co.uk/2008/1/25/rspec-plain-text-story-runner-on-a-fresh-rails-app

So I implemented my story and some of the steps are:

  (...)
  When "user creates a product" do
    post "products/new", :name => @name
  end

  Then "there should be a product named '$name'" do |name|
    Product.find_by_name(name).should_not be_nil
  end

When I run the story i get:
  (...)
  When user creates a product
  Then there should be a product named 'Book' (PENDING)
1 scenarios: 0 succeeded, 0 failed, 1 pending
Pending Steps:
1) Creating a product (success): there should be a product named 'Book'

The problem is that there is no message for why the step is pending,
so how can i know how to fix that? I included "require 'ruby-debug'" in
my helper.rb, but it didn't help. Any ideas? Thanks.

Have you tried removing the 's?

Then "there should be a product named $name" do |name|
...
Then there should be a product named Book

thanks for your reply, Matthew. i tried and the
result is the same. the tutorial even refers to
that: "It is good practice to put quotes around
your values so that there are less cases where
the regexp matcher will get confused and split
things up in a way you did not expect."

i tried to manually debug the calls and apparently
the command

post "products/new", :name => @name

is not invoking the controller's method, but i can't
say why. i even tried post_via_redirect, but it
didn't help either.

PP Junty wrote:

thanks for your reply, Matthew. i tried and the
result is the same. the tutorial even refers to
that: "It is good practice to put quotes around
your values so that there are less cases where
the regexp matcher will get confused and split
things up in a way you did not expect."

i tried to manually debug the calls and apparently
the command

post "products/new", :name => @name

is not invoking the controller's method, but i can't
say why. i even tried post_via_redirect, but it
didn't help either.

what about importing the same steps into a ruby defined story...

eg.

When "blahblahblahblah"
And "blahblahblah"
Then "blahblahblah"

I mean..
the fact that it was raising a "not implemented"
implies that it's too do with the parsing,
it's nothing to do with the content of the step...

here's an example I made earlier of a story.rb rather than a
story.plaintext
http://pastie.org/221205