# File lib/active_support/testing/performance.rb, line 192 192: def record 193: return unless @supported 194: 195: klasses = profile_options[:formats].map { |f| RubyProf.const_get("#{f.to_s.camelize}Printer") }.compact 196: 197: klasses.each do |klass| 198: fname = output_filename(klass) 199: FileUtils.mkdir_p(File.dirname(fname)) 200: File.open(fname, 'wb') do |file| 201: klass.new(@data).print(file, profile_options.slice(:min_percent)) 202: end 203: end 204: end
# File lib/active_support/testing/performance.rb, line 184 184: def report 185: if @supported 186: super 187: else 188: '%20s: unsupported' % @metric.name 189: end 190: end
# File lib/active_support/testing/performance.rb, line 173 173: def run 174: return unless @supported 175: 176: RubyProf.measure_mode = @metric.measure_mode 177: RubyProf.start 178: RubyProf.pause 179: profile_options[:runs].to_i.times { run_test(@metric, :profile) } 180: @data = RubyProf.stop 181: @total = @data.threads.values.sum(0) { |method_infos| method_infos.max.total_time } 182: end
# File lib/active_support/testing/performance.rb, line 207 207: def output_filename(printer_class) 208: suffix = 209: case printer_class.name.demodulize 210: when 'FlatPrinter'; 'flat.txt' 211: when 'FlatPrinterWithLineNumbers'; 'flat_line_numbers.txt' 212: when 'GraphPrinter'; 'graph.txt' 213: when 'GraphHtmlPrinter'; 'graph.html' 214: when 'GraphYamlPrinter'; 'graph.yml' 215: when 'CallTreePrinter'; 'tree.txt' 216: when 'CallStackPrinter'; 'stack.html' 217: when 'DotPrinter'; 'graph.dot' 218: else printer_class.name.sub(/Printer$/, '').underscore 219: end 220: 221: "#{super()}_#{suffix}" 222: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.