Den 17. april. 2009 kl. 18.58 skrev Zach Dennis <zach.den...@gmail.com>:

On Fri, Apr 17, 2009 at 12:31 PM, Aslak Hellesøy
<aslak.helle...@gmail.com> wrote:


Den 17. april. 2009 kl. 18.06 skrev Matt Wynne <m...@mattwynne.net>:

Is there currently a way to register a block to run after the current
scenario completes?

After.

After is used after *any* scenario completes thought, right? If you
add an After block inside of a step definition, it's going to be

Aha now I understand. Matt, would Joseph's suggestion work for you?

Aslak

executed from that point on, rather than clear out at the end of the
scenario that ran it, correct?

If not, we've implemented one. Would anyone be interested in us submitting
it as a patch to Cucumber?

How is this different from After?

* It clears out after the current scenario.
* It doesn't require to be run for scenarios that don't need it.
* It allows you to cleanly place the handler next to the code that it
is so closely related
* It doesn't require you know the name of the scenario(s) that would
need it (it's simply determined by if a step definition is run)


Aslak

Something like

Given "something that will not be rolled back after the scenario is
finished" do
 original = SomeClass.a_value
 SomeClass.a_value = 7

 AfterCurrentScenario do
  # undo stuff
  SomeClass.a_value = original
 end
end

If you're interested, our use case is for pagination, where we explicitly set the length of a page to something much shorter than the default in a step, so that we only have to create a small number of objects to spill over onto another page. The page length value is set on a class variable, and would pollute other tests, so we want to reset it when the scenario is
finished.

 e.g.  Given the maximum number of Users to display is 2
  And there are 3 Users
  When I view the Users page
  Then I should see the text "see all 3 users"

Matt Wynne
http://blog.mattwynne.net
http://www.songkick.com

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users




--
Zach Dennis
http://www.continuousthinking.com
http://www.mutuallyhuman.com
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to