Ticket #20: additional_headers.patch
| File additional_headers.patch, 2.4 kB (added by fs, 1 year ago) |
|---|
-
turbomail_tests/basic_tests.py
90 90 self.failIf(msg.has_key('Old-Return-Path')) 91 91 self.failIf(msg.has_key('Return-Path')) 92 92 93 def test_add_custom_headers(self): 94 "Test that custom headers can be attached." 95 extra_headers = {'Precendence': 'bulk', 'X-User': 'Alice'} 96 message = turbomail.Message('sender@foo.example', 97 'recipient@foo.example', 'foo bar') 98 message.plain = 'Hello World!' 99 message.headers = extra_headers 100 turbomail.enqueue(message) 101 msginfo = get_received_mail(self.sink) 102 msg = email.message_from_string(msginfo['mail']) 103 for header_name in extra_headers.keys(): 104 self.failUnless(msg.has_key(header_name)) 105 self.assertEquals(extra_headers[header_name], msg[header_name]) 106 -
turbomail/documentation/guide.wiki
109 109 * `date` -- The Date header. 110 110 * `disposition` -- Request disposition notification be sent to this address. 111 111 * `encoding` -- Content encoding specific to this message. 112 * `headers` -- A list ofadditional headers.112 * `headers` -- A dictionary or a tuple with additional headers. 113 113 * `organization` -- The descriptive Organization header. 114 114 * `plain` -- Plain text content. Can be automatically generated. 115 115 * `priority` -- The X-Priority header, in the range of 1-5. -
turbomail/turbomail/message.py
140 140 self.rich = None 141 141 self.attachments = [] 142 142 self.embedded = [] 143 self.headers = []143 self.headers = {} 144 144 self.smtpfrom = None 145 145 146 146 for i, j in kw.iteritems(): … … 306 306 message.add_header(*header) 307 307 elif type(header) == type({}): 308 308 message.add_header(**header) 309 310 if type(self.headers) == type({}): 309 elif type(self.headers) == type({}): 311 310 for name, header in self.headers.iteritems(): 312 311 if type(header) in [type(()), type([])]: 313 312 message.add_header(name, *header)
