From 55e85ae54477c5dc7187de308fbf2c79a1c5cfd0 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Wed, 11 Jun 2025 04:51:08 +0300 Subject: [PATCH] gh-135326: Test support of __index__ in random.getrandbits() (GH-135356) (cherry picked from commit 5ae669fc4e674968529cc32f7f31d14dddd76607) Co-authored-by: Serhiy Storchaka --- Lib/test/test_random.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Lib/test/test_random.py b/Lib/test/test_random.py index 54910cd8054a1f..31ebcb3b8b0b00 100644 --- a/Lib/test/test_random.py +++ b/Lib/test/test_random.py @@ -14,6 +14,15 @@ from fractions import Fraction from collections import abc, Counter + +class MyIndex: + def __init__(self, value): + self.value = value + + def __index__(self): + return self.value + + class TestBasicOps: # Superclass with tests common to all generators. # Subclasses must arrange for self.gen to retrieve the Random instance @@ -809,6 +818,9 @@ def test_getrandbits(self): self.gen.seed(1234567) self.assertEqual(self.gen.getrandbits(100), 97904845777343510404718956115) + self.gen.seed(1234567) + self.assertEqual(self.gen.getrandbits(MyIndex(100)), + 97904845777343510404718956115) def test_getrandbits_2G_bits(self): size = 2**31