mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	When you change this to true, you may need to add more tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			27 lines
		
	
	
	
		
			570 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
	
		
			570 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
# frozen_string_literal: false
 | 
						|
require_relative 'helper'
 | 
						|
 | 
						|
module DTrace
 | 
						|
  class TestGC < TestCase
 | 
						|
    %w{
 | 
						|
      gc-mark-begin
 | 
						|
      gc-mark-end
 | 
						|
      gc-sweep-begin
 | 
						|
      gc-sweep-end
 | 
						|
    }.each do |probe_name|
 | 
						|
      define_method(:"test_#{probe_name.gsub(/-/, '_')}") do
 | 
						|
	probe = "ruby$target:::#{probe_name} { printf(\"#{probe_name}\\n\"); }"
 | 
						|
 | 
						|
	trap_probe(probe, ruby_program) { |_, _, saw|
 | 
						|
	  assert_operator saw.length, :>, 0
 | 
						|
	}
 | 
						|
 | 
						|
      end
 | 
						|
    end
 | 
						|
 | 
						|
    private
 | 
						|
    def ruby_program
 | 
						|
      "100000.times { Object.new }"
 | 
						|
    end
 | 
						|
  end
 | 
						|
end if defined?(DTrace::TestCase)
 |