Rehabilitate start, resume

This commit is contained in:
nolash
2021-02-22 13:10:38 +01:00
parent 81dd5753e8
commit 5cf8b4f296
4 changed files with 43 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
# standard imports
import unittest
import logging
# external imports
from chainlib.chain import ChainSpec
@@ -12,6 +13,9 @@ from chainsyncer.backend import SyncerBackend
# testutil imports
from tests.base import TestBase
logg = logging.getLogger()
class TestDatabase(TestBase):
@@ -49,7 +53,31 @@ class TestDatabase(TestBase):
session = SessionBase.create_session()
o = session.query(BlockchainSyncFilter).get(filter_id)
self.assertEqual(len(o.flags), 2)
t = o.target()
self.assertEqual(t, (1 << 9) - 1)
for i in range(9):
o.set(i)
c = o.cursor()
self.assertEqual(c, t)
session.close()
def test_backend_resume(self):
s = SyncerBackend.live(self.chain_spec, 42)
s.register_filter('foo')
s.register_filter('bar')
s.register_filter('baz')
s.set(42, 13)
s = SyncerBackend.first(self.chain_spec)
logg.debug('start {}'.format(s))
self.assertEqual(s.get(), ((42,13), 0))
if __name__ == '__main__':
unittest.main()