itfix input_script and remove unused method inputs_without_script - electrum - Electrum Bitcoin wallet Err parazyd.org 70 hgit clone https://git.parazyd.org/electrum URL:https://git.parazyd.org/electrum parazyd.org 70 1Log /git/electrum/log.gph parazyd.org 70 1Files /git/electrum/files.gph parazyd.org 70 1Refs /git/electrum/refs.gph parazyd.org 70 1Submodules /git/electrum/file/.gitmodules.gph parazyd.org 70 i--- Err parazyd.org 70 1commit f7212a473291618ec02e59c35e06d0d391412b97 /git/electrum/commit/f7212a473291618ec02e59c35e06d0d391412b97.gph parazyd.org 70 1parent 33a32be576002de26808a1b5878d41924e982dc8 /git/electrum/commit/33a32be576002de26808a1b5878d41924e982dc8.gph parazyd.org 70 hAuthor: ThomasV URL:mailto:thomasv@electrum.org parazyd.org 70 iDate: Tue, 21 Mar 2017 14:33:42 +0100 Err parazyd.org 70 i Err parazyd.org 70 ifix input_script and remove unused method inputs_without_script Err parazyd.org 70 i Err parazyd.org 70 iDiffstat: Err parazyd.org 70 i M lib/tests/test_transaction.py | 4 ---- Err parazyd.org 70 i M lib/transaction.py | 14 +++----------- Err parazyd.org 70 i Err parazyd.org 70 i2 files changed, 3 insertions(+), 15 deletions(-) Err parazyd.org 70 i--- Err parazyd.org 70 1diff --git a/lib/tests/test_transaction.py b/lib/tests/test_transaction.py /git/electrum/file/lib/tests/test_transaction.py.gph parazyd.org 70 it@@ -86,9 +86,6 @@ class TestTransaction(unittest.TestCase): Err parazyd.org 70 i self.assertTrue(tx.has_address('1446oU3z268EeFgfcwJv6X2VBXHfoYxfuD')) Err parazyd.org 70 i self.assertFalse(tx.has_address('1CQj15y1N7LDHp7wTt28eoD1QhHgFgxECH')) Err parazyd.org 70 i Err parazyd.org 70 i- # Commenting out broken test until we know why inputs_without_script() is not returnng anything. Err parazyd.org 70 i- #self.assertEquals(tx.inputs_without_script(), set(x_pubkey for i in expected['inputs'] for x_pubkey in i['x_pubkeys'])) Err parazyd.org 70 i- Err parazyd.org 70 i self.assertEquals(tx.serialize(), unsigned_blob) Err parazyd.org 70 i Err parazyd.org 70 i tx.update_signatures(signed_blob) Err parazyd.org 70 it@@ -126,7 +123,6 @@ class TestTransaction(unittest.TestCase): Err parazyd.org 70 i self.assertEquals(tx.deserialize(), None) Err parazyd.org 70 i self.assertEquals(tx.as_dict(), {'hex': signed_blob, 'complete': True, 'final': True}) Err parazyd.org 70 i Err parazyd.org 70 i- self.assertEquals(tx.inputs_without_script(), set()) Err parazyd.org 70 i self.assertEquals(tx.serialize(), signed_blob) Err parazyd.org 70 i Err parazyd.org 70 i tx.update_signatures(signed_blob) Err parazyd.org 70 1diff --git a/lib/transaction.py b/lib/transaction.py /git/electrum/file/lib/transaction.py.gph parazyd.org 70 it@@ -636,9 +636,9 @@ class Transaction: Err parazyd.org 70 i Err parazyd.org 70 i @classmethod Err parazyd.org 70 i def input_script(self, txin, estimate_size=False): Err parazyd.org 70 i- if txin.get('scriptSig'): Err parazyd.org 70 i- return txin['scriptSig'] Err parazyd.org 70 i _type = txin['type'] Err parazyd.org 70 i+ if _type == 'coinbase': Err parazyd.org 70 i+ return txin['scriptSig'] Err parazyd.org 70 i pubkeys, sig_list = self.get_siglist(txin, estimate_size) Err parazyd.org 70 i script = ''.join(push_script(x) for x in sig_list) Err parazyd.org 70 i if _type == 'p2pk': Err parazyd.org 70 it@@ -651,7 +651,7 @@ class Transaction: Err parazyd.org 70 i elif _type == 'p2pkh': Err parazyd.org 70 i script += push_script(pubkeys[0]) Err parazyd.org 70 i elif _type == 'p2wpkh-p2sh': Err parazyd.org 70 i- redeem_script = segwit_script(pubkeys[0]) Err parazyd.org 70 i+ redeem_script = txin.get('redeemScript') or segwit_script(pubkeys[0]) Err parazyd.org 70 i return push_script(redeem_script) Err parazyd.org 70 i elif _type == 'address': Err parazyd.org 70 i script += push_script(pubkeys[0]) Err parazyd.org 70 it@@ -808,14 +808,6 @@ class Transaction: Err parazyd.org 70 i s, r = self.signature_count() Err parazyd.org 70 i return r == s Err parazyd.org 70 i Err parazyd.org 70 i- def inputs_without_script(self): Err parazyd.org 70 i- out = set() Err parazyd.org 70 i- for i, txin in enumerate(self.inputs()): Err parazyd.org 70 i- if txin.get('scriptSig') == '': Err parazyd.org 70 i- out.add(i) Err parazyd.org 70 i- return out Err parazyd.org 70 i- Err parazyd.org 70 i- Err parazyd.org 70 i def sign(self, keypairs): Err parazyd.org 70 i for i, txin in enumerate(self.inputs()): Err parazyd.org 70 i num = txin['num_sig'] Err parazyd.org 70 .