From 9f6c3769e348283d3c2af8d4e7a5792f9c0f7153 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Wed, 11 Jun 2025 04:17:06 +0200 Subject: [PATCH] [3.14] gh-135326: Test support of __index__ in random.getrandbits() (GH-135356) (#135373) 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 54910cd8054a..31ebcb3b8b0b 100644 --- a/Lib/test/test_random.py +++ b/Lib/test/test_random.py @@ -14,6 +14,15 @@ from test import support 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 @@ class MersenneTwister_TestBasicOps(TestBasicOps, unittest.TestCase): 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 -- 2.47.3