Comment 6 for bug 1262360

Revision history for this message
Sergii Kashaba (skashaba) wrote :

Git diff
diff --git a/keystone/tests/backend_ldap_sql.conf b/keystone/tests/backend_ldap_sql.conf
index 5579e75..e64e9bf 100644
--- a/keystone/tests/backend_ldap_sql.conf
+++ b/keystone/tests/backend_ldap_sql.conf
@@ -1,5 +1,6 @@
 [sql]
-connection = sqlite://
+#connection = sqlite://
+connection = mysql://root:qwerty@127.0.0.1/keystone_test?charset=utf8
 #For a file based sqlite use
 #connection = sqlite:////tmp/keystone.db
 #To Test MySQL:
diff --git a/keystone/tests/test_backend_ldap.py b/keystone/tests/test_backend_ldap.py
index 103ccf2..aec2f66 100644
--- a/keystone/tests/test_backend_ldap.py
+++ b/keystone/tests/test_backend_ldap.py
@@ -980,6 +980,27 @@ class LdapIdentitySqlAssignment(sql.Base, tests.TestCase, BaseLDAPIdentity):
         self.skipTest(
             'N/A: Not part of SQL backend')

+ def test_delete_domain_with_user_added(self):
+ domain = {'id': uuid.uuid4().hex, 'name': uuid.uuid4().hex,
+ 'enabled': True}
+ project = {'id': uuid.uuid4().hex, 'name': uuid.uuid4().hex,
+ 'domain_id': domain['id'],
+ 'description': uuid.uuid4().hex, 'enabled': True
+ }
+ self.assignment_api.create_domain(domain['id'], domain)
+ domain_ref = self.assignment_api.get_domain(domain['id'])
+ self.assertDictEqual(domain_ref, domain)
+
+ self.assignment_api.create_grant(user_id=self.user_foo['id'],
+ domain_id=domain['id'],
+ role_id=self.role_member['id'])
+ self.assignment_api.delete_grant(user_id=self.user_foo['id'],
+ domain_id=domain['id'],
+ role_id=self.role_member['id'])
+ self.assignment_api.delete_domain(domain['id'])
+ self.assertRaises(exception.DomainNotFound,
+ self.assignment_api.get_domain,
+ domain['id'])