Rev 3113: Preparatory cleanup. in file:///v/home/vila/src/bzr/bugs/175524/
Vincent Ladeuil
v.ladeuil+lp at free.fr
Mon Dec 17 08:56:56 GMT 2007
At file:///v/home/vila/src/bzr/bugs/175524/
------------------------------------------------------------
revno: 3113
revision-id:v.ladeuil+lp at free.fr-20071217085652-p4m867lxku62pmsn
parent: v.ladeuil+lp at free.fr-20071214103445-ybf2vb56imwly2h7
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: 175524
timestamp: Mon 2007-12-17 09:56:52 +0100
message:
Preparatory cleanup.
* bzrlib/tests/http_server.py:
Fix imports.
(TestingHTTPRequestHandler): Use HTTPMessage instead
mimetools.Message, we don't use it yet, but there is no good
reason to not be ready.
(HttpServer.get_bogus_url): Use _url_protocol, again no good
reason to not do it.
modified:
bzrlib/tests/http_server.py httpserver.py-20061012142527-m1yxdj1xazsf8d7s-1
-------------- next part --------------
=== modified file 'bzrlib/tests/http_server.py'
--- a/bzrlib/tests/http_server.py 2007-12-11 14:26:18 +0000
+++ b/bzrlib/tests/http_server.py 2007-12-17 08:56:52 +0000
@@ -16,20 +16,21 @@
import BaseHTTPServer
import errno
+import httplib
import os
-from SimpleHTTPServer import SimpleHTTPRequestHandler
-import socket
import posixpath
import random
import re
+import SimpleHTTPServer
+import socket
import sys
import threading
import time
import urllib
import urlparse
-from bzrlib.transport import Server
-from bzrlib.transport.local import LocalURLServer
+from bzrlib import transport
+from bzrlib.transport import local
class WebserverNotAvailable(Exception):
@@ -41,12 +42,14 @@
return 'path %s is not in %s' % self.args
-class TestingHTTPRequestHandler(SimpleHTTPRequestHandler):
+class TestingHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
"""Handles one request.
A TestingHTTPRequestHandler is instantiated for every request
received by the associated server.
"""
+ # The Message-like class used to parse the request headers
+ MessageClass = httplib.HTTPMessage
def log_message(self, format, *args):
tcs = self.server.test_case_server
@@ -54,7 +57,7 @@
self.address_string(),
self.log_date_time_string(),
format % args,
- self.headers.get('referer', '-'),
+ self.headers.get('referrer', '-'),
self.headers.get('user-agent', '-'))
def handle_one_request(self):
@@ -64,13 +67,12 @@
connection early to avoid polluting the test results.
"""
try:
- SimpleHTTPRequestHandler.handle_one_request(self)
+ SimpleHTTPServer.SimpleHTTPRequestHandler.handle_one_request(self)
except socket.error, e:
if (len(e.args) > 0
and e.args[0] in (errno.EPIPE, errno.ECONNRESET,
errno.ECONNABORTED,)):
self.close_connection = 1
- pass
else:
raise
@@ -157,7 +159,7 @@
ranges_header_value = self.headers.get('Range')
if ranges_header_value is None or os.path.isdir(path):
# Let the mother class handle most cases
- return SimpleHTTPRequestHandler.do_GET(self)
+ return SimpleHTTPServer.SimpleHTTPRequestHandler.do_GET(self)
try:
# Always read in binary mode. Opening files in text
@@ -234,7 +236,8 @@
return self._translate_path(path)
def _translate_path(self, path):
- return SimpleHTTPRequestHandler.translate_path(self, path)
+ return SimpleHTTPServer.SimpleHTTPRequestHandler.translate_path(
+ self, path)
if sys.platform == 'win32':
# On win32 you cannot access non-ascii filenames without
@@ -267,10 +270,10 @@
class TestingHTTPServer(BaseHTTPServer.HTTPServer):
- def __init__(self, server_address, RequestHandlerClass,
+ def __init__(self, server_address, request_handler_class,
test_case_server):
BaseHTTPServer.HTTPServer.__init__(self, server_address,
- RequestHandlerClass)
+ request_handler_class)
# test_case_server can be used to communicate between the
# tests and the server (or the request handler and the
# server), allowing dynamic behaviors to be defined from
@@ -287,7 +290,7 @@
BaseHTTPServer.HTTPServer.server_close(self)
-class HttpServer(Server):
+class HttpServer(transport.Server):
"""A test server for http transports.
Subclasses can provide a specific request handler.
@@ -302,7 +305,7 @@
# Subclasses can provide a specific request handler
def __init__(self, request_handler=TestingHTTPRequestHandler):
- Server.__init__(self)
+ transport.Server.__init__(self)
self.request_handler = request_handler
self.host = 'localhost'
self.port = 0
@@ -357,7 +360,7 @@
# XXX: TODO: make the server back onto vfs_server rather than local
# disk.
assert backing_transport_server is None or \
- isinstance(backing_transport_server, LocalURLServer), \
+ isinstance(backing_transport_server, local.LocalURLServer), \
"HTTPServer currently assumes local transport, got %s" % \
backing_transport_server
self._home_dir = os.getcwdu()
@@ -388,7 +391,7 @@
"""See bzrlib.transport.Server.get_bogus_url."""
# this is chosen to try to prevent trouble with proxies, weird dns,
# etc
- return 'http://127.0.0.1:1/'
+ return self._url_protocol + '://127.0.0.1:1/'
class HttpServer_urllib(HttpServer):
More information about the bazaar-commits
mailing list