Sha256: 24bc47f08c642eed1609806eada31442737a3078cf730e028fb51f368f0ef854

Contents?: true

Size: 1.24 KB

Versions: 38

Compression:

Stored size: 1.24 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__, "..", "..", "..", "..", "test_helper"))
require 'new_relic/agent/vm/monotonic_gc_profiler'

class MonotonicGCProfilerTest < Minitest::Test
  attr_reader :profiler

  def setup
    @profiler = NewRelic::Agent::VM::MonotonicGCProfiler.new
    NewRelic::LanguageSupport.stubs(:gc_profiler_enabled?).returns(true)
  end

  if NewRelic::LanguageSupport.gc_profiler_usable?
    def test_total_time_isnt_nil
      refute_nil profiler.total_time_s
    end

    def test_total_time_reads_from_gc_profiler
      GC::Profiler.stubs(:total_time).returns(0)
      assert_equal 0, profiler.total_time_s

      GC::Profiler.stubs(:total_time).returns(100)
      assert_equal 100, profiler.total_time_s
    end

    def test_total_time_resets_underlying_gc_profiler
      GC::Profiler.expects(:clear).once
      profiler.total_time_s
    end

    def test_total_time_does_not_raise_if_called_when_not_enabled
      NewRelic::LanguageSupport.stubs(:gc_profiler_enabled?).returns(false)
      GC::Profiler.expects(:total_time).never

      profiler.total_time_s
    end
  end

end

Version data entries

38 entries across 38 versions & 2 rubygems

Version Path
newrelic_rpm-4.1.0.333 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-4.0.0.332 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.18.1.330 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.18.0.329 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.17.2.327 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.17.1.326 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.17.0.325 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.16.3.323 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.16.2.321 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.16.1.320 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.16.0.318 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.15.2.317/test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.15.2.317 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.15.1.316 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.15.0.314 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.14.3.313 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.14.2.312 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.14.1.311 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.14.0.305 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb
newrelic_rpm-3.13.2.302 test/new_relic/agent/vm/monotonic_gc_profiler_test.rb