Permalink
Browse files

removed duplication in rubinius' benchmark code

  • Loading branch information...
1 parent 15bff5a commit ef988e12d8dc4fb82f46f953cac8ad64bbc08c8a @goncalossilva goncalossilva committed Mar 27, 2011
Showing with 10 additions and 14 deletions.
  1. +10 −14 activesupport/lib/active_support/testing/performance/rubinius.rb
@@ -13,8 +13,8 @@ module Performance
def run_gc
GC.run(true)
end
-
- class Performer; end
+
+ class Performer; end
class Profiler < Performer
def run
@@ -33,29 +33,25 @@ def report
def record
if(profile_options[:formats].include?(:flat))
- File.open(output_filename('FlatPrinter'), 'wb') do |file|
+ create_path_and_open_file(:flat) do |file|
@profiler.show(file)
end
end
if(profile_options[:formats].include?(:graph))
- @profiler.set_options({:graph => true})
- File.open(output_filename('GraphPrinter'), 'wb') do |file|
+ create_path_and_open_file(:graph) do |file|
@profiler.show(file)
end
end
end
protected
- def output_filename(printer)
- suffix =
- case printer
- when 'FlatPrinter'; 'flat.txt'
- when 'GraphPrinter'; 'graph.txt'
- else printer.sub(/Printer$/, '').underscore
- end
-
- "#{super()}_#{suffix}"
+ def create_path_and_open_file(printer_name)
+ fname = "#{output_filename}_#{printer_name}.txt"
+ FileUtils.mkdir_p(fname)
+ File.open(fname, 'wb') do |file|
+ yield(file)
+ end
end
end

0 comments on commit ef988e1

Please sign in to comment.