-
Notifications
You must be signed in to change notification settings - Fork 61
/
Copy pathtest_utils.py
63 lines (53 loc) · 2.28 KB
/
test_utils.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
from django.test import TestCase
from api.models import Tenant
from api.utils import migration_resource_deletion
from management.models import BindingMapping, Role, Workspace
from management.relation_replicator.noop_replicator import NoopReplicator
from management.tenant_mapping.model import TenantMapping
from management.tenant_service.v2 import V2TenantBootstrapService
class TestAPIUtils(TestCase):
def test_migration_resource_deletion(self):
org_id_1 = "12345678"
org_id_2 = "87654321"
bootstrap_service = V2TenantBootstrapService(NoopReplicator())
bootstrapped_tenant_1 = bootstrap_service.new_bootstrapped_tenant(org_id_1)
bootstrapped_tenant_2 = bootstrap_service.new_bootstrapped_tenant(org_id_2)
tenant = bootstrapped_tenant_1.tenant
another_tenant = bootstrapped_tenant_2.tenant
migration_resource_deletion("workspace", org_id_2)
self.assertFalse(Workspace.objects.filter(tenant=another_tenant).exists())
self.assertEqual(Workspace.objects.filter(tenant=tenant).count(), 2)
migration_resource_deletion("workspace", None)
self.assertFalse(Workspace.objects.exists())
# Delete tenantmappings
migration_resource_deletion("mapping", org_id_2)
self.assertFalse(TenantMapping.objects.filter(tenant=another_tenant).exists())
migration_resource_deletion("mapping", None)
self.assertFalse(TenantMapping.objects.exists())
# Delete bindingmappings
tenant_role = Role.objects.create(
name="role",
tenant=tenant,
)
another_role = Role.objects.create(
name="role",
tenant=another_tenant,
)
system_role = Role.objects.create(
name="role",
tenant=Tenant.objects.get_public_tenant(),
system=True,
)
BindingMapping.objects.create(
role=tenant_role,
)
BindingMapping.objects.create(
role=another_role,
)
BindingMapping.objects.create(
role=system_role,
)
with self.assertRaises(ValueError):
migration_resource_deletion("binding", org_id_2)
migration_resource_deletion("binding", None)
self.assertFalse(BindingMapping.objects.exists())