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
|
from pytest import raises
import warnings
def test_bytes_invalid_escape():
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('always', category=DeprecationWarning)
eval("b'''\n\\z'''")
assert len(w) == 1
assert w[0].filename == '<string>'
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('error', category=DeprecationWarning)
with raises(SyntaxError) as excinfo:
eval("b'''\n\\z'''")
assert not w
assert excinfo.value.filename == '<string>'
def test_str_invalid_escape():
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('always', category=DeprecationWarning)
eval("'''\n\\z'''")
assert len(w) == 1
assert w[0].filename == '<string>'
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('error', category=DeprecationWarning)
with raises(SyntaxError) as excinfo:
eval("'''\n\\z'''")
assert not w
assert excinfo.value.filename == '<string>'
def test_fstring_invalid_escape():
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('always', category=DeprecationWarning)
eval('f"\\{8}"')
assert len(w) == 1
assert w[0].filename == '<string>'
with warnings.catch_warnings(record=True) as w:
warnings.simplefilter('error', category=DeprecationWarning)
with raises(SyntaxError) as excinfo:
eval('f"\\{8}"')
assert not w
assert excinfo.value.filename == '<string>'
|