ruby-prof 2.0.3 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +615 -607
  3. data/bin/ruby-prof +336 -336
  4. data/lib/ruby-prof/printers/abstract_printer.rb +143 -143
  5. data/lib/ruby-prof/printers/flame_graph_printer.rb +80 -78
  6. data/lib/ruby-prof/version.rb +3 -3
  7. metadata +4 -85
  8. data/Rakefile +0 -98
  9. data/docs/advanced-usage.md +0 -132
  10. data/docs/alternatives.md +0 -98
  11. data/docs/architecture.md +0 -304
  12. data/docs/best-practices.md +0 -27
  13. data/docs/getting-started.md +0 -130
  14. data/docs/history.md +0 -11
  15. data/docs/index.md +0 -45
  16. data/docs/profiling-rails.md +0 -64
  17. data/docs/public/examples/example.rb +0 -33
  18. data/docs/public/examples/generate_reports.rb +0 -92
  19. data/docs/public/examples/reports/call_info.txt +0 -27
  20. data/docs/public/examples/reports/call_stack.html +0 -835
  21. data/docs/public/examples/reports/callgrind.out +0 -150
  22. data/docs/public/examples/reports/flame_graph.html +0 -408
  23. data/docs/public/examples/reports/flat.txt +0 -45
  24. data/docs/public/examples/reports/graph.dot +0 -129
  25. data/docs/public/examples/reports/graph.html +0 -1319
  26. data/docs/public/examples/reports/graph.txt +0 -100
  27. data/docs/public/examples/reports/graphviz_viewer.html +0 -1
  28. data/docs/public/images/call_stack.png +0 -0
  29. data/docs/public/images/class_diagram.png +0 -0
  30. data/docs/public/images/dot_printer.png +0 -0
  31. data/docs/public/images/flame_graph.png +0 -0
  32. data/docs/public/images/flat.png +0 -0
  33. data/docs/public/images/graph.png +0 -0
  34. data/docs/public/images/graph_html.png +0 -0
  35. data/docs/public/images/ruby-prof-logo.svg +0 -1
  36. data/docs/reports.md +0 -151
  37. data/docs/stylesheets/extra.css +0 -80
  38. data/ruby-prof.gemspec +0 -66
  39. data/test/abstract_printer_test.rb +0 -25
  40. data/test/alias_test.rb +0 -203
  41. data/test/call_tree_builder.rb +0 -126
  42. data/test/call_tree_test.rb +0 -94
  43. data/test/call_tree_visitor_test.rb +0 -27
  44. data/test/call_trees_test.rb +0 -66
  45. data/test/duplicate_names_test.rb +0 -32
  46. data/test/dynamic_method_test.rb +0 -50
  47. data/test/enumerable_test.rb +0 -23
  48. data/test/exceptions_test.rb +0 -24
  49. data/test/exclude_methods_test.rb +0 -363
  50. data/test/exclude_threads_test.rb +0 -48
  51. data/test/fiber_test.rb +0 -195
  52. data/test/gc_test.rb +0 -104
  53. data/test/inverse_call_tree_test.rb +0 -174
  54. data/test/line_number_test.rb +0 -563
  55. data/test/marshal_test.rb +0 -144
  56. data/test/measure_allocations.rb +0 -26
  57. data/test/measure_allocations_test.rb +0 -1511
  58. data/test/measure_process_time_test.rb +0 -3286
  59. data/test/measure_times.rb +0 -56
  60. data/test/measure_wall_time_test.rb +0 -774
  61. data/test/measurement_test.rb +0 -82
  62. data/test/merge_test.rb +0 -146
  63. data/test/method_info_test.rb +0 -100
  64. data/test/multi_printer_test.rb +0 -52
  65. data/test/no_method_class_test.rb +0 -15
  66. data/test/pause_resume_test.rb +0 -171
  67. data/test/prime.rb +0 -54
  68. data/test/prime_script.rb +0 -6
  69. data/test/printer_call_stack_test.rb +0 -28
  70. data/test/printer_call_tree_test.rb +0 -30
  71. data/test/printer_flame_graph_test.rb +0 -82
  72. data/test/printer_flat_test.rb +0 -99
  73. data/test/printer_graph_html_test.rb +0 -62
  74. data/test/printer_graph_test.rb +0 -42
  75. data/test/printers_test.rb +0 -162
  76. data/test/printing_recursive_graph_test.rb +0 -81
  77. data/test/profile_test.rb +0 -101
  78. data/test/rack_test.rb +0 -103
  79. data/test/recursive_test.rb +0 -796
  80. data/test/scheduler.rb +0 -367
  81. data/test/singleton_test.rb +0 -39
  82. data/test/stack_printer_test.rb +0 -61
  83. data/test/start_stop_test.rb +0 -106
  84. data/test/test_helper.rb +0 -24
  85. data/test/thread_test.rb +0 -229
  86. data/test/unique_call_path_test.rb +0 -123
  87. data/test/yarv_test.rb +0 -56
data/test/rack_test.rb DELETED
@@ -1,103 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: UTF-8
3
-
4
- require File.expand_path('../test_helper', __FILE__)
5
-
6
- class FakeRackApp
7
- def call(env)
8
- end
9
- end
10
-
11
- module Rack
12
- class Request
13
- def initialize(env)
14
- if env == :fake_env
15
- @env = {}
16
- else
17
- @env = env
18
- end
19
- end
20
-
21
- def path
22
- @env[:path] || '/path/to/resource.json'
23
- end
24
- end
25
- end
26
-
27
- class RackTest < TestCase
28
- def test_pathname_path
29
- path = Pathname.new(Dir.mktmpdir)
30
- adapter = Rack::RubyProf.new(FakeRackApp.new, path: path)
31
-
32
- adapter.call(:fake_env)
33
-
34
- file_path = ::File.join(path.to_s, 'path-to-resource.json-flat.txt')
35
- assert(File.exist?(file_path))
36
- end
37
-
38
- def test_create_print_path
39
- path = Dir.mktmpdir
40
- Dir.delete(path)
41
-
42
- Rack::RubyProf.new(FakeRackApp.new, path: path)
43
-
44
- assert(Dir.exist?(path))
45
- end
46
-
47
- def test_create_profile_reports
48
- path = Dir.mktmpdir
49
-
50
- adapter = Rack::RubyProf.new(FakeRackApp.new, path: path)
51
-
52
- adapter.call(:fake_env)
53
-
54
- %w(flat.txt graph.txt graph.html call_stack.html).each do |base_name|
55
- file_path = ::File.join(path, "path-to-resource.json-#{base_name}")
56
- assert(File.exist?(file_path))
57
- end
58
- end
59
-
60
- def test_skip_paths
61
- path = Dir.mktmpdir
62
-
63
- adapter = Rack::RubyProf.new(FakeRackApp.new, path: path, skip_paths: [%r{\.json$}])
64
-
65
- adapter.call(:fake_env)
66
-
67
- %w(flat.txt graph.txt graph.html call_stack.html).each do |base_name|
68
- file_path = ::File.join(path, "path-to-resource.json-#{base_name}")
69
- assert(!File.exist?(file_path))
70
- end
71
- end
72
-
73
- def test_only_paths
74
- path = Dir.mktmpdir
75
-
76
- adapter = Rack::RubyProf.new(FakeRackApp.new, path: path, only_paths: [%r{\.json$}])
77
-
78
- adapter.call({path: '/path/to/resource.json'})
79
-
80
- %w(flat.txt graph.txt graph.html call_stack.html).each do |base_name|
81
- file_path = ::File.join(path, "path-to-resource.json-#{base_name}")
82
- assert(File.exist?(file_path))
83
- end
84
-
85
- adapter.call({path: '/path/to/resource.html'})
86
- %w(flat.txt graph.txt graph.html call_stack.html).each do |base_name|
87
- file_path = ::File.join(path, "path-to-resource.html-#{base_name}")
88
- assert(!File.exist?(file_path))
89
- end
90
- end
91
-
92
- def test_allows_lazy_filename_setting
93
- path = Dir.mktmpdir
94
-
95
- printer = {::RubyProf::FlatPrinter => lambda { 'dynamic.txt' }}
96
- adapter = Rack::RubyProf.new(FakeRackApp.new, path: path, printers: printer)
97
-
98
- adapter.call(:fake_env)
99
-
100
- file_path = ::File.join(path, 'path-to-resource.json-dynamic.txt')
101
- assert(File.exist?(file_path))
102
- end
103
- end