(session,
log = regular_log.default(),
project: Project = None,
role_id: int = None,
)
| 31 | |
| 32 | |
| 33 | def role_delete_core(session, |
| 34 | log = regular_log.default(), |
| 35 | project: Project = None, |
| 36 | role_id: int = None, |
| 37 | ): |
| 38 | if project is None: |
| 39 | log['error']['project'] = 'Provide project for role creation.' |
| 40 | return None, log |
| 41 | |
| 42 | if role_id is None: |
| 43 | log['error']['role_id'] = 'Provide role_id for role creation.' |
| 44 | return None, log |
| 45 | |
| 46 | role = Role.get_by_id(session, role_id) |
| 47 | if role is None: |
| 48 | log['error']['role_id'] = 'Role does not exists.' |
| 49 | return None, log |
| 50 | if role.project_id != project.id: |
| 51 | log['error']['project_id'] = 'Role does not belong to project.' |
| 52 | return None, log |
| 53 | |
| 54 | session.delete(role) |
| 55 | |
| 56 | role_data = role.serialize() |
| 57 | return role_data, log |
no test coverage detected