Browse Source
bpo-34136: Make test_do_not_recreate_annotations more lenient. (GH-8437)
pull/8439/head
Serhiy Storchaka
8 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
4 additions and
5 deletions
-
Lib/test/test_opcodes.py
|
|
|
@ -42,14 +42,13 @@ class OpcodeTest(unittest.TestCase): |
|
|
|
self.assertEqual(ns['__annotations__'], {'x': int, 1: 2}) |
|
|
|
|
|
|
|
def test_do_not_recreate_annotations(self): |
|
|
|
annotations = {} |
|
|
|
# Don't rely on the existence of the '__annotations__' global. |
|
|
|
with support.swap_item(globals(), '__annotations__', annotations): |
|
|
|
with support.swap_item(globals(), '__annotations__', {}): |
|
|
|
del globals()['__annotations__'] |
|
|
|
class C: |
|
|
|
del __annotations__ |
|
|
|
x: int # Updates the '__annotations__' global. |
|
|
|
self.assertIn('x', annotations) |
|
|
|
self.assertIs(annotations['x'], int) |
|
|
|
with self.assertRaises(NameError): |
|
|
|
x: int |
|
|
|
|
|
|
|
def test_raise_class_exceptions(self): |
|
|
|
|
|
|
|
|