From ef988e12d8dc4fb82f46f953cac8ad64bbc08c8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gon=C3=A7alo=20Silva?= Date: Mon, 28 Mar 2011 00:33:36 +0100 Subject: removed duplication in rubinius' benchmark code --- .../active_support/testing/performance/rubinius.rb | 24 +++++++++------------- 1 file changed, 10 insertions(+), 14 deletions(-) (limited to 'activesupport/lib/active_support') diff --git a/activesupport/lib/active_support/testing/performance/rubinius.rb b/activesupport/lib/active_support/testing/performance/rubinius.rb index c8813a22df..67d21e2a43 100644 --- a/activesupport/lib/active_support/testing/performance/rubinius.rb +++ b/activesupport/lib/active_support/testing/performance/rubinius.rb @@ -13,8 +13,8 @@ module ActiveSupport def run_gc GC.run(true) end - - class Performer; end + + class Performer; end class Profiler < Performer def run @@ -33,29 +33,25 @@ module ActiveSupport 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 -- cgit v1.2.3