diff options
author | Justin George <justin.george@gmail.com> | 2010-04-27 21:16:06 -0700 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-05-02 22:45:54 +0200 |
commit | 731d4392e478ff5526b595074d9caa999da8bd0c (patch) | |
tree | d44fc64ddc208880501ef00f3f916d04d8e28141 /railties | |
parent | 109d3ee38d1c39f0e27bc827065427635d6396b2 (diff) | |
download | rails-731d4392e478ff5526b595074d9caa999da8bd0c.tar.gz rails-731d4392e478ff5526b595074d9caa999da8bd0c.tar.bz2 rails-731d4392e478ff5526b595074d9caa999da8bd0c.zip |
Change event namespace ordering to most-significant first [#4504 state:resolved]
More work still needs to be done on some of these names
(render_template.action_view and render_template!.action_view particularly)
but this allows (for example) /^sql/ to subscribe to all
the various ORMs without further modification
Signed-off-by: José Valim <jose.valim@gmail.com>
Diffstat (limited to 'railties')
-rw-r--r-- | railties/lib/rails/log_subscriber.rb | 6 | ||||
-rw-r--r-- | railties/test/application/initializers/notifications_test.rb | 2 | ||||
-rw-r--r-- | railties/test/log_subscriber_test.rb | 18 |
3 files changed, 13 insertions, 13 deletions
diff --git a/railties/lib/rails/log_subscriber.rb b/railties/lib/rails/log_subscriber.rb index 42697d2e32..145c7e0ace 100644 --- a/railties/lib/rails/log_subscriber.rb +++ b/railties/lib/rails/log_subscriber.rb @@ -22,7 +22,7 @@ module Rails # # Rails::LogSubscriber.add :active_record, ActiveRecord::Railtie::LogSubscriber.new # - # So whenever a "active_record.sql" notification arrive to Rails::LogSubscriber, + # So whenever a "sql.active_record" notification arrive to Rails::LogSubscriber, # it will properly dispatch the event (ActiveSupport::Notifications::Event) to # the sql method. # @@ -54,7 +54,7 @@ module Rails log_subscribers << log_subscriber log_subscriber.public_methods(false).each do |event| - notifier.subscribe("#{namespace}.#{event}") do |*args| + notifier.subscribe("#{event}.#{namespace}") do |*args| next if log_subscriber.logger.nil? begin @@ -105,4 +105,4 @@ module Rails "#{bold}#{color}#{text}#{CLEAR}" end end -end
\ No newline at end of file +end diff --git a/railties/test/application/initializers/notifications_test.rb b/railties/test/application/initializers/notifications_test.rb index b99cf5bb4f..276950c78c 100644 --- a/railties/test/application/initializers/notifications_test.rb +++ b/railties/test/application/initializers/notifications_test.rb @@ -38,7 +38,7 @@ module ApplicationTests ActiveRecord::Base.logger = logger = MockLogger.new # Mimic ActiveRecord notifications - instrument "active_record.sql", :name => "SQL", :sql => "SHOW tables" + instrument "sql.active_record", :name => "SQL", :sql => "SHOW tables" wait assert_equal 1, logger.logged.size diff --git a/railties/test/log_subscriber_test.rb b/railties/test/log_subscriber_test.rb index 49288cfaa8..a3a755ae62 100644 --- a/railties/test/log_subscriber_test.rb +++ b/railties/test/log_subscriber_test.rb @@ -61,21 +61,21 @@ class SyncLogSubscriberTest < ActiveSupport::TestCase def test_event_is_sent_to_the_registered_class Rails::LogSubscriber.add :my_log_subscriber, @log_subscriber - instrument "my_log_subscriber.some_event" + instrument "some_event.my_log_subscriber" wait - assert_equal %w(my_log_subscriber.some_event), @logger.logged(:info) + assert_equal %w(some_event.my_log_subscriber), @logger.logged(:info) end def test_event_is_an_active_support_notifications_event Rails::LogSubscriber.add :my_log_subscriber, @log_subscriber - instrument "my_log_subscriber.some_event" + instrument "some_event.my_log_subscriber" wait assert_kind_of ActiveSupport::Notifications::Event, @log_subscriber.event end def test_does_not_send_the_event_if_it_doesnt_match_the_class Rails::LogSubscriber.add :my_log_subscriber, @log_subscriber - instrument "my_log_subscriber.unknown_event" + instrument "unknown_event.my_log_subscriber" wait # If we get here, it means that NoMethodError was not raised. end @@ -84,7 +84,7 @@ class SyncLogSubscriberTest < ActiveSupport::TestCase Rails.logger = nil @log_subscriber.expects(:some_event).never Rails::LogSubscriber.add :my_log_subscriber, @log_subscriber - instrument "my_log_subscriber.some_event" + instrument "some_event.my_log_subscriber" wait end @@ -110,14 +110,14 @@ class SyncLogSubscriberTest < ActiveSupport::TestCase def test_logging_does_not_die_on_failures Rails::LogSubscriber.add :my_log_subscriber, @log_subscriber - instrument "my_log_subscriber.puke" - instrument "my_log_subscriber.some_event" + instrument "puke.my_log_subscriber" + instrument "some_event.my_log_subscriber" wait assert_equal 1, @logger.logged(:info).size - assert_equal 'my_log_subscriber.some_event', @logger.logged(:info).last + assert_equal 'some_event.my_log_subscriber', @logger.logged(:info).last assert_equal 1, @logger.logged(:error).size - assert_equal 'Could not log "my_log_subscriber.puke" event. RuntimeError: puke', @logger.logged(:error).last + assert_equal 'Could not log "puke.my_log_subscriber" event. RuntimeError: puke', @logger.logged(:error).last end end
\ No newline at end of file |