From eab7606f93b1dad21522ad319e2a5c2eff2bdce5 Mon Sep 17 00:00:00 2001 From: Son Date: Wed, 27 Apr 2022 16:05:40 +0200 Subject: [PATCH] make sure disabled user can't create new alias --- app/models.py | 3 +++ tests/test_models.py | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/app/models.py b/app/models.py index ed30ca52..00793eff 100644 --- a/app/models.py +++ b/app/models.py @@ -683,6 +683,9 @@ class User(Base, ModelMixin, UserMixin, PasswordOracle): Whether user can create a new alias. User can't create a new alias if - has more than 15 aliases in the free plan, *even in the free trial* """ + if self.disabled: + return False + if self.lifetime_or_active_subscription(): return True else: diff --git a/tests/test_models.py b/tests/test_models.py index 1fb8f5f0..c9f1b699 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -250,3 +250,11 @@ def test_EnumE(): assert E.get_value("A") == 100 assert E.get_value("Not existent") is None + + +def test_can_create_new_alias_disabled_user(): + user = create_new_user() + assert user.can_create_new_alias() + + user.disabled = True + assert not user.can_create_new_alias()