def test_trx_exchange_transaction(self, app): tx = app.packContract( tron.Transaction.Contract.ExchangeTransactionContract, contract.ExchangeTransactionContract( owner_address=bytes.fromhex(app.getAccount(0)['addressHex']), exchange_id=6, token_id="1000166".encode(), quant=10000, expected=100 ) ) exchangeSignature = ["08061207313030303136361a0b43727970746f436861696e20002a015f3203545258380642473045022100fe276f30a63173b2440991affbbdc5d6d2d22b61b306b24e535a2fb866518d9c02205f7f41254201131382ec6c8b3c78276a2bb136f910b9a1f37bfde192fc448793"] data, status = app.sign(app.getAccount(0)['path'], tx, exchangeSignature) validSignature, txID = validateSignature.validate(tx,data[0:65],app.getAccount(0)['publicKey'][2:]) assert(validSignature == True)
logger.debug('- Signature: {}'.format(binascii.hexlify(result[0:65]))) if (validSignature): logger.debug('- Valid: {}'.format(validSignature)) else: logger.error('- Valid: {}'.format(validSignature)) sys.exit(0) ############################## # VRC10 Exchange Transaction # ############################## logger.debug('\n\nExchange Transaction Contract:') tx = vision.Transaction() newContract = contract.ExchangeTransactionContract(owner_address=bytes.fromhex( accounts[1]['addressHex']), exchange_id=6, token_id="1000166".encode(), quant=10000, expected=100) c = tx.raw_data.contract.add() c.type = vision.Transaction.Contract.ExchangeTransactionContract param = Any() param.Pack(newContract) c.parameter.CopyFrom(param) # Exchange 6 CCT <-> VS exchangeSignature = [ "08061207313030303136361a0b43727970746f436861696e20002a015f3203545258380642473045022100fe276f30a63173b2440991affbbdc5d6d2d22b61b306b24e535a2fb866518d9c02205f7f41254201131382ec6c8b3c78276a2bb136f910b9a1f37bfde192fc448793" ] raw_tx, result = ledgerSign(accounts[1]['path'], tx, exchangeSignature) validSignature, txID = validateSignature.validate(raw_tx, result[0:65], accounts[1]['publicKey'][2:])