diff --git a/bigchaindb/models.py b/bigchaindb/models.py index 5d4b6c9d..a46f2b73 100644 --- a/bigchaindb/models.py +++ b/bigchaindb/models.py @@ -113,13 +113,9 @@ class Transaction(Transaction): return self - @classmethod - def validate_structure(cls, tx_body): - validate_transaction_schema(tx_body) - @classmethod def from_dict(cls, tx_body): - cls.validate_structure(tx_body) + validate_transaction_schema(tx_body) return super().from_dict(tx_body) diff --git a/tests/common/test_transaction.py b/tests/common/test_transaction.py index e24519c9..5b06f801 100644 --- a/tests/common/test_transaction.py +++ b/tests/common/test_transaction.py @@ -966,13 +966,9 @@ def test_validate_version(utx): validate_transaction_model(utx) -def test_create_tx_no_asset_id(b): +def test_create_tx_no_asset_id(b, utx): from bigchaindb.common.exceptions import SchemaValidationError - from bigchaindb.models import Transaction - tx = Transaction.create([b.me], [([b.me], 1)]) - # works - Transaction.validate_structure(tx.to_dict()) - # broken - tx.asset['id'] = 'b' * 64 + from .utils import validate_transaction_model + utx.asset['id'] = 'b' * 64 with raises(SchemaValidationError): - Transaction.validate_structure(tx.to_dict()) + validate_transaction_model(utx) diff --git a/tests/test_models.py b/tests/test_models.py index 54d407f8..982ba2ba 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -1,21 +1,4 @@ from pytest import raises -from bigchaindb.common.exceptions import ValidationError - - -class TestTransactionModel(object): - def test_validating_an_invalid_transaction(self, b): - from bigchaindb.models import Transaction - - tx = Transaction.create([b.me], [([b.me], 1)]) - tx.operation = 'something invalid' - - with raises(ValidationError): - tx.validate(b) - - tx.operation = 'CREATE' - tx.inputs = [] - with raises(ValidationError): - tx.validate(b) class TestBlockModel(object):