Merge "Add sanity check to receives decorator"
This commit is contained in:
commit
88ad67a60b
@ -68,6 +68,8 @@ def receives(resource, events):
|
||||
@has_registry_receivers decorator to setup the __new__ method to
|
||||
actually register the instance methods after initialization.
|
||||
"""
|
||||
assert isinstance(events, (list, tuple, set)), 'events must be collection'
|
||||
|
||||
def decorator(f):
|
||||
for e in events:
|
||||
_REGISTERED_CLASS_METHODS[f].append((resource, e))
|
||||
|
@ -13,6 +13,7 @@
|
||||
# under the License.
|
||||
|
||||
import mock
|
||||
import testtools
|
||||
|
||||
from oslotest import base
|
||||
|
||||
@ -99,6 +100,10 @@ class CallBacksManagerTestCase(base.BaseTestCase):
|
||||
def test_object_new_not_broken(self):
|
||||
CallbackClassWithParameters('dummy')
|
||||
|
||||
def test_no_strings_in_events_arg(self):
|
||||
with testtools.ExpectedException(AssertionError):
|
||||
registry.receives(resources.PORT, events.AFTER_CREATE)
|
||||
|
||||
|
||||
class TestCallbackRegistryDispatching(base.BaseTestCase):
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user