diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2024-02-19 17:02:29 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-19 17:02:29 (GMT) |
commit | 7b25a82e83ad8fe15e4302bb7655309573affa83 (patch) | |
tree | 98ac836cedddc71277bd1a692728df5f8b0603ab | |
parent | ecf16ee50e42f979624e55fa343a8522942db2e7 (diff) | |
download | cpython-7b25a82e83ad8fe15e4302bb7655309573affa83.zip cpython-7b25a82e83ad8fe15e4302bb7655309573affa83.tar.gz cpython-7b25a82e83ad8fe15e4302bb7655309573affa83.tar.bz2 |
Fix test_compile with -O mode (GH-115346)
-rw-r--r-- | Lib/test/test_compile.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Lib/test/test_compile.py b/Lib/test/test_compile.py index 4d8647b..0126780 100644 --- a/Lib/test/test_compile.py +++ b/Lib/test/test_compile.py @@ -749,7 +749,7 @@ class TestSpecifics(unittest.TestCase): return "unused" self.assertEqual(f.__code__.co_consts, - ("docstring", "used")) + (f.__doc__, "used")) @support.cpython_only def test_remove_unused_consts_no_docstring(self): @@ -794,7 +794,7 @@ class TestSpecifics(unittest.TestCase): def f1(): "docstring" return 42 - self.assertEqual(f1.__code__.co_consts, ("docstring", 42)) + self.assertEqual(f1.__code__.co_consts, (f1.__doc__, 42)) # This is a regression test for a CPython specific peephole optimizer # implementation bug present in a few releases. It's assertion verifies @@ -1047,6 +1047,8 @@ class TestSpecifics(unittest.TestCase): for func in (no_code1, no_code2): with self.subTest(func=func): + if func is no_code1 and no_code1.__doc__ is None: + continue code = func.__code__ [(start, end, line)] = code.co_lines() self.assertEqual(start, 0) @@ -1524,6 +1526,7 @@ class TestSourcePositions(unittest.TestCase): self.assertOpcodeSourcePositionIs(compiled_code, 'POP_JUMP_IF_TRUE', line=4, end_line=4, column=8, end_column=13, occurrence=2) + @unittest.skipIf(sys.flags.optimize, "Assertions are disabled in optimized mode") def test_multiline_assert(self): snippet = textwrap.dedent("""\ assert (a > 0 and |