def test_put_time_expire(): database = keyvalue.KeyValue() loop = asyncio.get_event_loop() loop.run_until_complete(database.put('hello','world', 2)) time.sleep(15); with pytest.raises(KeyError): value = loop.run_until_complete(database.retrieve('hello'))
def test_delete_empty(): database = keyvalue.KeyValue() loop = asyncio.get_event_loop() loop.run_until_complete(database.put('hello','world')) loop.run_until_complete(database.delete('hello')) with pytest.raises(KeyError): value = loop.run_until_complete(database.retrieve('hello'))
def __init__(self, host=DEFAULT_HOST, port=DEFAULT_PORT): self._host = host self._port = port self._url = "http://%s:%s/%s" % (host, port, VERSION) self.kv = keyvalue.KeyValue(self._url) self.event = event.Event(self._url)
def build_database(): database = keyvalue.KeyValue() loop = asyncio.get_event_loop() total = 0 times = [] for x in range(keyvalue.MAX_SIZE): loop.run_until_complete(database.put(f"key{x}", f"value{x}")) randomlist = [] for i in range(500): n = random.randint(1, MAX_SUSTAINABLE_VALUES) randomlist.append(n) for n in randomlist: t0 = time.perf_counter() loop.run_until_complete(database.retrieve(f"key{n}")) t1 = time.perf_counter() t = t1 - t0 total += t times.append(t) return times
def test_put_get(): database = keyvalue.KeyValue() loop = asyncio.get_event_loop() loop.run_until_complete(database.put('hello','world')) value = loop.run_until_complete(database.retrieve('hello')) assert value == 'world';
def test_get_empty_exception(): database = keyvalue.KeyValue() loop = asyncio.get_event_loop() with pytest.raises(KeyError): value = loop.run_until_complete(database.retrieve('hello'))
def setupDB(self): kv = keyvalue.KeyValue(key=self.EXISTING_KEY, value=self.EXISTING_VALUE) keyvalue.db.session.merge(kv) keyvalue.db.session.commit()