mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
gh-131927: Prevent emitting optimizer warnings twice in the REPL (#131993)
This commit is contained in:
parent
d4e2cdc15b
commit
3d08c8ad20
5 changed files with 74 additions and 2 deletions
|
@ -1646,6 +1646,24 @@ class TestSpecifics(unittest.TestCase):
|
|||
|
||||
self.assertRaises(NameError, ns['foo'])
|
||||
|
||||
def test_compile_warnings(self):
|
||||
# See gh-131927
|
||||
# Compile warnings originating from the same file and
|
||||
# line are now only emitted once.
|
||||
with warnings.catch_warnings(record=True) as caught:
|
||||
warnings.simplefilter("default")
|
||||
compile('1 is 1', '<stdin>', 'eval')
|
||||
compile('1 is 1', '<stdin>', 'eval')
|
||||
|
||||
self.assertEqual(len(caught), 1)
|
||||
|
||||
with warnings.catch_warnings(record=True) as caught:
|
||||
warnings.simplefilter("always")
|
||||
compile('1 is 1', '<stdin>', 'eval')
|
||||
compile('1 is 1', '<stdin>', 'eval')
|
||||
|
||||
self.assertEqual(len(caught), 2)
|
||||
|
||||
class TestBooleanExpression(unittest.TestCase):
|
||||
class Value:
|
||||
def __init__(self):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue