Skip to content

Commit c6cda82

Browse files
authored
Merge pull request #72 from cloudblue/client_mocker_fixture_did_not_reset
[Fix] client_mocker_factory didn't finalize mocker
2 parents 4b84cdd + 940ae7a commit c6cda82

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

connect/client/testing/fixtures.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ def client_mocker_factory(request):
1717
mocker = None
1818

1919
def _wrapper(base_url='https://example.org/public/v1', exclude=None):
20+
nonlocal mocker
2021
mocker = ConnectClientMocker(base_url, exclude=exclude)
2122
mocker.start()
2223
return mocker

tests/client/test_fixtures.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1+
import pytest
12
import requests
23

3-
from connect.client import ConnectClient
4+
from connect.client import ClientError, ConnectClient
45

56

67
def test_client_mocker_factory(client_mocker_factory):
@@ -11,6 +12,12 @@ def test_client_mocker_factory(client_mocker_factory):
1112
assert client.products.create(payload={}) == {'id': 'PRD-000'}
1213

1314

15+
def test_client_mocker_factory_finalizer():
16+
client = ConnectClient('api_key', endpoint='http://example.com')
17+
with pytest.raises(ClientError):
18+
client.products.create(payload={})
19+
20+
1421
def test_client_mocker_factory_default_base_url(client_mocker_factory):
1522
mocker = client_mocker_factory()
1623
mocker.products.create(return_value={'id': 'PRD-000'})

0 commit comments

Comments
 (0)