Sha256: c94a9fcadc51a4493c7aef072f177b76d21d6eb178d8fbfba566339a2b23b03c

Contents?: true

Size: 902 Bytes

Versions: 6

Compression:

Stored size: 902 Bytes

Contents

# encoding: utf-8
# This file is distributed under New Relic's license terms.
# See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details.

require 'newrelic_rpm'
require 'multiverse_helpers'

class KeepaliveTest < Minitest::Test
  include MultiverseHelpers

  def test_can_reestablish_connection
    setup_agent(:aggressive_keepalive => true)

    NewRelic::Agent.agent.send(:transmit_data)

    # This is the closest I can easily get to closing the underlying TCP
    # connection from the server side in between harvests.
    conn0 = NewRelic::Agent.agent.service.http_connection
    conn0.instance_variable_get(:@socket).close

    NewRelic::Agent.agent.send(:transmit_data)

    conn1 = NewRelic::Agent.agent.service.http_connection

    metric_data_calls = $collector.calls_for('metric_data')
    assert_equal(2, metric_data_calls.size)
    assert_same(conn0, conn1)
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
newrelic_rpm-3.9.7.266 test/multiverse/suites/agent_only/keepalive_test.rb
newrelic_rpm-3.9.6.257 test/multiverse/suites/agent_only/keepalive_test.rb
newrelic_rpm-3.9.5.251 test/multiverse/suites/agent_only/keepalive_test.rb
newrelic_rpm-3.9.4.245 test/multiverse/suites/agent_only/keepalive_test.rb
newrelic_rpm-3.9.3.241 test/multiverse/suites/agent_only/keepalive_test.rb
newrelic_rpm-3.9.2.239 test/multiverse/suites/agent_only/keepalive_test.rb