From 287fcf7e3e40e163e40a089422f934dba08407bf Mon Sep 17 00:00:00 2001 From: richard-dds Date: Wed, 22 Aug 2018 11:24:55 -0400 Subject: [PATCH] Factor out _create_workspace_role --- atst/domain/workspaces.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/atst/domain/workspaces.py b/atst/domain/workspaces.py index c69aa3ca..29fe6d8f 100644 --- a/atst/domain/workspaces.py +++ b/atst/domain/workspaces.py @@ -14,14 +14,9 @@ class Workspaces(object): def create(cls, request, name=None): name = name or request.id workspace = Workspace(request=request, name=name) - - role = Roles.get("owner") - workspace_role = WorkspaceRole( - user=request.creator, role=role, workspace=workspace - ) + Workspaces._create_workspace_role(request.creator, workspace, "owner") db.session.add(workspace) - db.session.add(workspace_role) db.session.commit() return workspace @@ -67,6 +62,13 @@ class Workspaces(object): return workspaces @classmethod + def _create_workspace_role(cls, user, workspace, role_name): + role = Roles.get(role_name) + workspace_role = WorkspaceRole( + user=user, role=role, workspace=workspace + ) + db.session.add(workspace_role) + return workspace_role class Members(object):