MCPcopy Index your code
hub / github.com/python/cpython / test_pylong_compute_powers

Method test_pylong_compute_powers

Lib/test/test_int.py:911–935  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

909
910 @unittest.skipUnless(_pylong, "_pylong module required")
911 def test_pylong_compute_powers(self):
912 # Basic sanity tests. See end of _pylong.py for manual heavy tests.
913 def consumer(w, base, limit, need_hi):
914 seen = set()
915 need = set()
916 def inner(w):
917 if w <= limit or w in seen:
918 return
919 seen.add(w)
920 lo = w >> 1
921 hi = w - lo
922 need.add(hi if need_hi else lo)
923 inner(lo)
924 inner(hi)
925 inner(w)
926 d = _pylong.compute_powers(w, base, limit, need_hi=need_hi)
927 self.assertEqual(d.keys(), need)
928 for k, v in d.items():
929 self.assertEqual(v, base ** k)
930
931 for base in 2, 5:
932 for need_hi in False, True:
933 for limit in 1, 11:
934 for w in range(250, 550):
935 consumer(w, base, limit, need_hi)
936
937if __name__ == "__main__":
938 unittest.main()

Callers

nothing calls this directly

Calls 1

consumerFunction · 0.85

Tested by

no test coverage detected