Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

"""Compatibility between Py2 and Py3.""" 

 

import sys 

import unittest 

 

PY3 = sys.version_info[0] == 3 

 

8 ↛ 9line 8 didn't jump to line 9, because the condition on line 8 was never trueif PY3: 

string_types = (str,bytes) 

bytes_types = (bytes,) 

def to_bytes(s): 

return s.encode('utf8') 

else: 

string_types = (basestring,) 

bytes_types = (str,) 

def to_bytes(s): 

return s 

 

# Pythons 2 and 3 differ on where to get StringIO 

try: 

from cStringIO import StringIO 

except ImportError: 

from io import StringIO 

 

 

def unittest_has(method): 

"""Does `unittest.TestCase` have `method` defined?""" 

return hasattr(unittest.TestCase, method) 

 

 

class TestCase(unittest.TestCase): 

"""Just like unittest.TestCase, but with assert methods added. 

 

Designed to be compatible with 3.1 unittest. Methods are only defined if 

`unittest` doesn't have them. 

 

""" 

# pylint: disable=missing-docstring 

 

40 ↛ exitline 40 didn't exit the body of class 'TestCase', because the condition on line 40 was never false if not unittest_has('assertRaisesRegex'): 

def assertRaisesRegex(self, *args, **kwargs): 

return self.assertRaisesRegexp(*args, **kwargs)