diff --git a/glanceclient/v1/images.py b/glanceclient/v1/images.py index 8b2ce2a..46bd595 100644 --- a/glanceclient/v1/images.py +++ b/glanceclient/v1/images.py @@ -111,7 +111,7 @@ class ImageManager(base.Manager): image_id = base.getid(image) resp, body = self.api.raw_request('HEAD', '/v1/images/%s' - % urllib.quote(image_id)) + % urllib.quote(str(image_id))) meta = self._image_meta_from_headers(dict(resp.getheaders())) return Image(self, meta) @@ -124,7 +124,7 @@ class ImageManager(base.Manager): """ image_id = base.getid(image) resp, body = self.api.raw_request('GET', '/v1/images/%s' - % urllib.quote(image_id)) + % urllib.quote(str(image_id))) checksum = resp.getheader('x-image-meta-checksum', None) if do_checksum and checksum is not None: body.set_checksum(checksum) diff --git a/tests/v1/test_images.py b/tests/v1/test_images.py index 4c5c029..3d09fd8 100644 --- a/tests/v1/test_images.py +++ b/tests/v1/test_images.py @@ -437,6 +437,17 @@ class ImageManagerTest(testtools.TestCase): self.assertEqual(image.deleted, False) self.assertEqual(image.properties, {u'arch': u'x86_64'}) + def test_get_int(self): + image = self.mgr.get(1) + expect = [('HEAD', '/v1/images/1', {}, None)] + self.assertEqual(self.api.calls, expect) + self.assertEqual(image.id, '1') + self.assertEqual(image.name, 'image-1') + self.assertEqual(image.is_public, False) + self.assertEqual(image.protected, False) + self.assertEqual(image.deleted, False) + self.assertEqual(image.properties, {u'arch': u'x86_64'}) + def test_get_encoding(self): image = self.mgr.get('3') expect = [('HEAD', '/v1/images/3', {}, None)]