Beispiel #1
0
 def test_dump_cache(self):
     bitgen = QiskitBitGenerator()
     cache = "100" * 100
     bitgen.load_cache(cache)
     assert bitgen.dump_cache() == cache
     assert (bitgen.dump_cache(flush=True) == cache
             and bitgen._bitcache.size == 0
             and bitgen._bitcache._cache == "")
Beispiel #2
0
 def test_random_uint(self):
     bitgen = QiskitBitGenerator()
     cache = "100" * 100
     n_bits = 4
     bitgen.load_cache(cache)
     assert (bitgen.random_uint(-1) == 10540996613548315209
             and bitgen.random_uint(0) == 2635249153387078802
             and bitgen.random_uint(n_bits) == 4)
     bitgen = QiskitBitGenerator(ISRAW32=True)
     cache = "100" * 100
     n_bits = 4
     bitgen.load_cache(cache)
     assert (bitgen.random_uint(-1) == 2454267026
             and bitgen.random_uint(0) == 1227133513
             and bitgen.random_uint(n_bits) == 2)
Beispiel #3
0
 def test_random_double(self):
     bitgen = QiskitBitGenerator()
     cache = "100" * 100
     n = 4
     bitgen.load_cache(cache)
     assert (bitgen.random_double(-1) == -0.5714285714285714
             and bitgen.random_double(0) == 0.0
             and bitgen.random_double(n) == 1.1428571428571423)
     bitgen = QiskitBitGenerator(ISRAW32=True)
     cache = "100" * 100
     n = 4
     bitgen.load_cache(cache)
     assert (bitgen.random_double(-1) == -0.5714285714285714
             and bitgen.random_double(0) == 0.0
             and bitgen.random_double(n) == 1.1428571428571423)
Beispiel #4
0
 def test_random_bitstring(self):
     bitgen = QiskitBitGenerator()
     cache = "100" * 100
     n_bits = 4
     bitgen.load_cache(cache)
     assert (bitgen.random_bitstring(-1) == cache[:bitgen.BITS]
             and bitgen.random_bitstring(0)
             == cache[bitgen.BITS:bitgen.BITS * 2]
             and bitgen.random_bitstring(n_bits)
             == cache[bitgen.BITS * 2:bitgen.BITS * 2 + n_bits])
     bitgen = QiskitBitGenerator(ISRAW32=True)
     cache = "100" * 100
     n_bits = 4
     bitgen.load_cache(cache)
     assert (bitgen.random_bitstring(-1) == cache[:bitgen.BITS]
             and bitgen.random_bitstring(0)
             == cache[bitgen.BITS:bitgen.BITS * 2]
             and bitgen.random_bitstring(n_bits)
             == cache[bitgen.BITS * 2:bitgen.BITS * 2 + n_bits])
Beispiel #5
0
 def test_load_cache(self):
     bitgen = QiskitBitGenerator()
     cache = "100" * 100
     with pytest.raises(TypeError):
         bitgen.load_cache(0)
     with pytest.raises(ValueError):
         bitgen.load_cache("abc")
     bitgen.load_cache(cache)
     bitgen.load_cache(cache)
     assert (bitgen._bitcache.size == 2 * len(cache)
             and bitgen._bitcache._cache == cache + cache)
     bitgen.load_cache(cache, flush=True)
     assert (bitgen._bitcache.size == len(cache)
             and bitgen._bitcache._cache == cache)
Beispiel #6
0
 def test_flush_cache(self):
     bitgen = QiskitBitGenerator()
     cache = "100" * 100
     bitgen.load_cache(cache)
     bitgen.flush_cache()
     assert bitgen._bitcache.size == 0 and bitgen._bitcache._cache == ""