github.com/platonnetwork/platon-go@v0.7.6/cases/tests/lib/duplicate_sign.py (about)

     1  from environment.env import TestEnvironment
     2  from environment.node import Node
     3  from .economic import Economic
     4  
     5  
     6  class DuplicateSign:
     7      def __init__(self, env: TestEnvironment, node: Node):
     8          self.node = node
     9          self.economic = Economic(env)
    10  
    11      def reportDuplicateSign(self, typ, data, from_address, transaction_cfg=None):
    12          """
    13          Report duplicate sign
    14          :param typ: Represents duplicate sign type, 1:prepareBlock, 2: prepareVote, 3:viewChange
    15          :param data: Json value of single evidence, format reference RPC interface Evidences
    16          :param from_address: address for transaction
    17          :param transaction_cfg:
    18          :return:
    19          """
    20          pri_key = self.economic.account.find_pri_key(from_address)
    21          return self.ppos.reportDuplicateSign(typ, data, pri_key, transaction_cfg)
    22  
    23      @property
    24      def ppos(self):
    25          return self.node.ppos