diff options
Diffstat (limited to 'cpp/src/tests/federation.py')
-rwxr-xr-x | cpp/src/tests/federation.py | 86 |
1 files changed, 25 insertions, 61 deletions
diff --git a/cpp/src/tests/federation.py b/cpp/src/tests/federation.py index 9b0be8f979..d8b91061a8 100755 --- a/cpp/src/tests/federation.py +++ b/cpp/src/tests/federation.py @@ -19,48 +19,25 @@ # import sys -from qpid.testlib import TestBase010, testrunner +from qpid.testlib import TestBase010 from qpid.datatypes import Message from qpid.queue import Empty from time import sleep -def add_module(args=sys.argv[1:]): - for a in args: - if a.startswith("federation"): - return False - return True - -def scan_args(name, default=None, args=sys.argv[1:]): - if (name in args): - pos = args.index(name) - return args[pos + 1] - elif default: - return default - else: - print "Please specify extra argument: %s" % name - sys.exit(2) - -def extract_args(name, args): - if (name in args): - pos = args.index(name) - del args[pos:pos+2] - else: - return None - -def remote_host(): - return scan_args("--remote-host", "localhost") +class FederationTests(TestBase010): -def remote_port(): - return int(scan_args("--remote-port")) + def remote_host(self): + return self.defines.get("remote-host", "localhost") -class FederationTests(TestBase010): + def remote_port(self): + return int(self.defines["remote-port"]) def test_bridge_create_and_close(self): self.startQmf(); qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -84,7 +61,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -101,7 +78,7 @@ class FederationTests(TestBase010): sleep(6) #send messages to remote broker and confirm it is routed to local broker - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_pull_from_exchange") for i in range(1, 11): @@ -131,7 +108,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -141,7 +118,7 @@ class FederationTests(TestBase010): bridge = qmf.getObjects(_class="bridge")[0] #setup queue to receive messages from remote broker - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_push_to_exchange") r_session.queue_declare(queue="fed1", exclusive=True, auto_delete=True) r_session.exchange_bind(queue="fed1", exchange="amq.fanout") @@ -175,7 +152,7 @@ class FederationTests(TestBase010): session = self.session #setup queue on remote broker and add some messages - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_pull_from_queue") r_session.queue_declare(queue="my-bridge-queue", auto_delete=True) for i in range(1, 6): @@ -191,7 +168,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -227,7 +204,7 @@ class FederationTests(TestBase010): self.assertEqual(len(qmf.getObjects(_class="link")), 0) def test_tracing_automatic(self): - remoteUrl = "%s:%d" % (remote_host(), remote_port()) + remoteUrl = "%s:%d" % (self.remote_host(), self.remote_port()) self.startQmf() l_broker = self.qmf_broker r_broker = self.qmf.addBroker(remoteUrl) @@ -235,8 +212,8 @@ class FederationTests(TestBase010): l_brokerObj = self.qmf.getObjects(_class="broker", _broker=l_broker)[0] r_brokerObj = self.qmf.getObjects(_class="broker", _broker=r_broker)[0] - l_res = l_brokerObj.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") - r_res = r_brokerObj.connect(testrunner.host, testrunner.port, False, "PLAIN", "guest", "guest", "tcp") + l_res = l_brokerObj.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") + r_res = r_brokerObj.connect(self.broker.host, self.broker.port, False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(l_res.status, 0) self.assertEqual(r_res.status, 0) @@ -268,7 +245,7 @@ class FederationTests(TestBase010): queue = session.incoming("f1") #setup queue on remote broker and add some messages - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_trace") for i in range(1, 11): dp = r_session.delivery_properties(routing_key="key") @@ -291,7 +268,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -308,7 +285,7 @@ class FederationTests(TestBase010): sleep(6) #send messages to remote broker and confirm it is routed to local broker - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_tracing") trace = [None, "exclude-me", "a,exclude-me,b", "also-exclude-me,c", "dont-exclude-me"] @@ -341,7 +318,7 @@ class FederationTests(TestBase010): def test_dynamic_fanout(self): session = self.session - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_dynamic_fanout") session.exchange_declare(exchange="fed.fanout", type="fanout") @@ -350,7 +327,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -388,7 +365,7 @@ class FederationTests(TestBase010): def test_dynamic_direct(self): session = self.session - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_dynamic_direct") session.exchange_declare(exchange="fed.direct", type="direct") @@ -397,7 +374,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -435,7 +412,7 @@ class FederationTests(TestBase010): def test_dynamic_topic(self): session = self.session - r_conn = self.connect(host=remote_host(), port=remote_port()) + r_conn = self.connect(host=self.remote_host(), port=self.remote_port()) r_session = r_conn.session("test_dynamic_topic") session.exchange_declare(exchange="fed.topic", type="topic") @@ -444,7 +421,7 @@ class FederationTests(TestBase010): self.startQmf() qmf = self.qmf broker = qmf.getObjects(_class="broker")[0] - result = broker.connect(remote_host(), remote_port(), False, "PLAIN", "guest", "guest", "tcp") + result = broker.connect(self.remote_host(), self.remote_port(), False, "PLAIN", "guest", "guest", "tcp") self.assertEqual(result.status, 0) link = qmf.getObjects(_class="link")[0] @@ -489,16 +466,3 @@ class FederationTests(TestBase010): if headers: return headers[name] return None - - -if __name__ == '__main__': - args = sys.argv[1:] - #need to remove the extra options from args as test runner doesn't recognise them - extract_args("--remote-port", args) - extract_args("--remote-host", args) - - if add_module(): - #add module(s) to run to testrunners args - args.append("federation") - - if not testrunner.run(args): sys.exit(1) |