예제 #1
0
파일: test_State.py 프로젝트: grx7/QRL
 def test_delete(self):
     with set_qrl_dir('no_data'):
         with State() as state:
             block = Block()
             state.put_block(block, None)
             block1 = state.get_block(block.headerhash)
             self.assertEqual(block.to_json(), block1.to_json())
             state.delete(block.headerhash, None)
             self.assertIsNone(state.get_block(block.headerhash))
예제 #2
0
    def broadcast_block(self, block: Block):
        # logger.info('<<<Transmitting block: ', block.headerhash)
        data = qrl_pb2.MR()
        data.stake_selector = block.transactions[0].addr_from
        data.block_number = block.block_number
        data.prev_headerhash = bytes(block.prev_headerhash)

        if block.block_number > 1:
            data.reveal_hash = block.reveal_hash

        self.register_and_broadcast('BK', block.headerhash, block.to_json(), data)
예제 #3
0
파일: State.py 프로젝트: som-dev/QRL
 def put_block(self, block: Block, batch):
     self._db.put_raw(
         bin2hstr(block.headerhash).encode(),
         block.to_json().encode(), batch)