Sha256: 34d3c4641adfa8882b9a1a30db8a7636cf6a72ca09d26a214590ef725a8c52d9

Contents?: true

Size: 1000 Bytes

Versions: 4

Compression:

Stored size: 1000 Bytes

Contents

#!/usr/bin/env ruby
# encoding: UTF-8

require File.expand_path('../test_helper', __FILE__)
require 'fileutils'
require 'tmpdir'
require_relative 'prime'

# --  Tests ----
class PrinterCallTreeTest < TestCase
  def setup
    # WALL_TIME so we can use sleep in our test and get same measurements on linux and windows
    RubyProf::measure_mode = RubyProf::WALL_TIME
    @result = RubyProf.profile do
      run_primes(1000, 5000)
    end
  end

  def test_call_tree_string
    printer = RubyProf::CallTreePrinter.new(@result)

    printer.print(:profile => "lolcat", :path => Dir.tmpdir)
    main_output_file_name = File.join(Dir.tmpdir, "lolcat.callgrind.out.#{$$}")
    assert(File.exist?(main_output_file_name))
    output = File.read(main_output_file_name)
    assert_match(/fn=Object::find_primes/i, output)
    assert_match(/events: wall_time/i, output)
    refute_match(/d\d\d\d\d\d/, output) # old bug looked [in error] like Object::run_primes(d5833116)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ruby-prof-1.4.3-x64-mingw32 test/printer_call_tree_test.rb
ruby-prof-1.4.3 test/printer_call_tree_test.rb
ruby-prof-1.4.2-x64-mingw32 test/printer_call_tree_test.rb
ruby-prof-1.4.2 test/printer_call_tree_test.rb