Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ omit =
exclude_lines =
pragma: no cover
def __repr__
def __str__
def __unicode__
raise NotImplementedError
except AttributeError
except ImportError
Expand Down
2 changes: 1 addition & 1 deletion mocket/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@

__all__ = (mocketize, Mocket, MocketEntry, Mocketizer)

__version__ = '2.2.1'
__version__ = '2.2.2'
2 changes: 1 addition & 1 deletion mocket/mocket.py
Original file line number Diff line number Diff line change
Expand Up @@ -409,6 +409,7 @@ def disable():
ssl.SSLSocket = ssl.__dict__['SSLSocket'] = true_ssl_socket
ssl.SSLContext = ssl.__dict__['SSLContext'] = true_ssl_context
socket.inet_pton = socket.__dict__['inet_pton'] = true_inet_pton
Mocket.reset()

@classmethod
def get_namespace(cls):
Expand Down Expand Up @@ -477,7 +478,6 @@ def __exit__(self, type, value, tb):
if self.instance:
self.check_and_call('mocketize_teardown')
Mocket.disable()
Mocket.reset()

def check_and_call(self, method):
method = getattr(self.instance, method, None)
Expand Down
8 changes: 4 additions & 4 deletions mocket/mockhttp.py
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,9 @@ def __init__(self, uri, method, responses, match_querystring=True):

def collect(self, data):
self._sent_data += data
decoded_data = decode_from_bytes(data)
if not decoded_data.startswith(Entry.METHODS) and decoded_data.endswith(CRLF):
Mocket.remove_last_request()
super(Entry, self).collect(self._sent_data)

def can_handle(self, data):
Expand All @@ -133,10 +136,7 @@ def can_handle(self, data):
method, path, version = self._parse_requestline(requestline)
except ValueError:
try:
same_entry = self == Mocket._last_entry
if same_entry:
Mocket.remove_last_request()
return same_entry
return self == Mocket._last_entry
except AttributeError:
return False
uri = urlsplit(path)
Expand Down
8 changes: 6 additions & 2 deletions mocket/plugins/pook_mock_engine.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,12 @@ def can_handle(self, data):
return can_handle

@classmethod
def single_register(cls, method, uri, body='', status=200, headers=None):
entry = cls(uri, method, Response(body=body, status=status, headers=headers))
def single_register(cls, method, uri, body='', status=200, headers=None, match_querystring=True):
entry = cls(
uri, method, Response(
body=body, status=status, headers=headers
), match_querystring=match_querystring
)
Mocket.register(entry)
return entry

Expand Down
3 changes: 3 additions & 0 deletions tests/tests35/test_http_aiohttp.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,13 @@ async def main(l):
async with session.post(url, data=body * 6) as post_response:
assert post_response.status == 201
assert await post_response.text() == body * 2
assert Mocket.last_request().method == 'POST'
assert Mocket.last_request().body == body * 6

loop = asyncio.get_event_loop()
loop.set_debug(True)
loop.run_until_complete(main(loop))
self.assertEqual(len(Mocket._requests), 2)

@mocketize
def test_https_session(self):
Expand All @@ -57,6 +59,7 @@ async def main(l):
loop = asyncio.get_event_loop()
loop.set_debug(True)
loop.run_until_complete(main(loop))
self.assertEqual(len(Mocket._requests), 2)

@httprettified
def test_httprettish_session(self):
Expand Down