Пример #1
0
 def test_clams_fields(self):
     chainparams.set_to_preset('Clams')
     blk = Block.deserialize(clams_raw_block)
     self.assertEqual(clams_raw_block.encode('hex'), blk.as_hex())
     self.assertEqual(
         '3045022100b4e1b24eff6f0c7945c1cabc2d37ac88df861fe37f9bc22ac3c8594bac58f6f9022044e8dfde90dc28d06ba17d5c2b9b3a65ad1cdc03c3e0f8f5655d1f5b9c8cfa0b',
         b2x(blk.blockSig))
Пример #2
0
    def deserialize(self, raw):
        """Deserialize hex-encoded block/block header.

        Returns:
            Two-tuple of (block, block_header)
        """
        raw = x(raw)
        try:
            if len(raw) == BlockHeader.header_length():
                block_header = BlockHeader.deserialize(raw)
                return (None, block_header)
            else:
                # We don't use block.get_header() in case the header is
                # correct but the rest of the block isn't.
                block_header = BlockHeader.deserialize(raw[0:BlockHeader.header_length()])
                block = Block.deserialize(raw)
                return (block, block_header)
        except Exception as e:
            return (None, None)
Пример #3
0
    def deserialize(self, raw):
        """Deserialize hex-encoded block/block header.

        Returns:
            Two-tuple of (block, block_header)
        """
        raw = x(raw)
        try:
            if len(raw) == BlockHeader.header_length():
                block_header = BlockHeader.deserialize(raw)
                return (None, block_header)
            else:
                # We don't use block.get_header() in case the header is
                # correct but the rest of the block isn't.
                block_header = BlockHeader.deserialize(
                    raw[0:BlockHeader.header_length()])
                block = Block.deserialize(raw)
                return (block, block_header)
        except Exception as e:
            return (None, None)
Пример #4
0
 def test_serialize_as_hex(self):
     blk = Block.deserialize(bitcoin_raw_block)
     self.assertEqual(bitcoin_raw_block.encode('hex'), blk.as_hex())
Пример #5
0
 def test_get_header(self):
     blk = Block.deserialize(bitcoin_raw_block)
     header = blk.get_header()
     self.assertEqual(bitcoin_raw_header, header.serialize())
Пример #6
0
def is_raw_block(x):
    try:
        b = Block.deserialize(x.decode('hex'))
        return True
    except Exception:
        return False
Пример #7
0
 def copy_blockhash(rawblock):
     blockhash = b2lx(Block.deserialize(x(rawblock)).GetHash())
     QApplication.clipboard().setText(blockhash)
Пример #8
0
 def coerce_block(v):
     return Block.from_block(v)
Пример #9
0
 def coerce_hex_string(v):
     return Block.deserialize(x(v))
Пример #10
0
 def coerce_string(v):
     return Block.deserialize(v)
Пример #11
0
 def test_clams_fields(self):
     chainparams.set_to_preset('Clams')
     blk = Block.deserialize(clams_raw_block)
     self.assertEqual(clams_raw_block.encode('hex'), blk.as_hex())
     self.assertEqual('3045022100b4e1b24eff6f0c7945c1cabc2d37ac88df861fe37f9bc22ac3c8594bac58f6f9022044e8dfde90dc28d06ba17d5c2b9b3a65ad1cdc03c3e0f8f5655d1f5b9c8cfa0b', b2x(blk.blockSig))
Пример #12
0
 def test_serialize_as_hex(self):
     blk = Block.deserialize(bitcoin_raw_block)
     self.assertEqual(bitcoin_raw_block.encode('hex'), blk.as_hex())
Пример #13
0
 def test_get_header(self):
     blk = Block.deserialize(bitcoin_raw_block)
     header = blk.get_header()
     self.assertEqual(bitcoin_raw_header, header.serialize())
Пример #14
0
 def coerce_block(v):
     return Block.from_block(v)
Пример #15
0
 def coerce_hex_string(v):
     return Block.deserialize(x(v))
Пример #16
0
 def coerce_string(v):
     return Block.deserialize(v)