diff options
author | Eric Windisch <eric@cloudscaling.com> | 2013-01-24 16:28:43 -0500 |
---|---|---|
committer | Eric Windisch <eric@cloudscaling.com> | 2013-03-01 10:54:05 -0500 |
commit | cb26af207dbcea5fc88ad5f66da80fba5d76cb04 (patch) | |
tree | 9da183e01a2da3f99bb904cbd2b9c15863f2c7b8 /tests/unit/rpc/test_matchmaker.py | |
parent | 2b418be864a5aa5ba135f7651e83051cf3bf9ce6 (diff) | |
download | oslo-cb26af207dbcea5fc88ad5f66da80fba5d76cb04.tar.gz oslo-cb26af207dbcea5fc88ad5f66da80fba5d76cb04.tar.xz oslo-cb26af207dbcea5fc88ad5f66da80fba5d76cb04.zip |
Redis-based matchmaker
Introduces a reference implementation
of a matchmaker (based on redis) that
supports dynamic host/topic registrations,
host expiration, and hooks for consuming
applications to acknowledge or neg-acknowledge
topic.host service availability.
Implements blueprint advanced-matchmaking
Change-Id: I8608d2089fca118b0e369f2eb5c6aedacf6821fe
Diffstat (limited to 'tests/unit/rpc/test_matchmaker.py')
-rw-r--r-- | tests/unit/rpc/test_matchmaker.py | 36 |
1 files changed, 5 insertions, 31 deletions
diff --git a/tests/unit/rpc/test_matchmaker.py b/tests/unit/rpc/test_matchmaker.py index 08c2387..bcc7ef8 100644 --- a/tests/unit/rpc/test_matchmaker.py +++ b/tests/unit/rpc/test_matchmaker.py @@ -17,41 +17,14 @@ import logging from openstack.common.rpc import matchmaker +from tests.unit.rpc import matchmaker_common as common from tests import utils LOG = logging.getLogger(__name__) -class _MatchMakerDirectedTopicTestCase(object): - """Mix-in to test directed topics.""" - def test_firstval_is_directed_topic(self): - matches = self.driver.queues(self.topic) - topics = map(lambda x: x[0], matches) - - for topic in topics: - self.assertTrue('.' in topic) - - -class _MatchMakerTestCase(_MatchMakerDirectedTopicTestCase): - def test_valid_host_matches(self): - queues = self.driver.queues(self.topic) - matched_hosts = map(lambda x: x[1], queues) - - for host in matched_hosts: - self.assertTrue(host in self.hosts) - - def test_fanout_host_matches(self): - """For known hosts, see if they're in fanout.""" - queues = self.driver.queues("fanout~" + self.topic) - matched_hosts = map(lambda x: x[1], queues) - - LOG.info("Received result from matchmaker: %s", queues) - for host in self.hosts: - self.assertTrue(host in matched_hosts) - - -class MatchMakerFileTestCase(utils.BaseTestCase, _MatchMakerTestCase): +class MatchMakerFileTestCase(utils.BaseTestCase, common._MatchMakerTestCase): def setUp(self): super(MatchMakerFileTestCase, self).setUp() self.topic = "test" @@ -62,7 +35,8 @@ class MatchMakerFileTestCase(utils.BaseTestCase, _MatchMakerTestCase): self.driver = matchmaker.MatchMakerRing(ring) -class MatchMakerLocalhostTestCase(utils.BaseTestCase, _MatchMakerTestCase): +class MatchMakerLocalhostTestCase(utils.BaseTestCase, + common._MatchMakerTestCase): def setUp(self): super(MatchMakerLocalhostTestCase, self).setUp() self.driver = matchmaker.MatchMakerLocalhost() @@ -70,7 +44,7 @@ class MatchMakerLocalhostTestCase(utils.BaseTestCase, _MatchMakerTestCase): self.hosts = ['localhost'] -class MatchMakerDirectExchangeTestCase(utils.BaseTestCase, +class MatchMakerDirectExchangeTestCase(utils.BaseTestCase, common. _MatchMakerDirectedTopicTestCase): """Test lookups against a directed topic.""" def setUp(self): |