summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2017-02-10 22:29:36 +0200
committerLars Wirzenius <liw@liw.fi>2017-02-10 22:29:36 +0200
commitec52942ab5e9057266878bb8c104e6b70d43f7fe (patch)
tree9ae258b896a19ccad78928deeff34b8e6dada22b
parent44245e959f972bef0bcbc45319fd5f4b039ece32 (diff)
downloadserver-yarns-ec52942ab5e9057266878bb8c104e6b70d43f7fe.tar.gz
Add helper for mail tests
-rw-r--r--imaptry34
-rw-r--r--smtptry14
2 files changed, 48 insertions, 0 deletions
diff --git a/imaptry b/imaptry
new file mode 100644
index 0000000..1fd88fe
--- /dev/null
+++ b/imaptry
@@ -0,0 +1,34 @@
+#!/usr/bin/env python2
+
+import email
+import imaplib
+import subprocess
+import sys
+
+
+def get_pass(pass_name):
+ p = subprocess.Popen(
+ ['pass', 'show', pass_name],
+ stdout=subprocess.PIPE)
+ stdout, stderr = p.communicate('')
+ return stdout.rstrip()
+
+user = sys.argv[1]
+host = sys.argv[2]
+pass_name = sys.argv[3]
+mailbox = sys.argv[4]
+
+m = imaplib.IMAP4_SSL(host)
+m.login(user, get_pass(pass_name))
+m.select(mailbox, True)
+typ, data = m.search(None, 'ALL')
+for num in data[0].split():
+ typ, data = m.fetch(num, '(RFC822)')
+ typ, text = data[0]
+ msg = email.message_from_string(text)
+ print 'From:', msg['From']
+ print 'To:', msg['To']
+ print 'Subject:', msg['Subject']
+ print
+m.close()
+m.logout()
diff --git a/smtptry b/smtptry
new file mode 100644
index 0000000..b8fdc02
--- /dev/null
+++ b/smtptry
@@ -0,0 +1,14 @@
+#!/usr/bin/env python2
+
+
+import smtplib
+import sys
+
+
+(server_name, from_addr, to_addr, msg) = sys.argv[1:]
+
+server = smtplib.SMTP(server_name)
+server.set_debuglevel(True)
+server.starttls()
+server.sendmail(from_addr, to_addr, msg)
+server.quit()