tests: fix style in tools/signtest.py

This commit is contained in:
Pavol Rusnak 2017-06-25 18:10:05 +02:00
parent 33f274d145
commit 7f0f73d1c6
No known key found for this signature in database
GPG Key ID: 91F3B339B9A02A3D
2 changed files with 60 additions and 51 deletions

View File

@ -3,11 +3,12 @@ exclude =
.tox/,
build/,
dist/,
tools/signtest.py,
trezorlib/*_pb2.py
ignore =
# F821 undefined name 'unicode',
F821,
# F841 local variable is assigned to but never used
F841,
# F401: module imported but unused
F401,
# E402: module level import not at top of file

View File

@ -16,17 +16,20 @@ from trezorlib.tx_api import TxApiBitcoin
from trezorlib.transport_hid import HidTransport
from trezorlib.transport_bridge import BridgeTransport
def hash160(x):
h = hashlib.new("ripemd160")
h.update(hashlib.sha256(x).digest())
return h.digest()
def pack_varint(x):
if (x < 0xfd):
return chr(x)
else:
return '\xfd' + chr(x & 0xff) + chr((x >> 8) & 0xff)
def int_to_string(x, pad):
result = ['\x00'] * pad
while x > 0:
@ -36,6 +39,7 @@ def int_to_string(x, pad):
x >>= 8
return ''.join(result)
def string_to_int(s):
result = 0
for c in s:
@ -44,6 +48,7 @@ def string_to_int(s):
result = (result << 8) + c
return result
class MyTxApiBitcoin(object):
def set_publickey(self, node):
@ -68,7 +73,6 @@ class MyTxApiBitcoin(object):
ser = ser + int_to_string(tx.lock_time, 4)[::-1]
return ser
def create_inputs(self, numinputs, txsize):
idx = 0
sum = 0
@ -83,7 +87,7 @@ class MyTxApiBitcoin(object):
i.prev_index = random.randint(0, 4)
i.script_sig = os.urandom(100)
i.sequence = 0xffffffff
if (nr % 50 == 0):
if nr % 50 == 0:
print(nr)
myout = random.randint(0, txsize - 1)
segwit = random.randint(0, 2)
@ -100,10 +104,10 @@ class MyTxApiBitcoin(object):
pubkey = tools.hash_160(node.public_key)
else:
pubkey = os.urandom(20)
if (segwit == 2):
if segwit == 2:
# p2sh segwit
o.script_pubkey = b'\xa9\x14' + hash160(b'\x00\x14' + pubkey) + b'\x87'
elif (segwit == 1):
elif segwit == 1:
o.script_pubkey = b'\x00\x14' + pubkey
else:
o.script_pubkey = b'\x76\xa9\x14' + pubkey + b'\x88\xac'
@ -112,10 +116,12 @@ class MyTxApiBitcoin(object):
txhash = tools.Hash(txser)[::-1]
outi = self.inputs.append(
proto_types.TxInputType(
address_n=self.client.expand_path("44'/0'/0'/0/"+str(idx)),
script_type = (proto_types.SPENDWITNESS if segwit == 1 else
address_n=self.client.expand_path("44'/0'/0'/0/%d" % idx),
script_type=(
proto_types.SPENDWITNESS if segwit == 1 else
proto_types.SPENDP2SHWITNESS if segwit == 2 else
proto_types.SPENDADDRESS),
proto_types.SPENDADDRESS
),
prev_hash=txhash,
prev_index=myout,
amount=amount if segwit > 0 else 0
@ -142,6 +148,7 @@ class MyTxApiBitcoin(object):
# print(t)
return t
def main():
numinputs = 100
sizeinputtx = 10
@ -211,7 +218,7 @@ def main():
# script_type=proto_types.PAYTOADDRESS,
# # address_n=client.expand_path("44'/0'/0'/0/18"),
# # address='1PtCkQgyN6xHmXWzLmFFrDNA5vYhYLeNFZ',
# address='1NcMqUvyWv1K3Zxwmx5sqfj7ZEmPCSdJFM',
# # address='1NcMqUvyWv1K3Zxwmx5sqfj7ZEmPCSdJFM',
# ),
]
@ -221,5 +228,6 @@ def main():
client.close()
if __name__ == '__main__':
main()