Sha256: 0d3548183e4c50edbde72cb49f39525d42b02df5d4bdc537ae6ba4534f815f5a

Contents?: true

Size: 1.18 KB

Versions: 42

Compression:

Stored size: 1.18 KB

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 File.expand_path(File.join(File.dirname(__FILE__),'..','..','test_helper'))
require 'new_relic/agent/vm'

class NewRelic::Agent::VMTestCase < Minitest::Test
  attr_reader :vm, :snapshot

  def setup
    @vm = NewRelic::Agent::VM.vm
    @snapshot = NewRelic::Agent::VM.snapshot
  end

  def test_gets_snapshot
    refute_nil snapshot
  end

  EXPECTED_SNAPSHOT_VALUES = [
    :gc_runs,
    :total_allocated_object,
    :major_gc_count,
    :minor_gc_count,
    :heap_live,
    :heap_free,
    :method_cache_invalidations,
    :constant_cache_invalidations,
    :thread_count
  ]

  EXPECTED_SNAPSHOT_VALUES.each do |val|
    define_method("test_snapshot_has_#{val}") do
      assert_correct_value_for(val)
    end
  end

  # A VM snapshot will either support a value and have something non-nil,
  # or it will not support it in which case the method exists but must be nil!
  def assert_correct_value_for(meth)
    if vm.supports?(meth)
      refute_nil snapshot.send(meth)
    else
      assert_nil snapshot.send(meth)
    end
  end
end

Version data entries

42 entries across 42 versions & 2 rubygems

Version Path
newrelic_rpm-3.13.1.300 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.13.0.299 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.12.1.298 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.12.0.288 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.11.2.286 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.11.1.284 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.11.0.283 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.10.0.279 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.9.275 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.8.273 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.7.266 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.6.257 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.5.251 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.4.245 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.3.241 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.2.239 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.1.236 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.9.0.229 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.8.1.221 test/new_relic/agent/vm_test.rb
newrelic_rpm-3.8.0.218 test/new_relic/agent/vm_test.rb