Major send_pgp_mime.py reorganization to better integrate with email.Message.
authorW. Trevor King <wking@drexel.edu>
Sat, 18 Jul 2009 19:17:11 +0000 (15:17 -0400)
committerW. Trevor King <wking@drexel.edu>
Tue, 20 Mar 2012 21:19:33 +0000 (17:19 -0400)
commitf2e2b3fa7d0a6a8484160e9a9fbb6ebd1385e746
treeab0e9979aa38e0dd4dc973e46b70e1bcb77e9f6d
parent6b3cf0aa15cc78a1c477d83f04c3403d7267bf16
Major send_pgp_mime.py reorganization to better integrate with email.Message.

Now send_pgp_mime.py passes it's unittests again, and it should be
easier to use from be-handle-mail :).

Renamed Mail -> EncryptedMessageFactory, since its role is to generate
message bodies of various types (plain, signed, encrypted, ...)

Separated the header processing from Mail, now you need to
  header_from_text()
your header text to create an email.Message which you can use in
EncrypedMessageFactory.sign(), .encrypt(), ...  Once you've created
the body message you want, you can attach it to the header with
  attach_root(header, root_part)
where both header and root_part are email.Message instances.

Made EncryptedMessageFactory doctests more robust, through the use of
 # doctest: +ELLIPSIS, +NORMALIZE_WHITESPACE
which removed the need for the .strip*() methods.

Also added the configurable from_addr and to_addr, which allows you
to run the doctests with successful gpg calls.  Just set them to
some address from your private keyring, and pass the passphrase for
that key in to your test via a file (or gpg-agent...)
  python send_pgp_mime.py -tP path/to/pasphrase/file
interfaces/email/interactive/send_pgp_mime.py