def _inputs_valid()

in resdb_driver/transaction.py [0:0]


    def _inputs_valid(self, output_condition_uris):
        """!Validates an Input against a given set of Outputs.
        Note:
            The number of `output_condition_uris` must be equal to the
            number of Inputs a Transaction has.

        @param output_condition_uris (:obj:`list` of :obj:`str`): A list of
            Outputs to check the Inputs against.
        @return If all Outputs are valid.
        """

        if len(self.inputs) != len(output_condition_uris):
            raise ValueError(
                "Inputs and " "output_condition_uris must have the same count"
            )

        tx_dict = self.to_dict()
        tx_dict = Transaction._remove_signatures(tx_dict)
        tx_dict["id"] = None
        tx_serialized = Transaction._to_str(tx_dict)

        def validate(i, output_condition_uri=None):
            """Validate input against output condition URI"""
            return self._input_valid(
                self.inputs[i], self.operation, tx_serialized, output_condition_uri
            )

        return all(validate(i, cond) for i, cond in enumerate(output_condition_uris))