25 lines
743 B
Python
25 lines
743 B
Python
|
"""
|
||
|
Backend for test environment.
|
||
|
"""
|
||
|
|
||
|
from django.core import mail
|
||
|
from django.core.mail.backends.base import BaseEmailBackend
|
||
|
|
||
|
class EmailBackend(BaseEmailBackend):
|
||
|
"""A email backend for use during test sessions.
|
||
|
|
||
|
The test connection stores email messages in a dummy outbox,
|
||
|
rather than sending them out on the wire.
|
||
|
|
||
|
The dummy outbox is accessible through the outbox instance attribute.
|
||
|
"""
|
||
|
def __init__(self, *args, **kwargs):
|
||
|
super(EmailBackend, self).__init__(*args, **kwargs)
|
||
|
if not hasattr(mail, 'outbox'):
|
||
|
mail.outbox = []
|
||
|
|
||
|
def send_messages(self, messages):
|
||
|
"""Redirect messages to the dummy outbox"""
|
||
|
mail.outbox.extend(messages)
|
||
|
return len(messages)
|