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.

Source Distribution

mailtest-1.1.2.tar.gz (2.8 kB view details)

Uploaded Source

File details

Details for the file mailtest-1.1.2.tar.gz.

File metadata

  • Download URL: mailtest-1.1.2.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mailtest-1.1.2.tar.gz
Algorithm Hash digest
SHA256 229b0764f4a5ab7c057bfa7878963e76bdd4fb466a92ec727b6308be30a9183a
MD5 4fc46824cb0e5a761c7a87b2691b11e9
BLAKE2b-256 a8871a19ff2bd9acec778cf752a65918147b75bfd4212a6783b916ff607ea22e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page