Sha256: 60cfa03e79b891ee3e627305b1044f1d985509d81bf83904d8c2176c19605e68

Contents?: true

Size: 919 Bytes

Versions: 11

Compression:

Stored size: 919 Bytes

Contents

Given /^the following Rack app:$/ do |definition|
  File.open(RACK_FILE, 'w') { |file| file.write(definition) }
end

When /^I perform a Rack request to "([^\"]*)"$/ do |url|
  shim_file = File.join(PROJECT_ROOT, 'features', 'support', 'airbrake_shim.rb.template')
  request_file = File.join(TEMP_DIR, 'rack_request.rb')
  File.open(request_file, 'w') do |file|
    file.puts "require 'rubygems'"
    file.puts IO.read(shim_file)
    file.puts IO.read(RACK_FILE)
    file.puts "env = Rack::MockRequest.env_for(#{url.inspect})"
    file.puts "status, headers, body = app.call(env)"
    file.puts %{puts "HTTP \#{status}"}
    file.puts %{headers.each { |key, value| puts "\#{key}: \#{value}"}}
    file.puts "body.each { |part| print part }"
  end
  @terminal.run("ruby #{request_file}")
end

Then /^I should receive a Airbrake notification for rack$/ do
  Then %{I should see "You have accessed a deleted account."}
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
projectlocker_errata-0.1.1 features/step_definitions/rack_steps.rb
projectlocker_errata-0.1.0 features/step_definitions/rack_steps.rb
airbrake-3.1.6 features/step_definitions/rack_steps.rb
airbrake-3.1.5 features/step_definitions/rack_steps.rb
projectlocker_errata-0.0.2 features/step_definitions/rack_steps.rb
projectlocker_errata-0.0.1 features/step_definitions/rack_steps.rb
airbrake-3.1.4 features/step_definitions/rack_steps.rb
airbrake-3.1.3 features/step_definitions/rack_steps.rb
airbrake-3.1.2 features/step_definitions/rack_steps.rb
airbrake-3.1.1 features/step_definitions/rack_steps.rb
airbrake-3.1.0 features/step_definitions/rack_steps.rb