renamed SendMailMessage -> Message; distinguish between wrapping as MIMEText and encoding; added repr

This commit is contained in:
2022-02-15 13:36:49 +01:00
parent 2cdc67f4af
commit 654d611f62

View File

@@ -8,13 +8,13 @@ OUTPUT_DIVIDER_BAR = "=" * len(OUTPUT_DIVIDER)
def sendmail(to_addr, from_addr=None, subject=None, body=None):
msg = SendMailMessage(to_addr, from_addr=from_addr, subject=subject, body=body)
msg = Message(to_addr, from_addr=from_addr, subject=subject, body=body)
msg.send()
return msg
class SendMailMessage:
class Message:
def __init__(self, to_addr, from_addr=None, subject=None, body=None):
self.to_addr = to_addr
@@ -26,8 +26,14 @@ class SendMailMessage:
msg = self.encode()
_run_sendmail(msg)
def encode(self, *args, **kwargs):
return self.wrap().as_bytes(*args, **kwargs)
def __repr__(self):
return self.wrap().as_string()
def wrap(self):
from_addr = self.from_addr
if from_addr is None:
from_addr = getpass.getuser()
@@ -40,7 +46,7 @@ class SendMailMessage:
msg["To"] = self.to_addr
msg["From"] = from_addr
msg["Subject"] = self.subject
return msg.as_bytes(*args, **kwargs)
return msg