> On May 15, 2009, at 10:16 AM, aslak hellesoy wrote:
>
>> Can you show me the code you would want to put in AfterStep that would
>> detect a 500 error?
>
> I've written a simple piece of rack middleware (included below) that will
> create a file in the event a 500 is raised. I would clear the file before
> each scenario and check for it's existence in the AfterStep. For example:
>
Thanks for doing that. I have one more favour to ask: Can you show me
an example of a StepDefinition that would cause the file to be
created?
Then I might be able to suggest an alternative solution with the same result.
Aslak
> Before do
> File.delete('/tmp/rails.error') if File.exist?('/tmp/rails.error')
> end
>
> AfterStep do |scenario|
> if File.exist?('/tmp/rails.error')
> scenario.fail("Failed because app raised a 50x error.")
> end
> end
>
> Here's the rack piece, for the curious:
>
> class RackErrorTouch
> def initialize(app, options = {})
> �...@app = app
> �...@path = options[:path]
> end
>
> def call(env)
> rack_response = @app.call(env)
> if rack_response.first >= 500
> `touch #...@path}`
> end
> rack_response
> end
> end
> --
> Luke Melia
> [email protected]
> http://www.lukemelia.com/
>
> _______________________________________________
> rspec-users mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/rspec-users
>
_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users