Пример #1
0
 def test_tenant_xml_serialization_mapping(self):
     tenant = Tenant(id=1, name="the resource", rolegrant_id=12)
     xml_str = tenant.to_xml(hints={"maps": {"refId": "rolegrant_id", }})
     self.assertTrue(testutils.XMLTools.xmlEqual(xml_str,
         '<tenant xmlns="http://docs.openstack.org/identity/api/v2.0"\
                 id="1" name="the resource" refId="12">\
                 <description/></tenant>'))
Пример #2
0
 def test_resource_json_serialization_mapping(self):
     tenant = Tenant(id=1, name="the tenant", rolegrant_id=12)
     json_str = tenant.to_json(hints={"maps": {
         "refId": "rolegrant_id",
     }})
     d1 = json.loads(json_str)
     d2 = {"tenant": {"name": "the tenant", "id": "1", "refId": 12}}
     self.assertDictEqual(d1, d2)
Пример #3
0
 def test_tenant_json_serialization_types(self):
     tenant = Tenant(id=1, name="the tenant", bool=True, int=5)
     json_str = tenant.to_json(hints={"types":
         [("bool", bool), ("int", int)]})
     d1 = json.loads(json_str)
     d2 = {"tenant": {"name": "the tenant", "id": "1", "bool": True,
                      "int": 5}}
     self.assertDictEqual(d1, d2)
Пример #4
0
 def test_tenant_xml_serialization(self):
     tenant = Tenant(id=4, name="the tenant", description="X", blank=None)
     xml_str = tenant.to_xml()
     self.assertTrue(testutils.XMLTools.xmlEqual(xml_str,
                     '<tenant \
                     xmlns="http://docs.openstack.org/identity/api/v2.0" \
                     id="4" name="the tenant">\
                     <description>X</description></tenant>'))
Пример #5
0
    def test_tenant_json_serialization(self):
        tenant = Tenant(id=3, name="the tenant", enabled=True, blank=None)
        tenant["dynamic"] = "test"
        json_str = tenant.to_json()

        d1 = json.loads(json_str)
        d2 = {"tenant": {"name": "the tenant", "id": "3", "enabled": True,
                         "dynamic": "test"}}
        self.assertDictEqual(d1, d2)
Пример #6
0
    def test_tenant_description_values(self):
        tenant = Tenant(id=10, name="the tenant")
        self.assertIsNone(tenant.description,
                          "Uninitialized description should be None")
        xml = tenant.to_dom()
        desc = xml.find("{http://docs.openstack.org/identity/api/v2.0}"
                             "description")
        self.assertIsNone(desc,
                          "Uninitialized description should not exist in xml")

        tenant = Tenant(id=10, name="the tenant", description=None)
        self.assertIsNone(tenant.description,
                          "Description initialized to None should be None")
        xml = tenant.to_dom()
        desc = xml.find("{http://docs.openstack.org/identity/api/v2.0}"
                             "description")
        self.assertIsNone(desc,
                          "Uninitialized description should not exist in xml")

        tenant = Tenant(id=10, name="the tenant", description='')
        self.assertEquals(tenant.description, '',
            'Description initialized to empty string should be empty string')
        xml = tenant.to_dom()
        desc = xml.find("description")
        self.assertEquals(desc.text, None,
                          "Blank Description should show as empty tag in xml")

        tenant = Tenant(id=10, name="the tenant", description=None)
        xml = tenant.to_xml(hints={"tags": ["description"]})
        xml = tenant.to_dom()
        desc = xml.find("description")
        self.assertEquals(desc.text, None,
                          "'None' Description should show as empty tag in xml")
Пример #7
0
    def test_tenant_initialization(self):
        tenant = Tenant(id=3, name="the tenant", enabled=True, blank=None)
        self.assertTrue(tenant.enabled)

        tenant = Tenant(id=35, name="the tenant", enabled=0, blank=None)
        self.assertEquals(tenant.enabled, False)

        json_str = tenant.to_json()
        d1 = json.loads(json_str)
        self.assertIn('tenant', d1)
        self.assertIn('enabled', d1['tenant'])
        self.assertEquals(d1['tenant']['enabled'], False)

        tenant = Tenant(id=36, name="the tenant", enabled=False, blank=None)
        self.assertEquals(tenant.enabled, False)
Пример #8
0
 def test_tenant_json_deserialization(self):
     tenant = Tenant.from_json('{"tenant": {"name": "the tenant",\
                               "id": 5, "extra": "some data"}}',
                         hints={"contract_attributes": ['id', 'name']})
     self.assertIsInstance(tenant, Tenant)
     self.assertEquals(tenant.id, 5)
     self.assertEquals(tenant.name, "the tenant")
Пример #9
0
 def test_tenant_static_properties(self):
     tenant = Tenant(id=1, name="the tenant", enabled=True, blank=None)
     self.assertEquals(tenant.id, "1")
     self.assertEquals(tenant.name, "the tenant")
     self.assertTrue(tenant.enabled)
     self.assertEquals(tenant.description, None)
     self.assertRaises(AttributeError, getattr, tenant, 'some_bad_property')
Пример #10
0
 def to_model(ref):
     """ Returns Keystone model object based on SQLAlchemy model"""
     if ref:
         return Tenant(id=ref.uid,
                       name=ref.name,
                       description=ref.desc,
                       enabled=bool(ref.enabled))
Пример #11
0
 def test_tenant(self):
     tenant = Tenant()
     self.assertEquals(
         str(tenant.__class__), "<class 'keystone.models.Tenant'>",
         "tenant should be of instance "
         "class keystone.models.Tenant but instead "
         "was '%s'" % str(tenant.__class__))
     self.assertIsInstance(tenant, dict, "")
Пример #12
0
 def test_tenant_xml_deserialization_hintless(self):
     tenant = Tenant.from_xml('<tenant \
                     xmlns="http://docs.openstack.org/identity/api/v2.0" \
                     enabled="none" id="7" name="the tenant">\
                     <description>qwerty text</description></tenant>')
     self.assertIsInstance(tenant, Tenant)
     self.assertEquals(tenant.id, "7")
     self.assertEquals(tenant.name, "the tenant")
     self.assertEquals(tenant.description, "qwerty text")
Пример #13
0
 def test_tenant_xml_deserialization_hintless(self):
     tenant = Tenant.from_xml('<tenant \
                     xmlns="http://docs.openstack.org/identity/api/v2.0" \
                     enabled="none" id="7" name="the tenant">\
                     <description>qwerty text</description></tenant>')
     self.assertIsInstance(tenant, Tenant)
     self.assertEquals(tenant.id, "7")
     self.assertEquals(tenant.name, "the tenant")
     self.assertEquals(tenant.description, "qwerty text")
Пример #14
0
 def test_tenant_xml_deserialization(self):
     tenant = Tenant.from_xml('<tenant \
                     xmlns="http://docs.openstack.org/identity/api/v2.0" \
                     enabled="true" id="6" name="the tenant">\
                     <description>qwerty text</description></tenant>',
                         hints={
                             "contract_attributes": ['id', 'name'],
                             "types": [("id", int),
                                 ("description", str)]})
     self.assertIsInstance(tenant, Tenant)
     self.assertEquals(tenant.id, 6)
     self.assertEquals(tenant.name, "the tenant")
     self.assertEquals(tenant.description, "qwerty text")
Пример #15
0
    def test_tenant_initialization(self):
        tenant = Tenant(id=3, name="the tenant", enabled=True, blank=None)
        self.assertTrue(tenant.enabled)

        tenant = Tenant(id=35, name="the tenant", enabled=0, blank=None)
        self.assertEquals(tenant.enabled, False)

        json_str = tenant.to_json()
        d1 = json.loads(json_str)
        self.assertIn('tenant', d1)
        self.assertIn('enabled', d1['tenant'])
        self.assertEquals(d1['tenant']['enabled'], False)

        tenant = Tenant(id=36, name="the tenant", enabled=False, blank=None)
        self.assertEquals(tenant.enabled, False)
Пример #16
0
 def test_tenant_validation(self):
     tenant = Tenant(id=9, name="the tenant", blank=None)
     self.assertTrue(tenant.validate())
Пример #17
0
 def test_tenant_properties(self):
     tenant = Tenant(id=2, name="the tenant", blank=None)
     tenant["dynamic"] = "test"
     self.assertEquals(tenant["dynamic"], "test")
Пример #18
0
 def test_resource_json_serialization_mapping(self):
     tenant = Tenant(id=1, name="the tenant", rolegrant_id=12)
     json_str = tenant.to_json(hints={"maps": {"refId": "rolegrant_id", }})
     d1 = json.loads(json_str)
     d2 = {"tenant": {"name": "the tenant", "id": "1", "refId": 12}}
     self.assertDictEqual(d1, d2)
Пример #19
0
    def test_tenant_description_values(self):
        tenant = Tenant(id=10, name="the tenant")
        self.assertIsNone(tenant.description,
                          "Uninitialized description should be None")
        xml = tenant.to_dom()
        desc = xml.find("{http://docs.openstack.org/identity/api/v2.0}"
                        "description")
        self.assertIsNone(desc,
                          "Uninitialized description should not exist in xml")

        tenant = Tenant(id=10, name="the tenant", description=None)
        self.assertIsNone(tenant.description,
                          "Description initialized to None should be None")
        xml = tenant.to_dom()
        desc = xml.find("{http://docs.openstack.org/identity/api/v2.0}"
                        "description")
        self.assertIsNone(desc,
                          "Uninitialized description should not exist in xml")

        tenant = Tenant(id=10, name="the tenant", description='')
        self.assertEquals(
            tenant.description, '',
            'Description initialized to empty string should be empty string')
        xml = tenant.to_dom()
        desc = xml.find("description")
        self.assertEquals(desc.text, '',
                          "Blank Description should show as blank tag in xml")

        tenant = Tenant(id=10, name="the tenant", description=None)
        xml = tenant.to_xml(hints={"tags": ["description"]})
        xml = tenant.to_dom()
        desc = xml.find("description")
        self.assertEquals(
            desc, None, "'None' Description should show as empty tag in xml")
Пример #20
0
 def test_tenant_validation(self):
     tenant = Tenant(id=9, name="the tenant", blank=None)
     self.assertTrue(tenant.validate())
Пример #21
0
 def test_tenant_inspection(self):
     tenant = Tenant(id=8, name="the tenant", blank=None)
     self.assertFalse(tenant.inspect())
Пример #22
0
 def test_tenant_inspection(self):
     tenant = Tenant(id=8, name="the tenant", blank=None)
     self.assertFalse(tenant.inspect())