diff options
author | Eileen M. Uchitelle <eileencodes@gmail.com> | 2015-12-06 13:23:38 -0500 |
---|---|---|
committer | Eileen M. Uchitelle <eileencodes@gmail.com> | 2015-12-06 13:23:38 -0500 |
commit | 09dde024d3b85a74d2efc233fc309089757a28cf (patch) | |
tree | 4125a00dae22d5347d547149baf3b6597679800f /activesupport/test | |
parent | 67688aa73953a1d348232d76e84a8ec387519624 (diff) | |
parent | ab3c4a4083cce34131eeb23df42041fafe063fc3 (diff) | |
download | rails-09dde024d3b85a74d2efc233fc309089757a28cf.tar.gz rails-09dde024d3b85a74d2efc233fc309089757a28cf.tar.bz2 rails-09dde024d3b85a74d2efc233fc309089757a28cf.zip |
Merge pull request #22428 from thedarkone/subs-notif
Subscribing to notifications while inside the said instrumented section
Diffstat (limited to 'activesupport/test')
-rw-r--r-- | activesupport/test/notifications_test.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/activesupport/test/notifications_test.rb b/activesupport/test/notifications_test.rb index f729f0a95b..d9cc392ac9 100644 --- a/activesupport/test/notifications_test.rb +++ b/activesupport/test/notifications_test.rb @@ -42,6 +42,21 @@ module Notifications ActiveSupport::Notifications.instrument(name) assert_equal expected, events end + + def test_subsribing_to_instrumentation_while_inside_it + # the repro requires that there are no evented subscribers for the "foo" event, + # so we have to duplicate some of the setup code + old_notifier = ActiveSupport::Notifications.notifier + ActiveSupport::Notifications.notifier = ActiveSupport::Notifications::Fanout.new + + ActiveSupport::Notifications.subscribe('foo', TestSubscriber.new) + + ActiveSupport::Notifications.instrument('foo') do + ActiveSupport::Notifications.subscribe('foo') {} + end + ensure + ActiveSupport::Notifications.notifier = old_notifier + end end class UnsubscribeTest < TestCase |