mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 03:44:55 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
import os
 | 
						|
import sys
 | 
						|
import unittest
 | 
						|
import test.support
 | 
						|
import email
 | 
						|
from test.test_email import __file__ as landmark
 | 
						|
 | 
						|
# used by regrtest and __main__.
 | 
						|
def test_main():
 | 
						|
    here = os.path.dirname(__file__)
 | 
						|
    # Unittest mucks with the path, so we have to save and restore
 | 
						|
    # it to keep regrtest happy.
 | 
						|
    savepath = sys.path[:]
 | 
						|
    test.support._run_suite(unittest.defaultTestLoader.discover(here))
 | 
						|
    sys.path[:] = savepath
 | 
						|
 | 
						|
 | 
						|
# helper code used by a number of test modules.
 | 
						|
 | 
						|
def openfile(filename, *args, **kws):
 | 
						|
    path = os.path.join(os.path.dirname(landmark), 'data', filename)
 | 
						|
    return open(path, *args, **kws)
 | 
						|
 | 
						|
 | 
						|
# Base test class
 | 
						|
class TestEmailBase(unittest.TestCase):
 | 
						|
 | 
						|
    maxDiff = None
 | 
						|
 | 
						|
    def __init__(self, *args, **kw):
 | 
						|
        super().__init__(*args, **kw)
 | 
						|
        self.addTypeEqualityFunc(bytes, self.assertBytesEqual)
 | 
						|
 | 
						|
    ndiffAssertEqual = unittest.TestCase.assertEqual
 | 
						|
 | 
						|
    def _msgobj(self, filename):
 | 
						|
        with openfile(filename) as fp:
 | 
						|
            return email.message_from_file(fp)
 | 
						|
 | 
						|
    def _bytes_repr(self, b):
 | 
						|
        return [repr(x) for x in b.splitlines(keepends=True)]
 | 
						|
 | 
						|
    def assertBytesEqual(self, first, second, msg):
 | 
						|
        """Our byte strings are really encoded strings; improve diff output"""
 | 
						|
        self.assertEqual(self._bytes_repr(first), self._bytes_repr(second))
 |