Sha256: 911a95d2793eea6fb3a52ad21a316b664aa298a111472dd70b67ed160b15545e

Contents?: true

Size: 1.72 KB

Versions: 19

Compression:

Stored size: 1.72 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__),'..', 'test_helper'))

# Test logic around detecting or configuring dispatcher
class DispatcherTest < Test::Unit::TestCase

  def setup
    NewRelic::Agent.shutdown
    NewRelic::Agent.reset_config
  end

  def assert_dispatcher_reported_to_environment_report(dispatcher)
    NewRelic::Control.instance.local_env.gather_environment_info
    key, value = NewRelic::Control.instance.local_env.snapshot.detect do |(k, v)|
      k == "Dispatcher"
    end
    assert_equal dispatcher.to_s, value
  end

  def test_detects_dispatcher_via_loaded_libraries
    class << self
      module ::PhusionPassenger
      end
    end
    assert_equal :passenger, NewRelic::Agent.config[:dispatcher]
    assert_dispatcher_reported_to_environment_report :passenger
  ensure
    Object.send(:remove_const, :PhusionPassenger)
  end

  def test_detects_dispatcher_via_ENV_NEW_RELIC_DISPATCHER
    ENV['NEW_RELIC_DISPATCHER'] = "foobared"
    NewRelic::Agent.reset_config
    assert_equal :foobared, NewRelic::Agent.config[:dispatcher]
    assert_dispatcher_reported_to_environment_report :foobared
  ensure
    ENV['NEW_RELIC_DISPATCHER'] = nil
  end

  def test_detects_dispatcher_via_ENV_NEWRELIC_DISPATCHER
    ENV['NEWRELIC_DISPATCHER'] = "bazbang"
    NewRelic::Agent.reset_config
    assert_equal :bazbang, NewRelic::Agent.config[:dispatcher]
    assert_dispatcher_reported_to_environment_report :bazbang
  ensure
    ENV['NEWRELIC_DISPATCHER'] = nil
  end

  def test_detects_dispatcher_based_on_arguments_to_manual_start
    NewRelic::Agent.manual_start(:dispatcher   => :resque)
    assert_equal :resque, NewRelic::Agent.config[:dispatcher]
    assert_dispatcher_reported_to_environment_report :resque
  end

end

Version data entries

19 entries across 19 versions & 3 rubygems

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