mercurial/httpclient/tests/util.py
changeset 16774 69af967b6d6f
parent 16643 24dbef11f477
equal deleted inserted replaced
16773:d490edc71146 16774:69af967b6d6f
    56         self.data = []
    56         self.data = []
    57         self.remote_closed = self.closed = False
    57         self.remote_closed = self.closed = False
    58         self.close_on_empty = False
    58         self.close_on_empty = False
    59         self.sent = ''
    59         self.sent = ''
    60         self.read_wait_sentinel = httpplus._END_HEADERS
    60         self.read_wait_sentinel = httpplus._END_HEADERS
       
    61         self.blocking = True
    61 
    62 
    62     def close(self):
    63     def close(self):
    63         self.closed = True
    64         self.closed = True
    64 
    65 
    65     def connect(self, sa):
    66     def connect(self, sa):
    66         self.sa = sa
    67         self.sa = sa
    67 
    68 
    68     def setblocking(self, timeout):
    69     def setblocking(self, timeout):
    69         assert timeout == 0
    70         self.blocking = bool(timeout)
    70 
    71 
    71     def recv(self, amt=-1):
    72     def recv(self, amt=-1):
       
    73         # we only properly emulate non-blocking sockets
       
    74         assert not self.blocking
    72         if self.early_data:
    75         if self.early_data:
    73             datalist = self.early_data
    76             datalist = self.early_data
    74         elif not self.data:
    77         elif not self.data:
    75             return ''
    78             return ''
    76         else:
    79         else:
   134 def mocksslwrap(sock, keyfile=None, certfile=None,
   137 def mocksslwrap(sock, keyfile=None, certfile=None,
   135                 server_side=False, cert_reqs=httpplus.socketutil.CERT_NONE,
   138                 server_side=False, cert_reqs=httpplus.socketutil.CERT_NONE,
   136                 ssl_version=None, ca_certs=None,
   139                 ssl_version=None, ca_certs=None,
   137                 do_handshake_on_connect=True,
   140                 do_handshake_on_connect=True,
   138                 suppress_ragged_eofs=True):
   141                 suppress_ragged_eofs=True):
       
   142     assert sock.blocking, ('wrapping a socket with ssl requires that '
       
   143                            'it be in blocking mode.')
   139     return MockSSLSocket(sock)
   144     return MockSSLSocket(sock)
   140 
   145 
   141 
   146 
   142 def mockgetaddrinfo(host, port, unused, streamtype):
   147 def mockgetaddrinfo(host, port, unused, streamtype):
   143     assert unused == 0
   148     assert unused == 0