lemur/lemur/plugins/lemur_email/tests/test_email.py

49 lines
1.9 KiB
Python
Raw Normal View History

2016-12-08 20:33:40 +01:00
import os
from lemur.plugins.lemur_email.templates.config import env
2016-12-08 20:33:40 +01:00
from lemur.tests.factories import CertificateFactory
2016-12-08 20:33:40 +01:00
dir_path = os.path.dirname(os.path.realpath(__file__))
def test_render(certificate, endpoint):
from lemur.certificates.schemas import certificate_notification_output_schema
new_cert = CertificateFactory()
new_cert.replaces.append(certificate)
data = {
2019-05-16 16:57:02 +02:00
"certificates": [certificate_notification_output_schema.dump(certificate).data],
"options": [
{"name": "interval", "value": 10},
{"name": "unit", "value": "days"},
],
}
2019-05-16 16:57:02 +02:00
template = env.get_template("{}.html".format("expiration"))
2016-12-08 20:33:40 +01:00
2019-05-16 16:57:02 +02:00
body = template.render(dict(message=data, hostname="lemur.test.example.com"))
2016-12-08 20:33:40 +01:00
2019-05-16 16:57:02 +02:00
template = env.get_template("{}.html".format("rotation"))
2016-12-08 20:33:40 +01:00
certificate.endpoints.append(endpoint)
body = template.render(
dict(
certificate=certificate_notification_output_schema.dump(certificate).data,
2019-05-16 16:57:02 +02:00
hostname="lemur.test.example.com",
2016-12-08 20:33:40 +01:00
)
)
2020-10-16 19:40:11 +02:00
def test_filter_recipients(certificate, endpoint):
from lemur.plugins.lemur_email.plugin import EmailNotificationPlugin
options = [{"name": "recipients", "value": "security@netflix.com,bob@netflix.com,joe@netflix.com"}]
assert EmailNotificationPlugin.filter_recipients(options, []) == ["security@netflix.com", "bob@netflix.com",
"joe@netflix.com"]
assert EmailNotificationPlugin.filter_recipients(options, ["security@netflix.com"]) == ["bob@netflix.com",
"joe@netflix.com"]
assert EmailNotificationPlugin.filter_recipients(options, ["security@netflix.com", "bob@netflix.com",
"joe@netflix.com"]) == []