Skip to main content

A unit testing tool for code that sends email.

Project description

MailTest is a Python unittesting library that for code that sends email. It starts a local SMTP server inside a Python with block, and captures all the email sent to it. These emails can then be read within the block.

Example:

with mailtest.Server() as mt:
    send_welcome_email()
    assert len(mt.emails) == 1

Install

pip3 install mailtest

Configuration

Configuration is done via kwargs to mailtest.Server(). Options: - smtp_port (default: 1025) - sendgrid_port (default: None)

Speed

MailTest can test receive approx. 4000 emails/second on an Intel(R) Core(TM) i5-7260U CPU @ 2.20GHz.

Testing

$ python2 test.py
..
----------------------------------------------------------------------
Ran 2 tests in 0.269s

OK
$ python3 test.py
..
----------------------------------------------------------------------
Ran 2 tests in 0.543s

OK

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for mailtest, version 1.1.2
Filename, size File type Python version Upload date Hashes
Filename, size mailtest-1.1.2.tar.gz (2.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page