/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/tests/test_http.py

  • Committer: Jelmer Vernooij
  • Date: 2020-07-05 12:50:01 UTC
  • mfrom: (7490.40.46 work)
  • mto: (7490.40.48 work)
  • mto: This revision was merged to the branch mainline in revision 7519.
  • Revision ID: jelmer@jelmer.uk-20200705125001-7s3vo0p55szbbws7
Merge lp:brz/3.1.

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
# TODO: Should be renamed to breezy.transport.http.tests?
24
24
# TODO: What about renaming to breezy.tests.transport.http ?
25
25
 
26
 
from http.client import UnknownProtocol, parse_headers
27
 
from http.server import SimpleHTTPRequestHandler
 
26
try:
 
27
    from http.client import UnknownProtocol, parse_headers
 
28
    from http.server import SimpleHTTPRequestHandler
 
29
except ImportError:  # python < 3
 
30
    from httplib import UnknownProtocol
 
31
    from SimpleHTTPServer import SimpleHTTPRequestHandler
28
32
import io
29
33
import socket
30
34
import sys
46
50
from ..bzr import (
47
51
    remote as _mod_remote,
48
52
    )
 
53
from ..sixish import PY3
49
54
from . import (
50
55
    features,
51
56
    http_server,
1944
1949
    def _handle_one_request(self):
1945
1950
        tcs = self.server.test_case_server
1946
1951
        requestline = self.rfile.readline()
1947
 
        headers = parse_headers(self.rfile)
1948
 
        bytes_read = len(headers.as_bytes())
1949
 
        bytes_read += headers.as_bytes().count(b'\n')
1950
 
        bytes_read += len(requestline)
 
1952
        if PY3:
 
1953
            headers = parse_headers(self.rfile)
 
1954
            bytes_read = len(headers.as_bytes())
 
1955
            bytes_read += headers.as_bytes().count(b'\n')
 
1956
            bytes_read += len(requestline)
 
1957
        else:
 
1958
            headers = self.MessageClass(self.rfile, 0)
 
1959
            # We just read: the request, the headers, an empty line indicating the
 
1960
            # end of the headers.
 
1961
            bytes_read = len(requestline)
 
1962
            for line in headers.headers:
 
1963
                bytes_read += len(line)
 
1964
            bytes_read += len(b'\r\n')
1951
1965
        if requestline.startswith(b'POST'):
1952
1966
            # The body should be a single line (or we don't know where it ends
1953
1967
            # and we don't want to issue a blocking read)