Browse files

Ruby 1.9 compat: switch profile_options to superclass_delegating_acce…

…ssor
  • Loading branch information...
1 parent a445cdd commit 4bcd64c9e93af2f13dc7309cd76bb764e4d7d23d @jeremy jeremy committed Aug 25, 2008
Showing with 9 additions and 8 deletions.
  1. +9 −8 activesupport/lib/active_support/testing/performance.rb
View
17 activesupport/lib/active_support/testing/performance.rb
@@ -17,14 +17,14 @@ module Performance
else
{ :benchmark => false,
:runs => 1,
- :min_percent => 0.02,
+ :min_percent => 0.01,
:metrics => [:process_time, :memory, :objects],
:formats => [:flat, :graph_html, :call_tree],
:output => 'tmp/performance' }
- end
+ end.freeze
def self.included(base)
- base.class_inheritable_hash :profile_options
+ base.superclass_delegating_accessor :profile_options
base.profile_options = DEFAULTS
end
@@ -34,16 +34,17 @@ def full_test_name
def run(result)
return if method_name =~ /^default_test$/
- self.profile_options ||= DEFAULTS
yield(self.class::STARTED, name)
@_result = result
run_warmup
- profile_options[:metrics].each do |metric_name|
- if klass = Metrics[metric_name.to_sym]
- run_profile(klass.new)
- result.add_run
+ if profile_options && metrics = profile_options[:metrics]
+ metrics.each do |metric_name|
+ if klass = Metrics[metric_name.to_sym]
+ run_profile(klass.new)
+ result.add_run
+ end
end
end

0 comments on commit 4bcd64c

Please sign in to comment.