def test_pack_unpack(repeat): """Test gmpy2.pack and gmpy2.unpack.""" r = gmpy2.random_state(42) for counter in range(repeat): for t in (10, 1000, 2000, 10000, 100000): v = gmpy2.mpz_rrandomb(r, t) for b in range(1, max(1001, t)): temp = gmpy2.unpack(v, b) u = gmpy2.pack(temp, b) assert u == v
def test_pack_unpack(bits = 200, chunk = 500, terms = 50): """Test gmpy2.pack and gmpy2.unpack.""" for t in range(2, terms): for b in range(1, bits): # Test with all bits set to 1. v = [ 2**b - 1 ] * t for c in range(b, chunk): temp = gmpy2.pack(v, c) u = gmpy2.unpack(temp, c) assert u == v, (v, temp, u, (t, b, c))
def test_pack_unpack(repeat): """Test gmpy2.pack and gmpy2.unpack.""" r = gmpy2.random_state(42) for counter in range(repeat): for t in (10, 1000, 2000, 10000, 100000): v = gmpy2.mpz_rrandomb(r, t) for b in range(1, max(1001,t)): temp = gmpy2.unpack(v, b) u = gmpy2.pack(temp, b) assert u == v
def test(repeat=1): """Test gmpy2.pack and gmpy2.unpack.""" r = gmpy2.random_state(42) try: for counter in range(repeat): for t in (10, 30, 60, 500, 1000, 2000, 10000, 100000): v = gmpy2.mpz_rrandomb(r, t) for b in range(1, max(1001,t)): temp = gmpy2.unpack(v, b) u = gmpy2.pack(temp, b) if u != v: raise ValueError return True except ValueError: return False