blob: ee03de8b8d3fb5bf8658e8bb71ee54204631719d (
plain)
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
# pylint:disable=too-few-public-methods,old-style-class,no-init
"""test pb with exceptions and old/new style classes"""
class ValidException(Exception):
"""Valid Exception."""
class OldStyleClass:
"""Not an exception."""
class NewStyleClass(object):
"""Not an exception."""
def good_case():
"""raise"""
raise ValidException('hop')
def good_case1():
"""zlib.error is defined in C module."""
import zlib
raise zlib.error(4)
def good_case2():
"""decimal.DivisionByZero is defined in C on Python 3."""
import decimal
raise decimal.DivisionByZero(4)
def good_case3():
"""io.BlockingIOError is defined in C."""
import io
raise io.BlockingIOError
def bad_case0():
"""raise"""
# +2:<3.0:[nonstandard-exception]
# +1:>=3.0:[raising-non-exception]
raise OldStyleClass('hop')
def bad_case1():
"""raise"""
raise NewStyleClass() # [raising-non-exception]
def bad_case2():
"""raise"""
# +2:<3.0:[nonstandard-exception]
# +1:>=3.0:[raising-non-exception]
raise OldStyleClass, 'hop'
def bad_case3():
"""raise"""
raise NewStyleClass # [raising-non-exception]
def bad_case4():
"""raise"""
raise NotImplemented, 'hop' # [notimplemented-raised]
def bad_case5():
"""raise"""
raise 1 # [raising-bad-type]
def bad_case6():
"""raise"""
raise None # [raising-bad-type]
def bad_case7():
"""raise list"""
raise list # [raising-non-exception]
def bad_case8():
"""raise tuple"""
raise tuple # [raising-non-exception]
def bad_case9():
"""raise dict"""
raise dict # [raising-non-exception]
|