Merge "Added method to return OpenStackVmInstance from Heat."
[snaps.git] / snaps / openstack / utils / tests / keystone_utils_tests.py
index 3aa275d..bd0086b 100644 (file)
@@ -17,7 +17,7 @@ import uuid
 from snaps.openstack.create_project import ProjectSettings
 from snaps.openstack.create_user import UserSettings
 from snaps.openstack.tests.os_source_file_test import OSComponentTestCase
-from snaps.openstack.utils import keystone_utils
+from snaps.openstack.utils import keystone_utils, neutron_utils
 
 __author__ = 'spisarski'
 
@@ -73,7 +73,18 @@ class KeystoneUtilsTests(OSComponentTestCase):
         Cleans the remote OpenStack objects
         """
         if self.project:
-                keystone_utils.delete_project(self.keystone, self.project)
+            neutron = neutron_utils.neutron_client(self.os_creds)
+            default_sec_grp = neutron_utils.get_security_group(
+                neutron, sec_grp_name='default',
+                project_id=self.project.id)
+            if default_sec_grp:
+                try:
+                    neutron_utils.delete_security_group(
+                        neutron, default_sec_grp)
+                except:
+                    pass
+
+            keystone_utils.delete_project(self.keystone, self.project)
 
         if self.user:
             keystone_utils.delete_user(self.keystone, self.user)
@@ -85,8 +96,10 @@ class KeystoneUtilsTests(OSComponentTestCase):
         """
         Tests the keystone_utils.create_user() function
         """
-        user_settings = UserSettings(name=self.username,
-                                     password=str(uuid.uuid4()))
+        user_settings = UserSettings(
+            name=self.username,
+            password=str(uuid.uuid4()),
+            domain_name=self.os_creds.user_domain_name)
         self.user = keystone_utils.create_user(self.keystone, user_settings)
         self.assertEqual(self.username, self.user.name)
 
@@ -98,7 +111,8 @@ class KeystoneUtilsTests(OSComponentTestCase):
         """
         Tests the keyston_utils.create_project() funtion
         """
-        project_settings = ProjectSettings(name=self.project_name)
+        project_settings = ProjectSettings(
+            name=self.project_name, domain=self.os_creds.project_domain_name)
         self.project = keystone_utils.create_project(self.keystone,
                                                      project_settings)
         self.assertEqual(self.project_name, self.project.name)
@@ -108,6 +122,11 @@ class KeystoneUtilsTests(OSComponentTestCase):
         self.assertIsNotNone(project)
         self.assertEqual(self.project_name, self.project.name)
 
+        domain = keystone_utils.get_domain_by_id(
+            self.keystone, project.domain_id)
+        self.assertIsNotNone(domain)
+        self.assertEqual(domain.id, project.domain_id)
+
     def test_get_endpoint_success(self):
         """
         Tests to ensure that proper credentials and proper service type can
@@ -161,12 +180,14 @@ class KeystoneUtilsTests(OSComponentTestCase):
         Tests the keystone_utils function grant_user_role_to_project()
         :return:
         """
-        user_settings = UserSettings(name=self.username,
-                                     password=str(uuid.uuid4()))
+        user_settings = UserSettings(
+            name=self.username, password=str(uuid.uuid4()),
+            domain_name=self.os_creds.user_domain_name)
         self.user = keystone_utils.create_user(self.keystone, user_settings)
         self.assertEqual(self.username, self.user.name)
 
-        project_settings = ProjectSettings(name=self.project_name)
+        project_settings = ProjectSettings(
+            name=self.project_name, domain=self.os_creds.project_domain_name)
         self.project = keystone_utils.create_project(self.keystone,
                                                      project_settings)
         self.assertEqual(self.project_name, self.project.name)