~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_http.py

  • Committer: Vincent Ladeuil
  • Date: 2010-06-04 11:48:56 UTC
  • mto: (5247.4.3 sftp-leaks)
  • mto: This revision was merged to the branch mainline in revision 5396.
  • Revision ID: v.ladeuil+lp@free.fr-20100604114856-7e505v5w40937ya5
All http tests passing, https failing.

* bzrlib/tests/test_server.py:
(TestingTCPServerInAThread): Daughter classes prefer to deal
with (host, port) while SocketServer classes use server_address.

* bzrlib/tests/test_http.py:
Fix some refactoring fallouts.

* bzrlib/tests/http_server.py:
(TestingHTTPServerMixin.__init__): Vastly simplified now that we
use TestingTCPServerInAThread.
(HttpServer.__init__, HttpServer.create_server)
(HttpServer.start_server): Simplified to the specifics.

Show diffs side-by-side

added added

removed removed

Lines of Context:
308
308
 
309
309
            protocol_version = 'HTTP/0.1'
310
310
 
311
 
        server = http_server.HttpServer(BogusRequestHandler)
312
 
        try:
313
 
            self.assertRaises(httplib.UnknownProtocol, server.start_server)
314
 
        except:
315
 
            server.stop_server()
316
 
            self.fail('HTTP Server creation did not raise UnknownProtocol')
 
311
        self.assertRaises(httplib.UnknownProtocol,
 
312
                          http_server.HttpServer, BogusRequestHandler)
317
313
 
318
314
    def test_force_invalid_protocol(self):
319
 
        server = http_server.HttpServer(protocol_version='HTTP/0.1')
320
 
        self.addCleanup(server.stop_server)
321
 
        self.assertRaises(httplib.UnknownProtocol, server.start_server)
 
315
        self.assertRaises(httplib.UnknownProtocol,
 
316
                          http_server.HttpServer, protocol_version='HTTP/0.1')
322
317
 
323
318
    def test_server_start_and_stop(self):
324
319
        server = http_server.HttpServer()
325
320
        self.addCleanup(server.stop_server)
326
321
        server.start_server()
327
 
        self.assertTrue(server._httpd is not None)
328
 
        self.assertTrue(server._httpd.serving is not None)
329
 
        self.assertTrue(server._httpd.serving.isSet())
 
322
        self.assertTrue(server.server is not None)
 
323
        self.assertTrue(server.server.serving is not None)
 
324
        self.assertTrue(server.server.serving.isSet())
330
325
 
331
326
    def test_create_http_server_one_zero(self):
332
327
        class RequestHandlerOneZero(http_server.TestingHTTPRequestHandler):
335
330
 
336
331
        server = http_server.HttpServer(RequestHandlerOneZero)
337
332
        self.start_server(server)
338
 
        self.assertIsInstance(server._httpd, http_server.TestingHTTPServer)
 
333
        self.assertIsInstance(server.server, http_server.TestingHTTPServer)
339
334
 
340
335
    def test_create_http_server_one_one(self):
341
336
        class RequestHandlerOneOne(http_server.TestingHTTPRequestHandler):
344
339
 
345
340
        server = http_server.HttpServer(RequestHandlerOneOne)
346
341
        self.start_server(server)
347
 
        self.assertIsInstance(server._httpd,
 
342
        self.assertIsInstance(server.server,
348
343
                              http_server.TestingThreadingHTTPServer)
349
344
 
350
345
    def test_create_http_server_force_one_one(self):
355
350
        server = http_server.HttpServer(RequestHandlerOneZero,
356
351
                                        protocol_version='HTTP/1.1')
357
352
        self.start_server(server)
358
 
        self.assertIsInstance(server._httpd,
 
353
        self.assertIsInstance(server.server,
359
354
                              http_server.TestingThreadingHTTPServer)
360
355
 
361
356
    def test_create_http_server_force_one_zero(self):
366
361
        server = http_server.HttpServer(RequestHandlerOneOne,
367
362
                                        protocol_version='HTTP/1.0')
368
363
        self.start_server(server)
369
 
        self.assertIsInstance(server._httpd,
 
364
        self.assertIsInstance(server.server,
370
365
                              http_server.TestingHTTPServer)
371
366
 
372
367
 
1792
1787
        self.assertEqual(expected_reply_body, reply_body)
1793
1788
 
1794
1789
    def test_smart_http_server_post_request_handler(self):
1795
 
        httpd = self.get_readonly_server()._get_httpd()
 
1790
        httpd = self.get_readonly_server().server
1796
1791
 
1797
1792
        socket = SampleSocket(
1798
1793
            'POST /.bzr/smart %s \r\n' % self._protocol_version
1838
1833
                          t.get_smart_medium().send_http_smart_request,
1839
1834
                          'whatever')
1840
1835
 
 
1836
 
1841
1837
class Test_redirected_to(tests.TestCase):
1842
1838
 
1843
1839
    def test_redirected_to_subdir(self):