Skip to content

Commit

Permalink
Problem: the skip_id param is redundant. (#2531)
Browse files Browse the repository at this point in the history
Solution: remove the param; only call validate_id where it is needed.
  • Loading branch information
ldmberman authored and kansi committed Sep 13, 2018
1 parent 6a90641 commit f55f221
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 5 deletions.
2 changes: 2 additions & 0 deletions bigchaindb/common/transaction.py
Original file line number Diff line number Diff line change
Expand Up @@ -1195,7 +1195,9 @@ def from_dict(cls, tx, skip_schema_validation=True):
"""
operation = tx.get('operation', Transaction.CREATE) if isinstance(tx, dict) else Transaction.CREATE
cls = Transaction.resolve_class(operation)

if not skip_schema_validation:
cls.validate_id(tx)
cls.validate_schema(tx)

inputs = [Input.from_dict(input_) for input_ in tx['inputs']]
Expand Down
6 changes: 2 additions & 4 deletions bigchaindb/elections/vote.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,16 +42,14 @@ def validate(self, bigchain, current_transactions=[]):
def generate(cls, inputs, recipients, election_id, metadata=None):
(inputs, outputs) = cls.validate_transfer(inputs, recipients, election_id, metadata)
election_vote = cls(cls.OPERATION, {'id': election_id}, inputs, outputs, metadata)
cls.validate_schema(election_vote.to_dict(), skip_id=True)
cls.validate_schema(election_vote.to_dict())
return election_vote

@classmethod
def validate_schema(cls, tx, skip_id=False):
def validate_schema(cls, tx):
"""Validate the validator election vote transaction. Since `VOTE` extends `TRANSFER`
transaction, all the validations for `CREATE` transaction should be inherited
"""
if not skip_id:
cls.validate_id(tx)
_validate_schema(TX_SCHEMA_COMMON, tx)
_validate_schema(TX_SCHEMA_TRANSFER, tx)
_validate_schema(cls.TX_SCHEMA_CUSTOM, tx)
Expand Down
1 change: 0 additions & 1 deletion bigchaindb/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ def from_dict(cls, tx_body):

@classmethod
def validate_schema(cls, tx_body):
cls.validate_id(tx_body)
validate_transaction_schema(tx_body)
validate_txn_obj('asset', tx_body['asset'], 'data', validate_key)
validate_txn_obj('metadata', tx_body, 'metadata', validate_key)
Expand Down

0 comments on commit f55f221

Please sign in to comment.