Handle sender_format in PATCH /api/setting
This commit is contained in:
parent
c794e73abd
commit
15a6d9630a
|
@ -62,6 +62,13 @@ def update_setting():
|
|||
else:
|
||||
user.alias_generator = AliasGeneratorEnum.uuid.value
|
||||
|
||||
if "sender_format" in data:
|
||||
sender_format = data["sender_format"]
|
||||
if not SenderFormatEnum.has_name(sender_format):
|
||||
return jsonify(error="Invalid sender_format"), 400
|
||||
|
||||
user.sender_format = SenderFormatEnum.get_value(sender_format)
|
||||
|
||||
if "random_alias_default_domain" in data:
|
||||
default_domain = data["random_alias_default_domain"]
|
||||
sl_domain: SLDomain = SLDomain.get_by(domain=default_domain)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import json
|
||||
|
||||
from app.models import CustomDomain, AliasGeneratorEnum
|
||||
from app.models import CustomDomain, AliasGeneratorEnum, SenderFormatEnum
|
||||
from tests.utils import login, pretty
|
||||
|
||||
|
||||
|
@ -54,6 +54,18 @@ def test_update_settings_random_alias_default_domain(flask_client):
|
|||
assert user.default_random_alias_domain() == "d1.test"
|
||||
|
||||
|
||||
def test_update_settings_sender_format(flask_client):
|
||||
user = login(flask_client)
|
||||
assert user.sender_format == SenderFormatEnum.VIA.value
|
||||
|
||||
r = flask_client.patch("/api/setting", json={"sender_format": "invalid"})
|
||||
assert r.status_code == 400
|
||||
|
||||
r = flask_client.patch("/api/setting", json={"sender_format": "AT"})
|
||||
assert r.status_code == 200
|
||||
assert user.sender_format == SenderFormatEnum.AT.value
|
||||
|
||||
|
||||
def test_get_setting_domains(flask_client):
|
||||
user = login(flask_client)
|
||||
CustomDomain.create(user_id=user.id, domain="ab.cd", verified=True, commit=True)
|
||||
|
|
Loading…
Reference in New Issue