summaryrefslogtreecommitdiffstats
path: root/tests/unit/rpc/test_zmq.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/rpc/test_zmq.py')
-rw-r--r--tests/unit/rpc/test_zmq.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/unit/rpc/test_zmq.py b/tests/unit/rpc/test_zmq.py
index c197c35..d42a07d 100644
--- a/tests/unit/rpc/test_zmq.py
+++ b/tests/unit/rpc/test_zmq.py
@@ -21,6 +21,7 @@ Unit Tests for remote procedure calls using zeromq
import eventlet
eventlet.monkey_patch()
+import itertools
import logging
import os
import socket
@@ -100,6 +101,24 @@ class _RpcZmqBaseTestCase(common.BaseRpcTestCase):
if self.reactor:
self.reactor.close()
+ def test_cast_pathsep_topic(self):
+ """Ensure topics with a contain a path separator result in error."""
+ tmp_topic = self.topic_nested
+
+ # All OS path separators
+ badchars = itertools.ifilter(None,
+ set((os.sep, os.altsep, '/', '\\')))
+ for char in badchars:
+ self.topic_nested = char.join(('hello', 'world'))
+ try:
+ # TODO(ewindisch): Determine which exception is raised.
+ # pending bug #1121348
+ self.assertRaises(Exception, self._test_cast,
+ common.TestReceiver.echo, 42, {"value": 42},
+ fanout=False)
+ finally:
+ self.topic_nested = tmp_topic
+
class RpcZmqBaseTopicTestCase(_RpcZmqBaseTestCase):
"""