diff --git a/app/email_utils.py b/app/email_utils.py index 912bfd3e..5230a6c0 100644 --- a/app/email_utils.py +++ b/app/email_utils.py @@ -742,8 +742,7 @@ def generate_reply_email(contact_email: str) -> str: # make sure contact_email can be ascii-encoded contact_email = convert_to_id(contact_email) - # remove potential space - contact_email = contact_email.replace(" ", "") + contact_email = contact_email.lower().strip().replace(" ", "") contact_email = contact_email[:45] contact_email = contact_email.replace("@", ".at.") diff --git a/tests/test_email_utils.py b/tests/test_email_utils.py index 8baa6d09..22ba32eb 100644 --- a/tests/test_email_utils.py +++ b/tests/test_email_utils.py @@ -404,7 +404,11 @@ def test_generate_reply_email(flask_client): assert reply_email.endswith(EMAIL_DOMAIN) reply_email = generate_reply_email("👌汉字@example.org") - assert reply_email.startswith("ra+YiZi.at.example.org+") + assert reply_email.startswith("ra+yizi.at.example.org+") + + # make sure reply_email only contain lowercase + reply_email = generate_reply_email("TEST@example.org") + assert reply_email.startswith("ra+test.at.example.org") def test_get_addrs_from_header():