~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_test_server.py

  • Committer: Vincent Ladeuil
  • Date: 2010-06-03 16:10:48 UTC
  • mto: (5247.6.1 http-leaks)
  • mto: This revision was merged to the branch mainline in revision 5396.
  • Revision ID: v.ladeuil+lp@free.fr-20100603161048-n0ir7wz6t7qtycg4
Spawn a thread for each connection from a client.

* bzrlib/tests/test_test_server.py:
(TestTestingServerInAThread.test_client_talks_server_respond):
Check that the connection has been collected.

* bzrlib/tests/test_server.py:
(TestingTCPServerMixin.get_request)
(TestingThreadingTCPServer.get_request): Collect the resources
used for a client connection.
(TestingThreadingTCPServer.process_request): Spawn a thread for
each connection.

Show diffs side-by-side

added added

removed removed

Lines of Context:
92
92
        self.addCleanup(client.disconnect)
93
93
        return client
94
94
 
 
95
    def get_server_connection(self, server, conn_rank):
 
96
        return server.server.clients[conn_rank]
 
97
 
 
98
    def assertClientAddr(self, client, server, conn_rank):
 
99
        conn = self.get_server_connection(server, conn_rank)
 
100
        self.assertEquals(client.sock.getsockname(), conn[1])
 
101
 
95
102
    def test_start_stop(self):
96
103
        server = self.get_server()
97
104
        client = self.get_client()
108
115
        client.connect(server.server_address)
109
116
        self.assertIs(None, client.write('ping\n'))
110
117
        resp = client.read()
 
118
        self.assertClientAddr(client, server, 0)
111
119
        self.assertEquals('pong\n', resp)
112
120
 
113
121
    def test_server_fails_to_start(self):