data_transfer: allow missing role slug (#51463)
This commit is contained in:
parent
961af9538e
commit
62b7fb4d60
|
@ -368,7 +368,7 @@ def import_site(json_d, import_context=None):
|
|||
roles_ds = []
|
||||
for role_d in json_d.get('roles', []):
|
||||
# ignore internal roles
|
||||
if role_d['slug'].startswith('_'):
|
||||
if role_d.get('slug', '').startswith('_'):
|
||||
continue
|
||||
roles_ds.append(RoleDeserializer(role_d, import_context))
|
||||
|
||||
|
|
|
@ -479,6 +479,13 @@ def test_import_roles_role_delete_orphans(db):
|
|||
import_site({'roles': roles}, ImportContext(role_delete_orphans=True))
|
||||
|
||||
|
||||
def test_roles_import_no_slug(db):
|
||||
roles = [{'name': 'some role', 'description': 'some role description', 'ou': None}]
|
||||
res = import_site({'roles': roles}, ImportContext())
|
||||
role = Role.objects.get(name='some role')
|
||||
assert role.slug == 'some-role'
|
||||
|
||||
|
||||
def test_import_ou(db):
|
||||
uuid = get_hex_uuid()
|
||||
name = 'ou name'
|
||||
|
|
Loading…
Reference in New Issue