Syncitem sync state done on last next
This commit is contained in:
		
							parent
							
								
									2b5383e9e0
								
							
						
					
					
						commit
						755a030175
					
				@ -83,6 +83,7 @@ class SyncFsItem:
 | 
			
		||||
            block_number += 1
 | 
			
		||||
            tx_index = 0
 | 
			
		||||
            if self.target >= 0 and block_number > self.target:
 | 
			
		||||
                self.sync_state.move(self.state_key, self.sync_state.DONE)
 | 
			
		||||
                raise SyncDone(self.target)
 | 
			
		||||
        else:
 | 
			
		||||
            tx_index += 1
 | 
			
		||||
@ -186,7 +187,7 @@ class SyncFsStore:
 | 
			
		||||
        factory = SimpleFileStoreFactory(base_filter_path, binary=True)
 | 
			
		||||
        filter_state_backend = PersistedState(factory.add, 0, check_alias=False)
 | 
			
		||||
        self.filter_state = SyncState(filter_state_backend)
 | 
			
		||||
        self.filters = []
 | 
			
		||||
        self.filters = [] # used by SyncSession
 | 
			
		||||
   
 | 
			
		||||
 | 
			
		||||
    def register(self, fltr):
 | 
			
		||||
 | 
			
		||||
@ -216,6 +216,29 @@ class TestFs(unittest.TestCase):
 | 
			
		||||
        store = SyncFsStore(self.path, session_id='foo')
 | 
			
		||||
        store.start()
 | 
			
		||||
        o = store.get(0)
 | 
			
		||||
        self.assertEqual(o.cursor, 2)
 | 
			
		||||
        self.assertEqual(o.target, 13) 
 | 
			
		||||
        o.next(advance_block=True)
 | 
			
		||||
        o.next(advance_block=True)
 | 
			
		||||
 | 
			
		||||
        session.stop(o)
 | 
			
		||||
        store = SyncFsStore(self.path, session_id='foo')
 | 
			
		||||
        store.start()
 | 
			
		||||
        self.assertEqual(o.cursor, 4)
 | 
			
		||||
        self.assertEqual(o.target, 13) 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    def test_sync_history_complete(self):
 | 
			
		||||
        store = SyncFsStore(self.path, session_id='foo')
 | 
			
		||||
        session = SyncSession(store)
 | 
			
		||||
 | 
			
		||||
        session.start(target=3)
 | 
			
		||||
        o = session.get(0)
 | 
			
		||||
        o.next(advance_block=True)
 | 
			
		||||
        o.next(advance_block=True)
 | 
			
		||||
        o.next(advance_block=True)
 | 
			
		||||
        with self.assertRaises(SyncDone):
 | 
			
		||||
            o.next(advance_block=True)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if __name__ == '__main__':
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user