Skip to content

Commit 0a102fd

Browse files
committed
test update
1 parent ac8ff42 commit 0a102fd

File tree

1 file changed

+7
-11
lines changed

1 file changed

+7
-11
lines changed

Lib/test/test_functools.py

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -515,7 +515,7 @@ def test_partial_genericalias(self):
515515
self.assertEqual(alias.__parameters__, ())
516516

517517
# Issue 144475
518-
def test_repr_for_segfault(self):
518+
def test_repr_saftey_against_reentrant_mutation(self):
519519
g_partial = None
520520

521521
class Function:
@@ -547,24 +547,21 @@ def __repr__(self):
547547
trigger = EvilObject("trigger", is_trigger=True)
548548
victim = EvilObject("victim")
549549

550-
p = functools.partial(Function("old_function"), victim, victim=trigger)
551-
g_partial = p
550+
g_partial = functools.partial(Function("old_function"), victim, victim=trigger)
552551
self.assertEqual(repr(g_partial),"functools.partial(Function(old_function), EvilObject(victim), victim=EvilObject(trigger))")
553552

554553
trigger.triggered = False
555554
g_partial = None
556-
p = functools.partial(Function("old_function"), trigger, victim=victim)
557-
g_partial = p
555+
g_partial = functools.partial(Function("old_function"), trigger, victim=victim)
558556
self.assertEqual(repr(g_partial),"functools.partial(Function(old_function), EvilObject(trigger), victim=EvilObject(victim))")
559557

560558

561559
trigger.triggered = False
562-
p = functools.partial(Function("old_function"), trigger, victim)
563-
g_partial = p
560+
g_partial = functools.partial(Function("old_function"), trigger, victim)
561+
self.assertEqual(repr(g_partial),"functools.partial(Function(old_function), EvilObject(trigger), EvilObject(victim))")
564562

565563
trigger.triggered = False
566-
p = functools.partial(Function("old_function"), trigger=trigger, victim=victim)
567-
g_partial = p
564+
g_partial = functools.partial(Function("old_function"), trigger=trigger, victim=victim)
568565
self.assertEqual(repr(g_partial),"functools.partial(Function(old_function), trigger=EvilObject(trigger), victim=EvilObject(victim))")
569566

570567
trigger.triggered = False
@@ -573,8 +570,7 @@ def __repr__(self):
573570
victim3 = EvilObject("victim")
574571
victim4 = EvilObject("victim")
575572
victim5 = EvilObject("victim")
576-
p = functools.partial(Function("old_function"), trigger, victim1, victim2, victim3, victim4, victim=victim5)
577-
g_partial = p
573+
g_partial = functools.partial(Function("old_function"), trigger, victim1, victim2, victim3, victim4, victim=victim5)
578574
self.assertEqual(repr(g_partial),"functools.partial(Function(old_function), EvilObject(trigger), EvilObject(victim), EvilObject(victim), EvilObject(victim), EvilObject(victim), victim=EvilObject(victim))")
579575

580576

0 commit comments

Comments
 (0)