Sha256: d13b38cf4fd8996884e9d978253f6e2fe0a0bcc6a39b16ec1359154a23d8eeb1

Contents?: true

Size: 1.07 KB

Versions: 27

Compression:

Stored size: 1.07 KB

Contents

class SinatraRouteTestApp < Sinatra::Base
  configure do
    # create a condition (sintra's version of a before_filter) that returns the
    # value that was passed into it.
    set :my_condition do |boolean|
      condition do
        halt 404 unless boolean
      end
    end
  end

  get '/user/login' do
    "please log in"
  end

  # this action will always return 404 because of the condition.
  get '/user/:id', :my_condition => false do |id|
    "Welcome #{id}"
  end
end

class SinatraRoutesTest < Test::Unit::TestCase
  include Rack::Test::Methods
  include ::NewRelic::Agent::Instrumentation::Sinatra

  def app
    SinatraRouteTestApp
  end

  def setup
    ::NewRelic::Agent.manual_start
  end

  # https://support.newrelic.com/tickets/24779
  def test_lower_priority_route_conditions_arent_applied_to_higher_priority_routes
    get '/user/login'
    assert_equal 200, last_response.status
    assert_equal 'please log in', last_response.body
  end

  def test_conditions_are_applied_to_an_action_that_uses_them
    get '/user/1'
    assert_equal 404, last_response.status
  end
end

Version data entries

27 entries across 27 versions & 4 rubygems

Version Path
wd_newrelic_rpm-3.5.8 test/multiverse/suites/sinatra/sinatra_routes_test.rb
sundawg_newrelic_rpm-3.5.8.2 test/multiverse/suites/sinatra/sinatra_routes_test.rb
sundawg_newrelic_rpm-3.5.8.1 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.8.72 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.8.70 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.8.64.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.7.59 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.7.59.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.7.58.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
wd_newrelic_rpm-3.5.6 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.7.57.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.6.55 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.6.48.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.6.46.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.6.42.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.5.39.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb
wd_newrelic_rpm-3.5.5 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.5.38 test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.5.540.dev test/multiverse/suites/sinatra/sinatra_routes_test.rb
newrelic_rpm-3.5.4.35.beta test/multiverse/suites/sinatra/sinatra_routes_test.rb