From df686b3995a86a96a3f3eb91e833f144491e78fc Mon Sep 17 00:00:00 2001 From: Kevin F Date: Sun, 6 Feb 2022 18:06:34 -0600 Subject: [PATCH] Completed basic blockdb tests --- tests/test_blockdb.py | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/tests/test_blockdb.py b/tests/test_blockdb.py index 0b565b2a..7e144bbf 100644 --- a/tests/test_blockdb.py +++ b/tests/test_blockdb.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 import sys, os +import time import dbm sys.path.append(".") sys.path.append("src/") @@ -18,8 +19,15 @@ import onionrblocks import blockdb +def _delete_db(): + try: + os.remove(blockdb.block_db_path) + except FileNotFoundError: + pass + class TestBlockDB(unittest.TestCase): def test_store_vdf_block(self): + _delete_db() bl: Block = onionrblocks.create_anonvdf_block(os.urandom(10), b'bin', 2500) blockdb.store_vdf_block(bl) @@ -27,15 +35,32 @@ class TestBlockDB(unittest.TestCase): b_db[bl.id] def test_get_blocks_by_type(self): + _delete_db() with dbm.open(blockdb.block_db_path, 'c') as b_db: bl: Block = onionrblocks.create_anonvdf_block('test', b'txt', 2500) b_db[bl.id] = bl.raw + bl2: Block = onionrblocks.create_anonvdf_block('test2', b'bin', 2500) + b_db[bl2.id] = bl2.raw looped = False - for block in blockdb.get_blocks_by_type('txt'): + for c, block in enumerate(blockdb.get_blocks_by_type('txt')): looped = True self.assertEqual(bl.id, block.id) + self.assertTrue(c <= 1) self.assertTrue(looped) + def test_get_blocks_after_timestamp(self): + _delete_db() + t = round(time.time()) + with dbm.open(blockdb.block_db_path, 'c') as b_db: + bl: Block = onionrblocks.create_anonvdf_block('test', b'txt', 2500) + b_db[bl.id] = bl.raw + time.sleep(1) + t2 = round(time.time()) + bl2: Block = onionrblocks.create_anonvdf_block('test2', b'bin', 2500) + b_db[bl2.id] = bl2.raw + + bls = list(blockdb.get_blocks_after_timestamp(t + 10)) + self.assertTrue(len(bls) == 0) unittest.main()