1519
1521
self.assertEquals(res.status_int,
1520
1522
webob.exc.HTTPNotFound.code)
1524
def test_get_image_members(self):
1526
Tests members listing for existing images
1528
req = webob.Request.blank('/images/2/members')
1532
res = req.get_response(self.api)
1533
self.assertEquals(res.status_int, 200)
1535
memb_list = json.loads(res.body)
1536
num_members = len(memb_list['members'])
1537
self.assertEquals(num_members, 0)
1539
def test_get_image_members_not_existing(self):
1541
Tests proper exception is raised if attempt to get members of
1544
req = webob.Request.blank('/images/3/members')
1548
res = req.get_response(self.api)
1549
self.assertEquals(res.status_int,
1550
webob.exc.HTTPNotFound.code)
1552
def test_get_member_images(self):
1554
Tests image listing for members
1556
req = webob.Request.blank('/shared-images/pattieblack')
1560
res = req.get_response(self.api)
1561
self.assertEquals(res.status_int, 200)
1563
memb_list = json.loads(res.body)
1564
num_members = len(memb_list['shared_images'])
1565
self.assertEquals(num_members, 0)
1567
def test_replace_members(self):
1569
Tests replacing image members raises right exception
1571
fixture = dict(member_id='pattieblack')
1573
req = webob.Request.blank('/images/2/members')
1576
req.content_type = 'application/json'
1577
req.body = json.dumps(dict(image_memberships=fixture))
1579
res = req.get_response(self.api)
1580
self.assertEquals(res.status_int, webob.exc.HTTPUnauthorized.code)
1582
def test_add_member(self):
1584
Tests adding image members raises right exception
1586
req = webob.Request.blank('/images/2/members/pattieblack')
1590
res = req.get_response(self.api)
1591
self.assertEquals(res.status_int, webob.exc.HTTPUnauthorized.code)
1593
def test_delete_member(self):
1595
Tests deleting image members raises right exception
1597
req = webob.Request.blank('/images/2/members/pattieblack')
1599
req.method = 'DELETE'
1601
res = req.get_response(self.api)
1602
self.assertEquals(res.status_int, webob.exc.HTTPUnauthorized.code)
1523
1605
class TestGlanceAPI(unittest.TestCase):
1524
1606
def setUp(self):
1898
1980
req = webob.Request.blank('/images/detail?marker=10')
1899
1981
res = req.get_response(self.api)
1900
1982
self.assertEquals(res.status_int, 400)
1984
def test_get_image_members(self):
1986
Tests members listing for existing images
1988
req = webob.Request.blank('/images/2/members')
1992
res = req.get_response(self.api)
1993
self.assertEquals(res.status_int, 200)
1995
memb_list = json.loads(res.body)
1996
num_members = len(memb_list['members'])
1997
self.assertEquals(num_members, 0)
1999
def test_get_image_members_not_existing(self):
2001
Tests proper exception is raised if attempt to get members of
2004
req = webob.Request.blank('/images/3/members')
2008
res = req.get_response(self.api)
2009
self.assertEquals(res.status_int,
2010
webob.exc.HTTPNotFound.code)
2012
def test_get_member_images(self):
2014
Tests image listing for members
2016
req = webob.Request.blank('/shared-images/pattieblack')
2020
res = req.get_response(self.api)
2021
self.assertEquals(res.status_int, 200)
2023
memb_list = json.loads(res.body)
2024
num_members = len(memb_list['shared_images'])
2025
self.assertEquals(num_members, 0)
2027
def test_replace_members(self):
2029
Tests replacing image members raises right exception
2031
fixture = dict(member_id='pattieblack')
2033
req = webob.Request.blank('/images/2/members')
2036
req.content_type = 'application/json'
2037
req.body = json.dumps(dict(image_memberships=fixture))
2039
res = req.get_response(self.api)
2040
self.assertEquals(res.status_int, webob.exc.HTTPUnauthorized.code)
2042
def test_add_member(self):
2044
Tests adding image members raises right exception
2046
req = webob.Request.blank('/images/2/members/pattieblack')
2050
res = req.get_response(self.api)
2051
self.assertEquals(res.status_int, webob.exc.HTTPUnauthorized.code)
2053
def test_delete_member(self):
2055
Tests deleting image members raises right exception
2057
req = webob.Request.blank('/images/2/members/pattieblack')
2059
req.method = 'DELETE'
2061
res = req.get_response(self.api)
2062
self.assertEquals(res.status_int, webob.exc.HTTPUnauthorized.code)