
Allow installing the additional requirements for using the fixture contrib module using pip extras. Closes-Bug: #1501665 Change-Id: I20510d8db35c3cfdc0bc2892675b04d224027c7e
1.4 KiB
Fixtures
Fixtures provide a way to create reusable state and helper methods in test cases.
To use the requests-mock fixture your tests need to have a dependency on the fixtures library. This can be optionally installed when you install requests-mock by doing:
pip install requests-mock[fixture]
The fixture mocks the :pyrequests.Session.get_adapter
method so that all
requests will be served by the mock adapter.
The fixture provides the same interfaces as the adapter.
>>> import requests >>> from requests_mock.contrib import fixture >>> import testtools
>>> class MyTestCase(testtools.TestCase): ... ... TEST_URL = 'http://www.google.com' ... ... def setUp(self): ... super(MyTestCase, self).setUp() ... self.requests_mock = self.useFixture(fixture.Fixture()) ... self.requests_mock.register_uri('GET', self.TEST_URL, text='respA') ... ... def test_method(self): ... self.requests_mock.register_uri('POST', self.TEST_URL, text='respB') ... resp = requests.get(self.TEST_URL) ... self.assertEqual('respA', resp.text) ... self.assertEqual(self.TEST_URL, self.requests_mock.last_request.url) ...