mirror of
https://github.com/certbot/certbot.git
synced 2026-08-01 19:02:52 +02:00
Remove unused notify code. (#7805)
This code is unused and hasn't been modified since 2015 except for various times our files have been renamed. Let's remove it.
This commit is contained in:
@@ -1,34 +0,0 @@
|
|||||||
"""Send e-mail notification to system administrators."""
|
|
||||||
|
|
||||||
import email
|
|
||||||
import smtplib
|
|
||||||
import socket
|
|
||||||
import subprocess
|
|
||||||
|
|
||||||
|
|
||||||
def notify(subject, whom, what):
|
|
||||||
"""Send email notification.
|
|
||||||
|
|
||||||
Try to notify the addressee (``whom``) by e-mail, with Subject:
|
|
||||||
defined by ``subject`` and message body by ``what``.
|
|
||||||
|
|
||||||
"""
|
|
||||||
msg = email.message_from_string(what)
|
|
||||||
msg.add_header("From", "Certbot renewal agent <root>")
|
|
||||||
msg.add_header("To", whom)
|
|
||||||
msg.add_header("Subject", subject)
|
|
||||||
msg = msg.as_string()
|
|
||||||
try:
|
|
||||||
lmtp = smtplib.LMTP()
|
|
||||||
lmtp.connect()
|
|
||||||
lmtp.sendmail("root", [whom], msg)
|
|
||||||
except (smtplib.SMTPHeloError, smtplib.SMTPRecipientsRefused,
|
|
||||||
smtplib.SMTPSenderRefused, smtplib.SMTPDataError, socket.error):
|
|
||||||
# We should try using /usr/sbin/sendmail in this case
|
|
||||||
try:
|
|
||||||
proc = subprocess.Popen(["/usr/sbin/sendmail", "-t"],
|
|
||||||
stdin=subprocess.PIPE)
|
|
||||||
proc.communicate(msg)
|
|
||||||
except OSError:
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
"""Tests for certbot._internal.notify."""
|
|
||||||
import socket
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
import mock
|
|
||||||
|
|
||||||
|
|
||||||
class NotifyTests(unittest.TestCase):
|
|
||||||
"""Tests for the notifier."""
|
|
||||||
|
|
||||||
@mock.patch("certbot._internal.notify.smtplib.LMTP")
|
|
||||||
def test_smtp_success(self, mock_lmtp):
|
|
||||||
from certbot._internal.notify import notify
|
|
||||||
lmtp_obj = mock.MagicMock()
|
|
||||||
mock_lmtp.return_value = lmtp_obj
|
|
||||||
self.assertTrue(notify("Goose", "auntrhody@example.com",
|
|
||||||
"The old grey goose is dead."))
|
|
||||||
self.assertEqual(lmtp_obj.connect.call_count, 1)
|
|
||||||
self.assertEqual(lmtp_obj.sendmail.call_count, 1)
|
|
||||||
|
|
||||||
@mock.patch("certbot._internal.notify.smtplib.LMTP")
|
|
||||||
@mock.patch("certbot._internal.notify.subprocess.Popen")
|
|
||||||
def test_smtp_failure(self, mock_popen, mock_lmtp):
|
|
||||||
from certbot._internal.notify import notify
|
|
||||||
lmtp_obj = mock.MagicMock()
|
|
||||||
mock_lmtp.return_value = lmtp_obj
|
|
||||||
lmtp_obj.sendmail.side_effect = socket.error(17)
|
|
||||||
proc = mock.MagicMock()
|
|
||||||
mock_popen.return_value = proc
|
|
||||||
self.assertTrue(notify("Goose", "auntrhody@example.com",
|
|
||||||
"The old grey goose is dead."))
|
|
||||||
self.assertEqual(lmtp_obj.sendmail.call_count, 1)
|
|
||||||
self.assertEqual(proc.communicate.call_count, 1)
|
|
||||||
|
|
||||||
@mock.patch("certbot._internal.notify.smtplib.LMTP")
|
|
||||||
@mock.patch("certbot._internal.notify.subprocess.Popen")
|
|
||||||
def test_everything_fails(self, mock_popen, mock_lmtp):
|
|
||||||
from certbot._internal.notify import notify
|
|
||||||
lmtp_obj = mock.MagicMock()
|
|
||||||
mock_lmtp.return_value = lmtp_obj
|
|
||||||
lmtp_obj.sendmail.side_effect = socket.error(17)
|
|
||||||
proc = mock.MagicMock()
|
|
||||||
mock_popen.return_value = proc
|
|
||||||
proc.communicate.side_effect = OSError("What we have here is a "
|
|
||||||
"failure to communicate.")
|
|
||||||
self.assertFalse(notify("Goose", "auntrhody@example.com",
|
|
||||||
"The old grey goose is dead."))
|
|
||||||
self.assertEqual(lmtp_obj.sendmail.call_count, 1)
|
|
||||||
self.assertEqual(proc.communicate.call_count, 1)
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
unittest.main() # pragma: no cover
|
|
||||||
Reference in New Issue
Block a user