Sha256: 7cda0b0e37b36c7d31001a05399685e434cb0e000fa6168dcd0ca55558ece6bd

Contents?: true

Size: 1.09 KB

Versions: 6

Compression:

Stored size: 1.09 KB

Contents

$:.unshift File.expand_path('../../lib', __FILE__)
require 'stackprof'
require 'minitest/autorun'

class ReportDumpTest < MiniTest::Test
  require 'stringio'

  def test_dump_to_stdout
    data = {}
    report = StackProf::Report.new(data)

    out, _err = capture_subprocess_io do
      report.print_dump
    end

    assert_dump data, out
  end

  def test_dump_to_file
    data = {}
    f = StringIO.new
    report = StackProf::Report.new(data)

    report.print_dump(f)

    assert_dump data, f.string
  end

  private

  def assert_dump(expected, marshal_data)
    assert_equal expected, Marshal.load(marshal_data)
  end
end

class ReportReadTest < MiniTest::Test
  require 'pathname'

  def test_from_file_read_json
    file = fixture("profile.json")
    report = StackProf::Report.from_file(file)

    assert_equal({ mode: "cpu" }, report.data)
  end

  def test_from_file_read_marshal
    file = fixture("profile.dump")
    report = StackProf::Report.from_file(file)

    assert_equal({ mode: "cpu" }, report.data)
  end

  private

  def fixture(name)
    Pathname.new(__dir__).join("fixtures", name)
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
stackprof-0.2.25 test/test_report.rb
stackprof-0.2.24 test/test_report.rb
stackprof-0.2.23 test/test_report.rb
stackprof-0.2.22 test/test_report.rb
stackprof-0.2.21 test/test_report.rb
stackprof-0.2.20 test/test_report.rb