Merge "Tenants API User Model - Role Tests Parity"
This commit is contained in:
@@ -13,7 +13,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
"""
|
"""
|
||||||
from cloudcafe.identity.v2_0.base import BaseIdentityListModel
|
import json
|
||||||
|
from cloudcafe.identity.v2_0.common.models.base import BaseIdentityListModel
|
||||||
|
|
||||||
|
|
||||||
class Users(BaseIdentityListModel):
|
class Users(BaseIdentityListModel):
|
||||||
@@ -47,6 +48,27 @@ class User(BaseIdentityListModel):
|
|||||||
self.enabled = enabled
|
self.enabled = enabled
|
||||||
self.email = email
|
self.email = email
|
||||||
|
|
||||||
|
def _obj_to_json(self):
|
||||||
|
json_dict = {"user": {"id": self.id_,
|
||||||
|
"name": self.name,
|
||||||
|
"tenantId": self.tenant_id,
|
||||||
|
"enabled": self.enabled,
|
||||||
|
"email": self.email}}
|
||||||
|
|
||||||
|
return json.dumps(json_dict)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def _dict_to_obj(cls, json_dict):
|
def _dict_to_obj(cls, json_dict):
|
||||||
return User(**json_dict)
|
user = User(id_=json_dict.get('id'),
|
||||||
|
name=json_dict.get('name'),
|
||||||
|
tenant_id=json_dict.get('tenantId'),
|
||||||
|
enabled=json_dict.get('enabled'),
|
||||||
|
email=json_dict.get('email'))
|
||||||
|
|
||||||
|
return user
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def _json_to_obj(cls, serialized_str):
|
||||||
|
json_dict = json.loads(serialized_str)
|
||||||
|
|
||||||
|
return cls._dict_to_obj(json_dict.get('user'))
|
||||||
|
|||||||
@@ -0,0 +1,57 @@
|
|||||||
|
"""
|
||||||
|
Copyright 2013 Rackspace
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
"""
|
||||||
|
import json
|
||||||
|
|
||||||
|
from unittest import TestCase
|
||||||
|
from cloudcafe.identity.v2_0.tenants_api.models.responses.user \
|
||||||
|
import User, Users
|
||||||
|
|
||||||
|
|
||||||
|
class UserTest(TestCase):
|
||||||
|
def setUp(self):
|
||||||
|
self.user_id = "USER_ID"
|
||||||
|
self.user_name = "TEST_USER"
|
||||||
|
self.user_tenant_id = None
|
||||||
|
self.user_enabled = True
|
||||||
|
self.user_email = "user@test.com"
|
||||||
|
self.user_dict = {
|
||||||
|
"name": self.user_name,
|
||||||
|
"id": self.user_id,
|
||||||
|
"tenantId": self.user_tenant_id,
|
||||||
|
"enabled": self.user_enabled,
|
||||||
|
"email": self.user_email}
|
||||||
|
|
||||||
|
self.expected_user = User(id_=self.user_id,
|
||||||
|
name=self.user_name,
|
||||||
|
tenant_id=self.user_tenant_id,
|
||||||
|
enabled=self.user_enabled,
|
||||||
|
email=self.user_email)
|
||||||
|
self.user_dict_list = [self.user_dict]
|
||||||
|
self.expected_users = Users(users=[self.expected_user])
|
||||||
|
self.serialized_str = json.dumps({"user": self.user_dict})
|
||||||
|
self.expected_json = json.loads(self.serialized_str)
|
||||||
|
|
||||||
|
def test_dict_to_obj(self):
|
||||||
|
assert self.expected_user == User._dict_to_obj(self.user_dict)
|
||||||
|
|
||||||
|
def test_list_to_obj(self):
|
||||||
|
self.expected_users == Users._list_to_obj(self.user_dict_list)
|
||||||
|
|
||||||
|
def test_json_to_obj(self):
|
||||||
|
self.expected_user == User._json_to_obj(self.serialized_str)
|
||||||
|
|
||||||
|
def test_obj_to_json(self):
|
||||||
|
self.expected_json == self.expected_user._obj_to_json()
|
||||||
Reference in New Issue
Block a user