Mercurial > public > bitcaviar-plus
annotate tests/implementation_testing.py @ 23:32061555853c
refactor code
author | Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com> |
---|---|
date | Sun, 14 Nov 2021 17:35:18 +0100 |
parents | tests/test_app.py@905b6fdc5e1b |
children | 139c77ea99b7 |
rev | line source |
---|---|
19
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
1 import os |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
2 from bitcaviar_plus.block import deserialize_block |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
3 from bitcaviar_plus.errors import InvalidMagicBytes |
23
32061555853c
refactor code
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
4 import plyvel |
19
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
5 |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
6 |
23
32061555853c
refactor code
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
7 # noinspection PyUnresolvedReferences |
19
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
8 def parse_genesis_block(): |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
9 blk_path = '/bitcoin-node/.bitcoin/blocks/blk00355.dat' |
23
32061555853c
refactor code
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
19
diff
changeset
|
10 db = plyvel.DB('/bitcoin-node/.bitcoin/blocks/index/', create_if_missing=False) |
19
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
11 |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
12 with open(blk_path, 'rb') as f: |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
13 file_size = os.path.getsize(blk_path) |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
14 while f.tell() < file_size: |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
15 try: |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
16 block = deserialize_block(f) |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
17 except InvalidMagicBytes as e: |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
18 print(e) |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
19 |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
20 |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
21 if __name__ == '__main__': |
905b6fdc5e1b
handle invalid magic bytes
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
22 parse_genesis_block() |