tests: add profiling support

`rake profile` will run ruby-prof on the test suite if the ruby-prof gem
is installed.
This commit is contained in:
Jack Nagel 2012-11-17 22:59:06 -06:00
parent aecd342a2b
commit 8cc3479fb7
2 changed files with 17 additions and 4 deletions

View File

@ -1 +1,2 @@
/coverage
/prof

View File

@ -3,14 +3,13 @@ require 'rake/testtask'
require 'pathname'
TEST_DIRECTORY = Pathname.new(File.expand_path(__FILE__)).parent.realpath
TEST_FILES = FileList["#{TEST_DIRECTORY}/test_*.rb"]
Dir.chdir TEST_DIRECTORY
Dir.chdir(TEST_DIRECTORY)
task :default => :test
Rake::TestTask.new :test do |t|
Rake::TestTask.new(:test) do |t|
t.libs << Dir.pwd
t.test_files = TEST_FILES
end
@ -39,5 +38,18 @@ begin
t.output_dir = TEST_DIRECTORY+'coverage'
end
rescue LoadError
nil
end
begin
require 'rubygems'
require 'ruby-prof/task'
RubyProf::ProfileTask.new do |t|
t.libs << Dir.pwd
t.test_files = TEST_FILES
t.output_dir = TEST_DIRECTORY+'prof'
t.printer = :graph_html
t.min_percent = 2
end
rescue LoadError
end