diff --git a/test/test_send_mail.py b/test/test_send_mail.py
index e3ae5a9e448b4e1a2e11ab74d1624d64b49543d0..01bb6a755bbf47f25cd111d45685016637eb0373 100644
--- a/test/test_send_mail.py
+++ b/test/test_send_mail.py
@@ -1,8 +1,18 @@
+from typing import List
+from email.mime.multipart import MIMEMultipart
+from email.mime.text import MIMEText  # noqa: F401
 from contextlib import contextmanager
 from compendium_v2.db.auth_model import User
 from compendium_v2.email import send_admin_signup_notification, send_user_signup_notification
 
 
+def decode_message(msg: MIMEMultipart):
+    message: List[MIMEText] = msg.get_payload()
+    text: MIMEText = message[0]
+    decoded = text.get_payload(decode=True).decode('utf-8')
+    return decoded
+
+
 @contextmanager
 def test_user(app):
     with app.app_context():
@@ -18,8 +28,10 @@ def test_user(app):
 def test_signup_email_admin(app, mocked_admin_user, mocker):
 
     def _send_mail(*args, **kwargs):
+        _msg = args[-1]
+        decoded = decode_message(_msg)
         message = 'testname has just signed up with the email testmail321@email.com and provider ID testsub'
-        assert args[-1].split('\n\n')[-1] == message
+        assert decoded == message
 
     mocker.patch('compendium_v2.email._send_mail', _send_mail)
     with test_user(app) as user:
@@ -29,7 +41,9 @@ def test_signup_email_admin(app, mocked_admin_user, mocker):
 def test_signup_email_user(app, mocker):
 
     def _send_mail(*args, **kwargs):
-        assert len(args[-1].split('\n\n', 1)[-1]) > 50  # check that there's a message
+        _msg = args[-1]
+        decoded = decode_message(_msg)
+        assert len(decoded) > 50  # check that there's a message
 
     mocker.patch('compendium_v2.email._send_mail', _send_mail)
     with test_user(app) as user: