@@ -112,19 +112,8 @@ def _hash_request(h, req):
112112
113113
114114class MocketSocket :
115- timeout = None
116- family = None
117- type = None
118- proto = None
119- _host = None
120- _port = None
121- _address = None
122115 cipher = lambda s : ("ADH" , "AES256" , "SHA" )
123116 compression = lambda s : ssl .OP_NO_COMPRESSION
124- _secure_socket = False
125- _did_handshake = False
126- _sent_non_empty_bytes = False
127- _io = None
128117
129118 def __init__ (
130119 self ,
@@ -134,14 +123,27 @@ def __init__(
134123 fileno : int | None = None ,
135124 ** kwargs : Any ,
136125 ) -> None :
137- self .true_socket = true_socket (family , type , proto )
126+ self ._family = family
127+ self ._type = type
128+ self ._proto = proto
129+
130+ self ._kwargs = kwargs
131+ self ._true_socket = true_socket (family , type , proto )
132+ self ._truesocket_recording_dir = None
133+
138134 self ._buflen = 65536
135+ self ._timeout : float | None = None
136+
137+ self ._secure_socket = False
138+ self ._did_handshake = False
139+ self ._sent_non_empty_bytes = False
140+
141+ self ._host = None
142+ self ._port = None
143+ self ._address = None
144+
145+ self ._io = None
139146 self ._entry = None
140- self .family = int (family )
141- self .type = int (type )
142- self .proto = int (proto )
143- self ._truesocket_recording_dir = None
144- self .kwargs = kwargs
145147
146148 def __str__ (self ) -> str :
147149 return f"({ self .__class__ .__name__ } )(family={ self .family } type={ self .type } protocol={ self .proto } )"
@@ -157,6 +159,18 @@ def __exit__(
157159 ) -> None :
158160 self .close ()
159161
162+ @property
163+ def family (self ) -> int :
164+ return self ._family
165+
166+ @property
167+ def type (self ) -> int :
168+ return self ._type
169+
170+ @property
171+ def proto (self ) -> int :
172+ return self ._proto
173+
160174 @property
161175 def io (self ) -> MocketSocketCore :
162176 if self ._io is None :
@@ -172,19 +186,19 @@ def fileno(self) -> int:
172186 return r_fd
173187
174188 def gettimeout (self ) -> float | None :
175- return self .timeout
189+ return self ._timeout
176190
177191 # FIXME the arguments here seem wrong. they should be `level: int, optname: int, value: int | ReadableBuffer | None`
178192 def setsockopt (self , family : int , type : int , proto : int ) -> None :
179- self .family = family
180- self .type = type
181- self .proto = proto
193+ self ._family = family
194+ self ._type = type
195+ self ._proto = proto
182196
183- if self .true_socket :
184- self .true_socket .setsockopt (family , type , proto )
197+ if self ._true_socket :
198+ self ._true_socket .setsockopt (family , type , proto )
185199
186200 def settimeout (self , timeout : float | None ) -> None :
187- self .timeout = timeout
201+ self ._timeout = timeout
188202
189203 @staticmethod
190204 def getsockopt (level : int , optname : int , buflen : int | None = None ) -> int :
@@ -343,23 +357,23 @@ def true_sendall(self, data: ReadableBuffer, *args: Any, **kwargs: Any) -> int:
343357 host , port = self ._host , self ._port
344358 host = true_gethostbyname (host )
345359
346- if isinstance (self .true_socket , true_socket ) and self ._secure_socket :
347- self .true_socket = true_urllib3_ssl_wrap_socket (
348- self .true_socket ,
349- ** self .kwargs ,
360+ if isinstance (self ._true_socket , true_socket ) and self ._secure_socket :
361+ self ._true_socket = true_urllib3_ssl_wrap_socket (
362+ self ._true_socket ,
363+ ** self ._kwargs ,
350364 )
351365
352366 with contextlib .suppress (OSError , ValueError ):
353367 # already connected
354- self .true_socket .connect ((host , port ))
355- self .true_socket .sendall (data , * args , ** kwargs )
368+ self ._true_socket .connect ((host , port ))
369+ self ._true_socket .sendall (data , * args , ** kwargs )
356370 encoded_response = b""
357371 # https://github.com/kennethreitz/requests/blob/master/tests/testserver/server.py#L12
358372 while True :
359- more_to_read = select .select ([self .true_socket ], [], [], 0.1 )[0 ]
373+ more_to_read = select .select ([self ._true_socket ], [], [], 0.1 )[0 ]
360374 if not more_to_read and encoded_response :
361375 break
362- new_content = self .true_socket .recv (self ._buflen )
376+ new_content = self ._true_socket .recv (self ._buflen )
363377 if not new_content :
364378 break
365379 encoded_response += new_content
@@ -398,8 +412,8 @@ def send(
398412 return len (data )
399413
400414 def close (self ) -> None :
401- if self .true_socket and not self .true_socket ._closed :
402- self .true_socket .close ()
415+ if self ._true_socket and not self ._true_socket ._closed :
416+ self ._true_socket .close ()
403417
404418 def __getattr__ (self , name : str ) -> Any :
405419 """Do nothing catchall function, for methods like shutdown()"""
0 commit comments