This is an automated email from the ASF dual-hosted git repository.

chug pushed a commit to branch dev-protocol-adaptors-2
in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git


The following commit(s) were added to refs/heads/dev-protocol-adaptors-2 by 
this push:
     new 1e2bfed  DISPATCH-1831: Extend TCP adaptor test interior router 
backbone
1e2bfed is described below

commit 1e2bfed3639d96fe89fa16a7d01959dba65fc7fc
Author: Chuck Rolke <c...@apache.org>
AuthorDate: Wed Nov 18 11:52:32 2020 -0500

    DISPATCH-1831: Extend TCP adaptor test interior router backbone
---
 tests/system_tests_tcp_adaptor.py | 103 ++++++++++++++++++++++++++------------
 1 file changed, 70 insertions(+), 33 deletions(-)

diff --git a/tests/system_tests_tcp_adaptor.py 
b/tests/system_tests_tcp_adaptor.py
index db82d46..173626d 100644
--- a/tests/system_tests_tcp_adaptor.py
+++ b/tests/system_tests_tcp_adaptor.py
@@ -107,36 +107,41 @@ class Logger():
 
 class TcpAdaptor(TestCase):
     """
-    4 edge routers connected via 2 interior routers.
-    6 echo servers are connected via tcpConnector, one to each router.
-    Each router has 7 listeners, one for each server and
+    6 edge routers connected via 3 interior routers.
+    9 echo servers are connected via tcpConnector, one to each router.
+    Each router has 10 listeners, one for each server and
     another for which there is no server.
     """
-    #  +-------+    +---------+    +---------+    +-------+
-    #  |  EA1  |<-->|  INTA   |<==>|  INTB   |<-->|  EB1  |
-    #  +-------+    |         |    |         |    +-------+
-    #  +-------+    |         |    |         |    +-------+
-    #  |  EA2  |<-->|         |    |         |<-->|  EB2  |
-    #  +-------+    +---------+    +---------+    +-------+
+    #  +-------+    +---------+    +---------+    +---------+    +-------+
+    #  |  EA1  |<-->|  INTA   |<==>|  INTB   |<==>|  INTC   |<-->|  EC1  |
+    #  +-------+    |         |    |         |    |         |    +-------+
+    #  +-------+    |         |    |         |    |         |    +-------+
+    #  |  EA2  |<-->|         |    |         |    |         |<-->|  EC2  |
+    #  +-------+    +---------+    +---------+    +---------+    +-------+
+    #                                ^     ^
+    #                                |     |
+    #                          +-------+ +-------+
+    #                          |  EB1  | |  EB2  |
+    #                          +-------+ +-------+
     #
     # Each router tcp-connects to a like-named echo server.
     # Each router has tcp-listeners for every echo server
     #
-    #      +----+ +----+ +----+ +----+ +----+ +----+
-    #   +--|tcp |-|tcp |-|tcp |-|tcp |-|tcp |-|tcp |--+
-    #   |  |lsnr| |lsnr| |lsnr| |lsnr| |lsnr| |lsnr|  |
-    #   |  |EA1 | |EA2 | |INTA| |INTB| |EB1 | |EB2 |  |
-    #   |  +----+ +----+ +----+ +----+ +----+ +----+  |
-    #   |                                          +---------+  +------+
-    #   |          Router                          | tcp     |  | echo |
-    #   |          EA1                             |connector|->|server|
-    #   |                                          +---------+  | EA1  |
-    #   |                                             |         +------+
-    #   +---------------------------------------------+
+    #      +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+
+    #   +--|tcp |-|tcp |-|tcp |-|tcp |-|tcp |-|tcp |-|tcp |-|tcp |-|tcp |--+
+    #   |  |lsnr| |lsnr| |lsnr| |lsnr| |lsnr| |lsnr| |lsnr| |lsnr| |lsnr|  |
+    #   |  |EA1 | |EA2 | |INTA| |EB1 | |EB2 | |INTB| |EC1 | |EC2 | |INTC|  |
+    #   |  +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+ +----+  |
+    #   |                                                               
+---------+  +------+
+    #   |          Router                                               | tcp  
   |  | echo |
+    #   |          EA1                                                  
|connector|->|server|
+    #   |                                                               
+---------+  | EA1  |
+    #   |                                                                  |   
      +------+
+    #   +------------------------------------------------------------------+
     #
 
     # Allocate routers in this order
-    router_order = ['INTA', 'INTB', 'EA1', 'EA2', 'EB1', 'EB2']
+    router_order = ['INTA', 'INTB', 'INTC', 'EA1', 'EA2', 'EB1', 'EB2', 'EC1', 
'EC2']
 
     # List indexed in router_order
     # First listener in each router is normal AMQP for test setup and mgmt.
@@ -228,9 +233,11 @@ class TcpAdaptor(TestCase):
             cls.nodest_listener_ports[rtr] = cls.tester.get_port()
             cls.http_listener_ports[rtr] = cls.tester.get_port()
 
-        inter_router_port  = cls.tester.get_port()
+        inter_router_port_AB  = cls.tester.get_port()
+        inter_router_port_BC  = cls.tester.get_port()
         cls.INTA_edge_port = cls.tester.get_port()
         cls.INTB_edge_port = cls.tester.get_port()
+        cls.INTC_edge_port = cls.tester.get_port()
 
         cls.logger = Logger(title="TcpAdaptor-testClass",
                             print_to_console=True,
@@ -254,9 +261,11 @@ class TcpAdaptor(TestCase):
                          (rtr, cls.nodest_listener_ports[rtr]))
             p_out.append("%s_http_listener=%d" %
                          (rtr, cls.http_listener_ports[rtr]))
-        p_out.append("inter_router_port=%d" % inter_router_port)
+        p_out.append("inter_router_port_AB=%d" % inter_router_port_AB)
+        p_out.append("inter_router_port_BC=%d" % inter_router_port_BC)
         p_out.append("INTA_edge_port=%d" % cls.INTA_edge_port)
         p_out.append("INTB_edge_port=%d" % cls.INTB_edge_port)
+        p_out.append("INTC_edge_port=%d" % cls.INTC_edge_port)
         # write to log
         for line in p_out:
             cls.logger.log("TCP_TEST %s" % line)
@@ -291,12 +300,17 @@ class TcpAdaptor(TestCase):
 
         # Launch the routers
         router('INTA', 'interior',
-               [('listener', {'role': 'inter-router', 'port': 
inter_router_port}),
+               [('listener', {'role': 'inter-router', 'port': 
inter_router_port_AB}),
                 ('listener', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTA_edge_port})])
 
         router('INTB', 'interior',
-               [('connector', {'role': 'inter-router', 'port': 
inter_router_port}),
-               ('listener',   {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTB_edge_port})])
+               [('connector', {'role': 'inter-router', 'port': 
inter_router_port_AB}),
+                ('listener', {'role': 'inter-router', 'port': 
inter_router_port_BC}),
+                ('listener', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTB_edge_port})])
+
+        router('INTC', 'interior',
+               [('connector', {'role': 'inter-router', 'port': 
inter_router_port_BC}),
+                ('listener', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTC_edge_port})])
 
         router('EA1', 'edge',
                [('connector', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTA_edge_port})])
@@ -306,18 +320,29 @@ class TcpAdaptor(TestCase):
                [('connector', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTB_edge_port})])
         router('EB2', 'edge',
                [('connector', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTB_edge_port})])
+        router('EC1', 'edge',
+               [('connector', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTC_edge_port})])
+        router('EC2', 'edge',
+               [('connector', {'name': 'uplink', 'role': 'edge', 'port': 
cls.INTC_edge_port})])
 
         cls.INTA = cls.routers[0]
         cls.INTB = cls.routers[1]
-        cls.EA1 = cls.routers[2]
-        cls.EA2 = cls.routers[3]
-        cls.EB1 = cls.routers[4]
-        cls.EB2 = cls.routers[5]
+        cls.INTC = cls.routers[2]
+        cls.EA1 = cls.routers[3]
+        cls.EA2 = cls.routers[4]
+        cls.EB1 = cls.routers[5]
+        cls.EB2 = cls.routers[6]
+        cls.EC1 = cls.routers[7]
+        cls.EC2 = cls.routers[8]
 
         cls.logger.log("TCP_TEST INTA waiting for connection to INTB")
         cls.INTA.wait_router_connected('INTB')
         cls.logger.log("TCP_TEST INTB waiting for connection to INTA")
         cls.INTB.wait_router_connected('INTA')
+        cls.logger.log("TCP_TEST INTB waiting for connection to INTC")
+        cls.INTB.wait_router_connected('INTC')
+        cls.logger.log("TCP_TEST INTC waiting for connection to INTB")
+        cls.INTC.wait_router_connected('INTB')
 
         # define logging levels
         cls.print_logs_server = True
@@ -541,7 +566,7 @@ class TcpAdaptor(TestCase):
     # A series of 1-byte messsages, one at a time, to prove general 
connectivity
     #
     @SkipIfNeeded(DISABLE_SELECTOR_TESTS, DISABLE_SELECTOR_REASON)
-    def test_01_tcp_INTA_INTA(self):
+    def test_01a_tcp_INTA_INTA(self):
         """
         Connectivity - INTA only
         """
@@ -556,8 +581,8 @@ class TcpAdaptor(TestCase):
         self.logger.log("TCP_TEST Stop %s SUCCESS" % name)
 
     @SkipIfNeeded(DISABLE_SELECTOR_TESTS, DISABLE_SELECTOR_REASON)
-    def test_02_tcp_INTB_INTB(self):
-        name = "test_02_tcp_INTB_INTB"
+    def test_01b_tcp_INTB_INTB(self):
+        name = "test_01b_tcp_INTB_INTB"
         self.logger.log("TCP_TEST Start %s" % name)
         pairs = [self.EchoPair(self.INTB, self.INTB)]
         result = self.do_tcp_echo_n_routers(name, pairs)
@@ -568,6 +593,18 @@ class TcpAdaptor(TestCase):
         self.logger.log("TCP_TEST Stop %s SUCCESS" % name)
 
     @SkipIfNeeded(DISABLE_SELECTOR_TESTS, DISABLE_SELECTOR_REASON)
+    def test_01c_tcp_INTC_INTC(self):
+        name = "test_01c_tcp_INTC_INTC"
+        self.logger.log("TCP_TEST Start %s" % name)
+        pairs = [self.EchoPair(self.INTC, self.INTC)]
+        result = self.do_tcp_echo_n_routers(name, pairs)
+        if result is not None:
+            print(result)
+            sys.stdout.flush()
+        assert result is None, "TCP_TEST Stop %s FAIL: %s" % (name, result)
+        self.logger.log("TCP_TEST Stop %s SUCCESS" % name)
+
+    @SkipIfNeeded(DISABLE_SELECTOR_TESTS, DISABLE_SELECTOR_REASON)
     def test_03_tcp_INTA_INTB(self):
         name = "test_03_tcp_INTA_INTB"
         self.logger.log("TCP_TEST Start %s" % name)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to