Zach Dennis wrote:
> On Sun, Feb 15, 2009 at 2:21 PM, Joaquin Rivera Padron
> <joahking at gmail.com> wrote:
>>> hey there,
>> the short version:
>> right now Cucumber provides hooks Before and After to be run around every
>> step, I have notice some use case where BeforeAll and AfterAll hooks would
>> be useful.
>> are ther plans that they be provided? what you think would be the best place
>> to do it (mother_step.rb)? any ideas about this could be accomplished?
>>>>>> BeforeAll is equivalent to just calling code up in env.rb.
> AfterAll is equivalent to registering a ruby at_exit hook in your env.rb.
>> Of course they don't have to go in your env.rb, you could put them in
> another file, and then require them from env.rb or just let cucumber
> auto-load them if they're in your support/ directory.
>>
To illustrate what Zach is saying here is an example I used on the
wiki[1] before:
# Global setup
ActionMailer::Base.delivery_method = :test
ActionMailer::Base.perform_deliveries = true
Before do
# Scenario setup
ActionMailer::Base.deliveries.clear
end
After do
# Scenario teardown
Database.truncate_all
end
at_exit do
# Global teardown
TempFileManager.clean_up
end
HTH,
Ben
1.
http://wiki.github.com/aslakhellesoy/cucumber/migration-from-rspec-stories
>>> the long version:
>>>> playing with culerity, which according to the author:
>> * when running cucumber culerity spawns a new jruby process (that's the
>> IO.popen call) - this way cucumber runs in plain old ruby (and you can work
>> with your models for test setup etc.) and only celerity runs in jruby
>> * from then on all communication has to go through pipes (in, out) so i am
>> passing the browser config through those pipes to the newsly spawned jruby
>> process
>> * when a test fails the jruby process doesn't get killed, that's the java
>> processes you see. don't have a good idea how to solve this yet. for now you
>> will have to kill those processes by hand.
>>>> that has improved since now there's a first attempt for built in support to
>> kill orfan java processes at:
>>http://github.com/joahking/culerity/tree/orfan_processes>>>> culerity trick happen at step_definitions/common_celerity.rb Before and
>> After hooks, where you build and kill a spawned jruby around every step.
>> There it is easy to see the gain if we could do those in an around All steps
>> manner
>>>> what do you think?
>>>> cheers,
>> joaquin
>>>>>> _______________________________________________
>> rspec-users mailing list
>>rspec-users at rubyforge.org>>http://rubyforge.org/mailman/listinfo/rspec-users>>>>>>>>