def test_transfer_Ont(self): wallet_path = "C:\\Go_WorkSpace\\src\\github.com\\ontio\\ontology\\_Wallet_\\wallet.dat" sdk.wallet_manager.open_wallet(wallet_path) acct1_addr = "AQf4Mzu1YJrhz9f3aRkkwSm9n3qhXGSh4p" acct1_pwd = "xinhao" acct1 = sdk.wallet_manager.get_account(acct1_addr, acct1_pwd) # export several keys wif_key = acct1.export_wif() print("wif_key is ", wif_key) private_key_bytes = acct1.get_privatekey_from_wif(wif_key) print("private_key_bytes is ", private_key_bytes, type(private_key_bytes)) private_key_str = private_key_bytes.hex() print("private_key_str is ", private_key_str) contract_address_str = "0000000000000000000000000000000000000001" contract_address_bytearray = bytearray.fromhex(contract_address_str) contract_address = contract_address_bytearray # contract_address.reverse() print("my converted contract_address is ", contract_address) print("the givencontract_address is ", ONT_CONTRACT_ADDRESS) print('contract_address is ', contract_address) mybalance_1 = sdk.rpc.get_balance(acct1.get_address_base58()) print("acc wif_key is ", acc.export_wif()) from_acc = acct1 to_acc = acc asset = "ong" balance_1 = sdk.rpc.get_balance(from_acc.get_address_base58()) print("mybalance_1 is ", mybalance_1) print("balance_1 is ", balance_1) ass = Asset(sdk) from_addr = from_acc.get_address_base58() to_addr = to_acc.get_address_base58() print("Transfer from " + from_addr + " to " + to_addr) amount = int(int(balance_1[asset]) / 2) print("amount is ", amount, type(amount)) payer = acct1.get_address_base58() gaslimit = 20000 gasprice = 500 # print('ong balance is ', sdk.rpc.get_balance(from_acc.get_address_base58())) # # int(ass.unbound_ong(from_addr)) # ass.send_withdraw_ong_transaction(from_acc, to_addr, 100, to_acc,gaslimit, gasprice) # # print('ong balance is ', sdk.rpc.get_balance(from_acc.get_address_base58())) tx = ass.new_transfer_transaction(asset, from_addr, to_addr, amount, payer, gaslimit, gasprice) sdk.sign_transaction(tx, acct1) # sdk.sign_transaction(tx, to_acc) res = sdk.rpc.send_raw_transaction(tx) print("res in test_transfer_Ont is ", res)
def test_transferONG(self, fromAcct, toAcct, ongAmount): fromAddr = fromAcct.get_address_base58() toAddr = toAcct.get_address_base58() asset = "ong" ass = Asset(sdk) payerAddr = fromAddr gaslimit = 20000000 gasprice = 500 tx = ass.new_transfer_transaction(asset, fromAddr, toAddr, ongAmount, payerAddr, gaslimit, gasprice) sdk.sign_transaction(tx, fromAcct) hash = sdk.rpc.send_raw_transaction(tx)
def test_send_raw_transaction(self): private_key = '75de8489fcb2dcaf2ef3cd607feffde18789de7da129b5e97c81e001793cb7cf' acct = Account(a2b_hex(private_key.encode())) private_key2 = get_random_bytes(32) acct2 = Account(private_key2) tx = Asset.new_transfer_transaction("ont", acct.get_address_base58(), acct2.get_address_base58(), 2, acct.get_address_base58(), 20000, 500) tx = sdk.sign_transaction(tx, acct) res = sdk.rpc.send_raw_transaction(tx) self.assertEqual(len(res), 64)
def test_send_raw_transaction_pre_exec(self): pri_key_1 = '75de8489fcb2dcaf2ef3cd607feffde18789de7da129b5e97c81e001793cb7cf' acct = Account(pri_key_1) pri_key2 = get_random_str(64) acct2 = Account(pri_key2) b58_address_1 = acct.get_address_base58() b58_address_2 = acct2.get_address_base58() tx = Asset.new_transfer_transaction("ont", b58_address_1, b58_address_2, 2, b58_address_1, 20000, 500) tx = sdk.sign_transaction(tx, acct) result = sdk.rpc.send_raw_transaction_pre_exec(tx) self.assertEqual(result, '01')
def test_send_raw_transaction(self): pri_key_1 = '75de8489fcb2dcaf2ef3cd607feffde18789de7da129b5e97c81e001793cb7cf' acct = Account(pri_key_1) length = 64 pri_key_2 = get_random_str(length) acct2 = Account(pri_key_2) b58_address_1 = acct.get_address_base58() b58_address_2 = acct2.get_address_base58() tx = Asset.new_transfer_transaction("ont", b58_address_1, b58_address_2, 2, b58_address_1, 20000, 500) tx = sdk.sign_transaction(tx, acct) tx_hash = sdk.rpc.send_raw_transaction(tx) self.assertEqual(tx_hash, tx.hash256_explorer())
def test_send_raw_transaction(self): private_key = '75de8489fcb2dcaf2ef3cd607feffde18789de7da129b5e97c81e001793cb7cf' acct = Account(private_key, SignatureScheme.SHA256withECDSA) b58_from_address = acct.get_address_base58() b58_to_address = 'AW352JufVwuZReSt7SCQpbYqrWeuERUNJr' amount = 1 gas_price = 500 gas_limit = 20000 tx = Asset.new_transfer_transaction('ont', b58_from_address, b58_to_address, amount, b58_from_address, gas_limit, gas_price) tx = sdk.sign_transaction(tx, acct) tx_hash = sdk.rpc.send_raw_transaction(tx) self.assertEqual(tx_hash, tx.hash256_explorer())