changes to make image membership tests pass
Needed by Change-Id: I270ad24c4d82bc31fb5b07ea05bc84458844143e - introduced MemberList model - added remote image url properties to config - rebased with dependancy - implemented member model deserialization - updated relevant images client calls - fixed outdated/incorrect import user.py - fixed tenants deserialization Change-Id: I4a892c001ab312000ce59da59c73d3a75316963e
This commit is contained in:
parent
05d26a77db
commit
745e1c86cd
@ -1,6 +1,6 @@
|
||||
from cafe.engine.clients.rest import AutoMarshallingRestClient
|
||||
from cloudcafe.images.v1_0.models.image import Image
|
||||
from cloudcafe.images.v1_0.models.member import Member
|
||||
from cloudcafe.images.v1_0.models.member import MemberList
|
||||
|
||||
|
||||
class ImagesClient(AutoMarshallingRestClient):
|
||||
@ -109,7 +109,7 @@ class ImagesClient(AutoMarshallingRestClient):
|
||||
url = '{0}/images/{1}/members'.format(self.url, image_id)
|
||||
|
||||
return self.request('GET', url,
|
||||
response_entity_type=Member,
|
||||
response_entity_type=MemberList,
|
||||
requestslib_kwargs=requestslib_kwargs)
|
||||
|
||||
def update_image(self, image_id, image_data=None, headers=None,
|
||||
|
@ -1,7 +1,31 @@
|
||||
from cafe.engine.models.base import AutoMarshallingModel
|
||||
import json
|
||||
from cafe.engine.models.base import \
|
||||
AutoMarshallingModel, AutoMarshallingListModel
|
||||
|
||||
|
||||
class Member(AutoMarshallingModel):
|
||||
def __init__(self, member_id=None, shared_images=None):
|
||||
def __init__(self, member_id=None, shared_images=None, can_share=None):
|
||||
self.member_id = member_id
|
||||
self.shared_images = shared_images
|
||||
self.can_share = can_share
|
||||
|
||||
@classmethod
|
||||
def _json_to_obj(cls, serialized_str):
|
||||
json_dict = json.loads(serialized_str)
|
||||
|
||||
if 'members' in json_dict.keys():
|
||||
members = []
|
||||
members.extend([Member(**m) for m in json_dict['members']])
|
||||
return members
|
||||
else:
|
||||
return Member(**json_dict)
|
||||
|
||||
|
||||
class MemberList(AutoMarshallingListModel):
|
||||
"""Represent a list of Members"""
|
||||
|
||||
@classmethod
|
||||
def _json_to_obj(cls, serialized_str):
|
||||
json_dict = json.loads(serialized_str)
|
||||
|
||||
return [Member(**m) for m in json_dict.get('members')]
|
||||
|
Loading…
x
Reference in New Issue
Block a user