diff options
| author | Russell Bryant <rbryant@redhat.com> | 2012-12-01 09:51:17 -0500 |
|---|---|---|
| committer | Russell Bryant <rbryant@redhat.com> | 2012-12-01 10:16:41 -0500 |
| commit | 202f56882928531ccfb10cff1426cb3a35e512a3 (patch) | |
| tree | 9fe5bc4a6e9f51f76727f451e7b28f5d8cd1e71c /tests | |
| parent | 1fd7694e96da4c7e461d3c966fab1e81ee57c315 (diff) | |
Use json instead of jsonutils in rpc.impl_fake.
The fake rpc backend uses json just to make sure the data that was
passed in can be serialized. Our jsonutils module makes this check a
no-op, because it will automatically convert the data we pass in as
primitive types if needed. Change this module back to using the json
module directly and add a comment about why we don't use jsonutils here.
Also add a test that ensures that non-primitive types raise an exception
in the fake rpc driver.
Change-Id: I61f46242cb98c875a94d86283e30efb24cc580ad
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/unit/rpc/test_fake.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/unit/rpc/test_fake.py b/tests/unit/rpc/test_fake.py index 8ceac47..b3079d6 100644 --- a/tests/unit/rpc/test_fake.py +++ b/tests/unit/rpc/test_fake.py @@ -22,11 +22,25 @@ Unit Tests for remote procedure calls using fake_impl import eventlet eventlet.monkey_patch() +from openstack.common import cfg +from openstack.common import rpc from openstack.common.rpc import impl_fake from tests.unit.rpc import common +CONF = cfg.CONF + + class RpcFakeTestCase(common.BaseRpcTestCase): def setUp(self): self.rpc = impl_fake super(RpcFakeTestCase, self).setUp() + + def test_non_primitive_raises(self): + class Foo(object): + pass + + self.assertRaises(TypeError, self.rpc.cast, CONF, self.context, + 'foo', {'x': Foo()}) + self.assertRaises(TypeError, self.rpc.call, CONF, self.context, + 'foo', {'x': Foo()}) |
