diff options
author | Jamie Lennox <jamielennox@redhat.com> | 2014-11-26 13:26:50 +1000 |
---|---|---|
committer | Jamie Lennox <jamielennox@redhat.com> | 2015-02-06 12:47:49 +1100 |
commit | cb977e40558aed64cd5cffbba4545f778308b16d (patch) | |
tree | bb756d9a451b66909520d9fbadd6baeb88b541f8 | |
parent | bd04fbeed5b0809ff8f2c24b690f1e81ce1393a1 (diff) | |
download | glance_store-cb977e40558aed64cd5cffbba4545f778308b16d.tar.gz |
Convert httpretty tests to requests-mock
A cleaner syntax and more maintained library. This is what is being
recommended for all projects.
Change-Id: I425a9ab606419af0642492499d9338f4a9b3f42f
-rw-r--r-- | test-requirements.txt | 2 | ||||
-rw-r--r-- | tests/unit/test_swift_store.py | 44 |
2 files changed, 17 insertions, 29 deletions
diff --git a/test-requirements.txt b/test-requirements.txt index 779d3a3..ee202dd 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6,9 +6,9 @@ mock>=1.0 # Unit testing coverage>=3.6 -httpretty>=0.8.0,!=0.8.1,!=0.8.2,!=0.8.3 fixtures>=0.3.14 python-subunit>=0.0.18 +requests-mock>=0.5.1 # Apache-2.0 testrepository>=0.0.18 testscenarios>=0.4 testtools>=0.9.34 diff --git a/tests/unit/test_swift_store.py b/tests/unit/test_swift_store.py index 84a9b94..1a0cc70 100644 --- a/tests/unit/test_swift_store.py +++ b/tests/unit/test_swift_store.py @@ -23,10 +23,10 @@ import mock import tempfile import uuid -import httpretty from oslo_config import cfg from oslo_utils import units from oslotest import moxstubout +import requests_mock import six import StringIO import swiftclient @@ -1178,42 +1178,29 @@ class TestMultiTenantStoreContext(base.StoreBaseTest): }] self.addCleanup(self.conf.reset) - @httpretty.activate - def test_download_context(self): + @requests_mock.mock() + def test_download_context(self, m): """Verify context (ie token) is passed to swift on download.""" self.config(swift_store_multi_tenant=True) store = Store(self.conf) store.configure() - uri = "swift+http://127.0.0.1:0/glance_123/123" + uri = "swift+http://127.0.0.1/glance_123/123" loc = location.get_location_from_uri(uri, conf=self.conf) ctx = context.RequestContext( service_catalog=self.service_catalog, user='tenant:user1', tenant='tenant', auth_token='0123') - httpretty.register_uri(httpretty.GET, - "http://127.0.0.1:0/glance_123/123", - status=200) + + m.get("http://127.0.0.1/glance_123/123") store.get(loc, context=ctx) - self.assertEqual( - '0123', httpretty.last_request().headers['X-Auth-Token']) + self.assertEqual('0123', m.last_request.headers['X-Auth-Token']) - @httpretty.activate - def test_upload_context(self): + @requests_mock.mock() + def test_upload_context(self, m): """Verify context (ie token) is passed to swift on upload.""" - def put_callback(request, uri, headers): - self.assertEqual('Some data', request.body) - self.assertEqual('0123', request.headers['X-Auth-Token']) - return (201, headers, "") - - def head_callback(request, uri, headers): - self.assertEqual('0123', request.headers['X-Auth-Token']) - return (200, headers, "") - - httpretty.register_uri(httpretty.HEAD, - "http://127.0.0.1:0/glance_123", - head_callback) - httpretty.register_uri(httpretty.PUT, - "http://127.0.0.1:0/glance_123/123", - put_callback) + head_req = m.head("http://127.0.0.1/glance_123", + text='Some data', + status_code=201) + put_req = m.put("http://127.0.0.1/glance_123/123") self.config(swift_store_multi_tenant=True) store = Store(self.conf) @@ -1224,8 +1211,9 @@ class TestMultiTenantStoreContext(base.StoreBaseTest): tenant='tenant', auth_token='0123') store.add('123', pseudo_file, pseudo_file.len, context=ctx) - self.assertEqual( - '0123', httpretty.last_request().headers['X-Auth-Token']) + + self.assertEqual('0123', head_req.last_request.headers['X-Auth-Token']) + self.assertEqual('0123', put_req.last_request.headers['X-Auth-Token']) class FakeGetEndpoint(object): |