Add fulfillment validation

This commit is contained in:
tim 2016-08-08 15:06:00 +02:00 committed by Sylvain Bellemare
parent f459d535e3
commit 9a2b6a0550
1 changed files with 18 additions and 0 deletions

View File

@ -193,3 +193,21 @@ def test_invalid_tx_initialization():
Transaction(Transaction.CREATE, [], wrong_data_type)
with raises(TypeError):
Transaction(Transaction.CREATE, [], [], wrong_data_type)
with raises(TypeError):
Transaction('RANSFER', [], [])
with raises(TypeError):
Transaction('TRANSFER', [], [])
def test_validate_tx_signature(default_ffill, default_cond, user_vk, user_sk):
from copy import deepcopy
from bigchaindb.transaction import Transaction
from bigchaindb.crypto import SigningKey
tx = Transaction(Transaction.CREATE, [default_ffill], [default_cond])
expected = deepcopy(default_ffill)
expected.fulfillment.sign(str(tx), SigningKey(user_sk))
tx.sign([user_sk])
assert tx.fulfillments[0].fulfillment.to_dict()['signature'] == expected.fulfillment.to_dict()['signature']
assert tx.fulfillments_valid() is True