Ejemplo n.º 1
0
 def test_default_arguments_yield_all_headers(self):
     actual = utils.extract_headers(self.mail)
     # collect all lines until the first empty line, hence all header lines
     expected = []
     for line in self.mailstring.splitlines():
         if not line:
             break
         expected.append(line)
     expected = '\n'.join(expected) + '\n'
     self.assertEqual(actual, expected)
Ejemplo n.º 2
0
 def test_header_values_are_not_decoded(self):
     actual = utils.extract_headers(self.mail, ['x-quoted'])
     expected = "x-quoted: param=utf-8''%C3%9Cmlaut; second=plain%C3%9C\n",
     self.assertEqual(actual, expected)
Ejemplo n.º 3
0
 def test_case_is_prserved_in_header_keys_but_irelevant(self):
     headers = ['FROM', 'from']
     actual = utils.extract_headers(self.mail, headers)
     expected = 'FROM: me\nfrom: me\n'
     self.assertEqual(actual, expected)
Ejemplo n.º 4
0
 def test_headers_can_be_retrieved_multible_times(self):
     headers = ['from', 'from']
     actual = utils.extract_headers(self.mail, headers)
     expected = 'from: me\nfrom: me\n'
     self.assertEqual(actual, expected)
Ejemplo n.º 5
0
 def test_multible_headers_can_be_retrieved_in_predevined_order(self):
     headers = ['x-header', 'to', 'x-uppercase']
     actual = utils.extract_headers(self.mail, headers)
     expected = 'x-header: param=one; and=two; or=three\nto: you\n' \
         'x-uppercase: PARAM1=ONE; PARAM2=TWO\n'
     self.assertEqual(actual, expected)
Ejemplo n.º 6
0
 def test_single_headers_can_be_retrieved(self):
     actual = utils.extract_headers(self.mail, ['from'])
     expected = 'from: me\n'
     self.assertEqual(actual, expected)