ruff/crates/ruff_linter/resources/test/fixtures/flake8_bugbear/B030.py

153 lines
1.8 KiB
Python

"""
Should emit:
B030:
- line 12, column 8
- line 17, column 9
- line 22, column 21
- line 27, column 37
"""
try:
pass
except 1: # Error
pass
try:
pass
except (1, ValueError): # Error
pass
try:
pass
except (ValueError, (RuntimeError, (KeyError, TypeError))): # Error
pass
try:
pass
except (ValueError, *(RuntimeError, (KeyError, TypeError))): # Error
pass
try:
pass
except (*a, *(RuntimeError, (KeyError, TypeError))): # Error
pass
try:
pass
except* a + (RuntimeError, (KeyError, TypeError)): # Error
pass
try:
pass
except (ValueError, *(RuntimeError, TypeError)): # OK
pass
try:
pass
except (ValueError, *[RuntimeError, *(TypeError,)]): # OK
pass
try:
pass
except (*a, *b): # OK
pass
try:
pass
except (*a, *(RuntimeError, TypeError)): # OK
pass
try:
pass
except (*a, *(b, c)): # OK
pass
try:
pass
except (*a, *(*b, *c)): # OK
pass
def what_to_catch():
return ...
try:
pass
except what_to_catch(): # OK
pass
try:
pass
except (a, b) + (c, d): # OK
pass
try:
pass
except* (a, b) + (c, d): # OK
pass
try:
pass
except* (a, (b) + (c)): # OK
pass
try:
pass
except (a, b) + (c, d) + (e, f): # OK
pass
try:
pass
except a + (b, c): # OK
pass
try:
pass
except (ValueError, *(RuntimeError, TypeError), *((ArithmeticError,) + (EOFError,))):
pass
try:
pass
except ((a, b) + (c, d)) + ((e, f) + (g)): # OK
pass
try:
pass
except (a, b) * (c, d): # B030
pass
try:
pass
except* 1: # Error
pass
try:
pass
except* (1, ValueError): # Error
pass
try:
pass
except* (ValueError, (RuntimeError, (KeyError, TypeError))): # Error
pass
try:
pass
except* (a, b) * (c, d): # B030
pass