echo"=========== # para cross transfer from parachain test ============="
balance=$(${PARA_CLI5} account balance -a 1BM2xhBk95qoae8zKNDWwAVGgBERhb7DQu -e user.p.game.coins | jq -r".balance")
if["${balance}"!="1000.0000"];then
echo"para account 1BM2xhBk should be 1000, real is $balance"
exit 1
fi
hash=$(${PARA_CLI5} send coins send_exec -e user.p.game.paracross -a 300 -k 0x128de4afa7c061c00d854a1bca51b58e80a2c292583739e5aebf4c0f778959e1)
echo"${hash}"
query_tx "${PARA_CLI5}""${hash}"
balance=$(${PARA_CLI5} account balance -a 1BM2xhBk95qoae8zKNDWwAVGgBERhb7DQu -e user.p.game.paracross | jq -r".balance")
if["${balance}"!="300.0000"];then
echo"para paracross account 1BM2xhBk should be 300, real is $balance"
exit 1
fi
echo"========== #1. user.p.game chain transfer to main chain 300 user.p.game.coins.para, remain=0 ==========="
hash=$(${PARA_CLI5} send para cross_transfer -a 300 -e user.p.game.coins -s para -t 1BM2xhBk95qoae8zKNDWwAVGgBERhb7DQu -k 0x128de4afa7c061c00d854a1bca51b58e80a2c292583739e5aebf4c0f778959e1)
echo-e"${GRE}=========== $FUNCNAME end ===========${NOC}"
}
function lock_multisign_Bty_test(){
echo-e"${GRE}=========== $FUNCNAME begin ===========${NOC}"
lock_bty_multisign 330 "330.0000""0.0000"
lock_bty_multisign 800 "565.0000""565.0000"
lock_bty_multisign 500 "532.5000""1097.5000"
echo-e"${GRE}=========== $FUNCNAME end ===========${NOC}"
}
function transfer_multisign_Bty_test(){
echo-e"${GRE}=========== $FUNCNAME begin ===========${NOC}"
# transfer test
# shellcheck disable=SC2154
hash=$(${CLIA} chain33 multisign transfer -a 100 -r"${chain33BridgeBank}"-k"${chain33MultisignKeyA},${chain33MultisignKeyB},${chain33MultisignKeyC},${chain33MultisignKeyD}" | jq -r".msg")
hash=$(${CLIA} chain33 multisign transfer -a 100 -r"${chain33MultisignA}"-k"${chain33MultisignKeyA},${chain33MultisignKeyB},${chain33MultisignKeyC},${chain33MultisignKeyD}" | jq -r".msg")
echo-e"${GRE}=========== $FUNCNAME end ===========${NOC}"
}
function lock_multisign_Chain33Ycc_test(){
echo-e"${GRE}=========== $FUNCNAME begin ===========${NOC}"
lock_chain33_ycc_multisign 30 30 0
lock_chain33_ycc_multisign 70 40 60
lock_chain33_ycc_multisign 260 120 240
lock_chain33_ycc_multisign 10 52 318
echo-e"${GRE}=========== $FUNCNAME end ===========${NOC}"
}
function transfer_multisign_Chain33Ycc_test(){
echo-e"${GRE}=========== $FUNCNAME begin ===========${NOC}"
# transfer test
hash=$(${CLIA} chain33 multisign transfer -a 10 -r"${chain33BridgeBank}"-t"${chain33YccERC20TokenAddr}"-k"${chain33MultisignKeyA},${chain33MultisignKeyB},${chain33MultisignKeyC},${chain33MultisignKeyD}" | jq -r".msg")
hash=$(${CLIA} chain33 multisign transfer -a 5 -r"${chain33MultisignA}"-t"${chain33YccERC20TokenAddr}"-k"${chain33MultisignKeyA},${chain33MultisignKeyB},${chain33MultisignKeyC},${chain33MultisignKeyD}" | jq -r".msg")
echo-e"${GRE}=========== $FUNCNAME end ===========${NOC}"
}
function transfer_multisign_EthYcc(){
echo-e"${GRE}=========== $FUNCNAME begin ===========${NOC}"
# transfer
# multisignEthAddr 要有手续费
${CLIA} ethereum transfer -k"${ethDeployKey}"-m 10 -r"${multisignEthAddr}"
sleep 2
# transfer
${CLIA} ethereum multisign transfer -a 8 -r"${ethBridgeBank}"-t"${ethereumBycERC20TokenAddr}"-k"${ethMultisignKeyA},${ethMultisignKeyB},${ethMultisignKeyC},${ethMultisignKeyD}"
${CLIA} ethereum multisign transfer -a 10 -r"${ethMultisignA}"-t"${ethereumBycERC20TokenAddr}"-k"${ethMultisignKeyA},${ethMultisignKeyB},${ethMultisignKeyC},${ethMultisignKeyD}"
local isExit=$(docker inspect ${ganacheName} | jq ".[]" | jq ".Id")
if[[${isExit}!=""]];then
docker stop ${ganacheName}
docker rm${ganacheName}
fi
# 启动 eth
docker run -d-e 10000 --name${ganacheName}-p 7545:8545 -l eth_test trufflesuite/ganache-cli:latest -a 20 --debug-b 1 -m"coast bar giraffe art venue decide symbol law visual crater vital fold"-l 0x7a1200
sleep 1
}
# eth 区块等待 $1:等待高度 $2:url地址,默认为 http://localhost:7545,测试网络用 https://ropsten-rpc.linkpool.io/
for deleteName in"deploy4chain33""deployerPrivateKey""operatorAddr""validatorsAddr""initPowers""deploy""deployerPrivateKey""operatorAddr""validatorsAddr""initPowers";do