From 9927b22783e2deaac19e239fe068cd5e6e3d22e5 Mon Sep 17 00:00:00 2001 From: George Drummond Date: Tue, 14 May 2019 15:26:51 -0400 Subject: [PATCH] Disable rather than delete application_roles --- atst/domain/applications.py | 3 ++- tests/domain/test_applications.py | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/atst/domain/applications.py b/atst/domain/applications.py index f4b834ab..c5a1d94a 100644 --- a/atst/domain/applications.py +++ b/atst/domain/applications.py @@ -108,7 +108,8 @@ class Applications(BaseDomainClass): user_id=user_id, application_id=application.id ) - db.session.delete(application_role) + application_role.status = ApplicationRoleStatus.DISABLED + db.session.add(application_role) db.session.commit() for env in application.environments: diff --git a/tests/domain/test_applications.py b/tests/domain/test_applications.py index 6848795d..ccd3c5e9 100644 --- a/tests/domain/test_applications.py +++ b/tests/domain/test_applications.py @@ -173,8 +173,10 @@ def test_remove_member(): Applications.remove_member(application=application, user_id=member_role.user.id) - with pytest.raises(NotFoundError): - ApplicationRoles.get(user_id=user.id, application_id=application.id) + assert ( + ApplicationRoles.get(user_id=user.id, application_id=application.id).status + == ApplicationRoleStatus.DISABLED + ) # # TODO: Why does above raise NotFoundError and this returns None