https://github.com/python/cpython/commit/c5b0c90b62f1a10b0742db4bcd17da080d4e9111
commit: c5b0c90b62f1a10b0742db4bcd17da080d4e9111
branch: main
author: Donghee Na <[email protected]>
committer: corona10 <[email protected]>
date: 2024-12-24T02:08:34+09:00
summary:
gh-115999: Update test_opcache to test with nested method (gh-128166)
gh-115999: Update test_opcace to test with nested method
files:
M Lib/test/test_opcache.py
diff --git a/Lib/test/test_opcache.py b/Lib/test/test_opcache.py
index ba111b5117b41d..79f452f8068c7f 100644
--- a/Lib/test/test_opcache.py
+++ b/Lib/test/test_opcache.py
@@ -606,7 +606,7 @@ def assert_races_do_not_crash(
for writer in writers:
writer.join()
- @requires_specialization
+ @requires_specialization_ft
def test_binary_subscr_getitem(self):
def get_items():
class C:
@@ -1242,14 +1242,6 @@ def f(o, n):
f(test_obj, 1)
self.assertEqual(test_obj.b, 0)
-# gh-127274: BINARY_SUBSCR_GETITEM will only cache __getitem__ methods that
-# are deferred. We only defer functions defined at the top-level.
-class CGetItem:
- def __init__(self, val):
- self.val = val
- def __getitem__(self, item):
- return self.val
-
class TestSpecializer(TestBase):
@@ -1592,7 +1584,13 @@ def binary_subscr_str_int():
self.assert_no_opcode(binary_subscr_str_int, "BINARY_SUBSCR")
def binary_subscr_getitems():
- items = [CGetItem(i) for i in range(100)]
+ class C:
+ def __init__(self, val):
+ self.val = val
+ def __getitem__(self, item):
+ return self.val
+
+ items = [C(i) for i in range(100)]
for i in range(100):
self.assertEqual(items[i][i], i)
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]