Commit 34bc0575 authored by pengjun's avatar pengjun

#627 add rpc-test

parent 1a2863b7
...@@ -218,7 +218,7 @@ func CollateralizePriceFeed(cmd *cobra.Command, args []string) { ...@@ -218,7 +218,7 @@ func CollateralizePriceFeed(cmd *cobra.Command, args []string) {
} }
rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr") rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr")
price, _ := cmd.Flags().GetFloat32("price") price, _ := cmd.Flags().GetFloat64("price")
volume, _ := cmd.Flags().GetUint64("volume") volume, _ := cmd.Flags().GetUint64("volume")
params := &rpctypes.CreateTxIn{ params := &rpctypes.CreateTxIn{
......
#!/usr/bin/env bash
# shellcheck disable=SC2128
set -e
set -o pipefail
MAIN_HTTP=""
ISSU_ID=""
DEBT_ID=""
COLL_ID=""
BORROW_ID=""
SystemManager="0x4257d8692ef7fe13c68b65d6a52f03933db2fa5ce8faf210b5b8b80c721ced01"
TokenSuperManager="0xc34b5d9d44ac7b754806f761d3d4d2c4fe5214f6b074c19f069c4f5c2a29c8cc"
TokenAddr="1Q8hGLfoGe63efeWa8fJ4Pnukhkngt6poK"
IssuanceAddr1="1C9t6uNcmbUgebt9HZfKweNb58hUcq5MZY"
IssuancePriv1="0x6bbfe2c8933ad56d244b68f267da576e9df539bcabc160d2ef29acc2838d5d81"
IssuanceAddr2="16pjXn7vMVPqKjuVnYV44ANQGD1TRaw3ct"
IssuancePriv2="0xa099f50ca616017000f338fb00c8eda133b1616f6d62f2ea3e361cc71e6c92d6"
IssuanceAddr3="1CQMn9B5Rh6s8wtnYEhuQwtVxPjcXSC4qC"
IssuancePriv3="0xb4c158903f373636765a0c6226b91980c5a403a37f21bc8248d45c09569e6ad3"
CollateralizeAddr="1BLfkPaAGqSiXyovx3Pm9xUTMHmusLXtLZ"
CollateralizePriv="0xf860db5178e6436cabd499c142084515966f88f581936ee9ccbfc0a6a77c0e70"
# shellcheck source=/dev/null
source ../dapp-test-common.sh
issuance_Create() {
echo "========== # issuance create begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"issuance","actionName":"IssuanceCreate","payload":{"debtCeiling":"1000.1", "totalBalance":"10000.1"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv1}" ${MAIN_HTTP}
ISSU_ID=$RAW_TX_HASH
chain33_BlockWait 1 ${MAIN_HTTP}
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceInfoByID","payload":{"issuanceId":"'"$ISSU_ID"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceByStatus","payload":{"status":1}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # issuance create end =========="
}
issuance_Manage() {
echo "========== # issuance manage begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"issuance","actionName":"IssuanceManage","payload":{"addr":["'"${IssuanceAddr3}"'"]}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv1}" ${MAIN_HTTP}
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # issuance manage end =========="
}
issuance_Feed() {
echo "========== # issuance feed begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"issuance","actionName":"IssuancePriceFeed","payload":{"Price":[1], "Volume":[100]}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv2}" ${MAIN_HTTP}
chain33_BlockWait 1 "${MAIN_HTTP}"
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuancePrice","payload":{}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # issuance feed end =========="
}
issuance_Debt() {
echo "========== # issuance debt begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"issuance","actionName":"Continue","payload":{"gameId":"'$GAME_ID'"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv3}" ${MAIN_HTTP}
DEBT_ID=$RAW_TX_HASH
chain33_BlockWait 1 "${MAIN_HTTP}"
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceRecordByID","payload":{"issuanceId": "'"${ISSU_ID}"'", "debtId": "'"${DEBT_ID}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceRecordsByAddr","payload":{"issuanceId": "'"${ISSU_ID}"'", "addr": "'"${IssuanceAddr3}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceRecordsByStatus","payload":{"issuanceId": "'"${ISSU_ID}"'", "status": 1}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # issuance debt end =========="
}
issuance_Repay() {
echo "========== # issuance repay begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"issuance","actionName":"IssuanceRepay","payload":{"issuanceId":"'"${ISSU_ID}"'", "debtId":"'"${DEBT_ID}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv3}" ${MAIN_HTTP}
chain33_BlockWait 1 "${MAIN_HTTP}"
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceRecordsByStatus","payload":{"issuanceId": "'"${ISSU_ID}"'", "status": 6}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # issuance repay end =========="
}
issuance_Close() {
echo "========== # issuance close begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"issuance","actionName":"IssuanceClose","payload":{"issuanceId":"'"${ISSU_ID}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv1}" ${MAIN_HTTP}
chain33_BlockWait 1 "${MAIN_HTTP}"
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"issuance","funcName":"IssuanceByStatus","payload":{"status": 2}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # issuance close end =========="
}
collateralize_Manage() {
echo "========== # collateralize manage begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizeManage","payload":{"debtCeiling":"1000.1", "totalBalance":"10000.1"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv1}" ${MAIN_HTTP}
ISSU_ID=$RAW_TX_HASH
chain33_BlockWait 1 ${MAIN_HTTP}
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeConfig","payload":{}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # collateralize manage end =========="
}
collateralize_Create() {
echo "========== # collateralize create begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizeCreate","payload":{"debtCeiling":"1000.1", "totalBalance":"10000.1"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv3}" ${MAIN_HTTP}
COLL_ID=$RAW_TX_HASH
chain33_BlockWait 1 ${MAIN_HTTP}
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeInfoByID","payload":{"collateralizeId":"'"${COLL_ID}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeByStatus","payload":{"status":1}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeByAddr","payload":{"addr":"'"${IssuanceAddr3}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # collateralize create end =========="
}
collateralize_Feed() {
echo "========== # collateralize feed begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizePriceFeed","payload":{"Price":[1], "Volume":[100]}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv2}" ${MAIN_HTTP}
chain33_BlockWait 1 "${MAIN_HTTP}"
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizePrice","payload":{}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # collateralize feed end =========="
}
collateralize_Borrow() {
echo "========== # collateralize borrow begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizeBorrow","payload":{"collateralizeId":"'"${COLL_ID}"'", "value":100.1}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${CollateralizePriv}" ${MAIN_HTTP}
BORROW_ID=$RAW_TX_HASH
chain33_BlockWait 1 ${MAIN_HTTP}
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeRecordByID","payload":{"collateralizeId":"'"${COLL_ID}"'", "recordId":"'"${BORROW_ID}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeRecordByStatus","payload":{"collateralizeId":"'"${COLL_ID}"'", "status":1}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeRecordByAddr","payload":{"collateralizeId":"'"${COLL_ID}"'", "addr":"'"${CollateralizeAddr}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo_rst "$FUNCNAME" "$?"
echo "========== # collateralize borrow end =========="
}
collateralize_Append() {
echo "========== # collateralize append begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizeAppend","payload":{"collateralizeId":"'"${COLL_ID}"'", "recordID":"'"${BORROW_ID}"'", "value":10}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${CollateralizePriv}" ${MAIN_HTTP}
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # collateralize append end =========="
}
collateralize_Repay() {
echo "========== # collateralize repay begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizeRepay","payload":{"collateralizeId":"'"${COLL_ID}"'", "recordID":"'"${BORROW_ID}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${CollateralizePriv}" ${MAIN_HTTP}
chain33_BlockWait 1 ${MAIN_HTTP}
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeRecordByStatus","payload":{"collateralizeId":"'"${COLL_ID}"'", "status":6}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo "========== # collateralize repay end =========="
}
collateralize_Retrieve() {
echo "========== # collateralize retrieve begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"collateralize","actionName":"CollateralizeRetrieve","payload":{"collateralizeId":"'"${COLL_ID}"'", "balance":100.1}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" "${IssuancePriv3}" ${MAIN_HTTP}
chain33_BlockWait 1 ${MAIN_HTTP}
data=$(curl -ksd '{"method":"Chain33.Query","params":[{"execer":"collateralize","funcName":"CollateralizeRecordByStatus","payload":{"collateralizeId":"'"${COLL_ID}"'", "status":6}}]}' ${MAIN_HTTP} | jq -r ".result")
[ "$data" != null ]
echo "========== # collateralize retrieve end =========="
}
init() {
ispara=$(echo '"'"${MAIN_HTTP}"'"' | jq '.|contains("8901")')
echo "ipara=$ispara"
if [ "$ispara" == true ]; then
issuance_addr=$(curl -ksd '{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.issuance"}]}' ${MAIN_HTTP} | jq -r ".result")
collateralize_addr=$(curl -ksd '{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.collateralize"}]}' ${MAIN_HTTP} | jq -r ".result")
else
issuance_addr=$(curl -ksd '{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"issuance"}]}' ${MAIN_HTTP} | jq -r ".result")
collateralize_addr=$(curl -ksd '{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"collateralize"}]}' ${MAIN_HTTP} | jq -r ".result")
fi
local main_ip=${MAIN_HTTP//8901/8801}
#main chain import pri key
#1C9t6uNcmbUgebt9HZfKweNb58hUcq5MZY
chain33_ImportPrivkey ${IssuancePriv1} ${IssuanceAddr1} "issuance1" "${main_ip}"
#16pjXn7vMVPqKjuVnYV44ANQGD1TRaw3ct
chain33_ImportPrivkey ${IssuancePriv2} ${IssuanceAddr2} "issuance2" "${main_ip}"
#1CQMn9B5Rh6s8wtnYEhuQwtVxPjcXSC4qC
chain33_ImportPrivkey ${IssuancePriv3} ${IssuanceAddr3} "issuance3" "${main_ip}"
#1BLfkPaAGqSiXyovx3Pm9xUTMHmusLXtLZ
chain33_ImportPrivkey ${CollateralizePriv} ${CollateralizeAddr} "coll" "${main_ip}"
if [ "$ispara" == false ]; then
chain33_applyCoins "${IssuanceAddr1}" 12000000000 "${main_ip}"
chain33_QueryBalance "${IssuanceAddr1}" "$main_ip"
chain33_applyCoins "${IssuanceAddr2}" 12000000000 "${main_ip}"
chain33_QueryBalance "${IssuanceAddr2}" "$main_ip"
chain33_applyCoins "${IssuanceAddr3}" 12000000000 "${main_ip}"
chain33_QueryBalance "${IssuanceAddr3}" "$main_ip"
chain33_applyCoins "${CollateralizeAddr}" 12000000000 "${main_ip}"
chain33_QueryBalance "${CollateralizeAddr}" "$main_ip"
else
# tx fee
chain33_applyCoins ${IssuanceAddr1} 1000000000 "${main_ip}"
chain33_QueryBalance ${IssuanceAddr1} "$main_ip"
chain33_applyCoins "${IssuanceAddr2}" 1000000000 "${main_ip}"
chain33_QueryBalance "${IssuanceAddr2}" "$main_ip"
chain33_applyCoins "${IssuanceAddr3}" 1000000000 "${main_ip}"
chain33_QueryBalance "${IssuanceAddr3}" "$main_ip"
chain33_applyCoins "${CollateralizeAddr}" 1000000000 "${main_ip}"
chain33_QueryBalance "${CollateralizeAddr}" "$main_ip"
local para_ip="${MAIN_HTTP}"
#para chain import pri key
#1C9t6uNcmbUgebt9HZfKweNb58hUcq5MZY
chain33_ImportPrivkey ${IssuancePriv1} ${IssuanceAddr1} "issuance1" "${para_ip}"
#16pjXn7vMVPqKjuVnYV44ANQGD1TRaw3ct
chain33_ImportPrivkey ${IssuancePriv2} ${IssuanceAddr2} "issuance2" "${para_ip}"
#1CQMn9B5Rh6s8wtnYEhuQwtVxPjcXSC4qC
chain33_ImportPrivkey ${IssuancePriv3} ${IssuanceAddr3} "issuance3" "${para_ip}"
#1BLfkPaAGqSiXyovx3Pm9xUTMHmusLXtLZ
chain33_ImportPrivkey ${CollateralizePriv} ${CollateralizeAddr} "coll" "${main_ip}"
chain33_applyCoins "${IssuanceAddr3}" 12000000000 "${para_ip}"
chain33_QueryBalance "${IssuanceAddr3}" "$para_ip"
chain33_applyCoins "${CollateralizeAddr}" 12000000000 "${para_ip}"
chain33_QueryBalance "${CollateralizeAddr}" "$para_ip"
fi
chain33_SendToAddress "${IssuanceAddr3}" "$issuance_addr" 10000000000 ${MAIN_HTTP}
chain33_QueryExecBalance "${IssuanceAddr3}" "issuance" "$MAIN_HTTP"
chain33_BlockWait 1 "${MAIN_HTTP}"
chain33_SendToAddress "${CollateralizeAddr}" "$collateralize_addr" 10000000000 ${MAIN_HTTP}
chain33_QueryExecBalance "${CollateralizeAddr}" "collateralize" "$MAIN_HTTP"
chain33_BlockWait 1 "${MAIN_HTTP}"
}
manage() {
echo "========== # issuance add issuance-manage begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key": "issuance-manage", "value":"'"${IssuanceAddr1}"'", "op":"add"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" ${SystemManager} ${MAIN_HTTP}
echo "========== # issuance add issuance-manage end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # issuance add issuance-price-feed begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key": "issuance-price-feed", "value":"'"${IssuanceAddr2}"'", "op":"add"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "$tx" ${SystemManager} ${MAIN_HTTP}
echo "========== # issuance add issuance-price-feed end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
# echo "========== # issuance add issuance-guarantor begin =========="
# tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key": "issuance-guarantor", "value":"'"${IssuanceAddr3}"'", "op":"add"}}]}' ${MAIN_HTTP} | jq -r ".result")
#
# data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
# ok=$(jq '(.execer != "")' <<<"$data")
#
# [ "$ok" == true ]
# echo_rst "$FUNCNAME" "$?"
#
# chain33_SignRawTx "$tx" ${SystemManager} ${MAIN_HTTP}
# echo "========== # issuance add issuance-guarantor end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
}
token() {
echo "========== # issuance add token begin =========="
echo "========== # issuance add token token-blacklist begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key": "token-blacklist", "value":"BTY", "op":"add"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "${tx}" "${TokenSuperManager}" "${MAIN_HTTP}"
echo "========== # issuance add token token-blacklist end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # issuance add token token-finisher begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer":"manage","actionName":"Modify","payload":{"key": "token-finisher", "value":"'${TokenAddr}'", "op":"add"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "${tx}" "${TokenSuperManager}" "${MAIN_HTTP}"
echo "========== # issuance add token token-finisher end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # issuance add token precreate begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateRawTokenPreCreateTx","params":[{"name": "ccny", "symbol": "CCNY", "total": 100000000, "price": 1, "category": 1,"owner":"'${TokenAddr}'"}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "${tx}" "${TokenSuperManager}" "${MAIN_HTTP}"
echo "========== # issuance add token precreate end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # issuance add token finish begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateRawTokenFinishTx","params":[{"symbol": "CCNY", "owner":"'${TokenAddr}'"}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "${tx}" "${TokenSuperManager}" "${MAIN_HTTP}"
echo "========== # issuance add token finish end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
echo "========== # issuance add token transfer begin =========="
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer": "token","actionName":"Transfer","payload": {"cointoken":"CCNY", "amount": "100000", "note": "", "to": "'"${IssuanceAddr1}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "${tx}" "${TokenSuperManager}" "${MAIN_HTTP}"
tx=$(curl -ksd '{"method":"Chain33.CreateTransaction","params":[{"execer": "token","actionName":"Transfer","payload": {"cointoken":"CCNY", "amount": "1000", "note": "", "to": "'"${CollateralizeAddr}"'"}}]}' ${MAIN_HTTP} | jq -r ".result")
data=$(curl -ksd '{"method":"Chain33.DecodeRawTransaction","params":[{"txHex":"'"$tx"'"}]}' ${MAIN_HTTP} | jq -r ".result.txs[0]")
ok=$(jq '(.execer != "")' <<<"$data")
[ "$ok" == true ]
echo_rst "$FUNCNAME" "$?"
chain33_SignRawTx "${tx}" "${TokenSuperManager}" "${MAIN_HTTP}"
echo "========== # issuance add token transfer end =========="
chain33_BlockWait 1 ${MAIN_HTTP}
}
function issuance_test() {
issuance_Create
issuance_Manage
issuance_Feed
issuance_Debt
issuance_Repay
issuance_Close
}
function collateralize_test() {
collateralize_Create
collateralize_Manage
collateralize_Feed
collateralize_Borrow
collateralize_Append
collateralize_Repay
collateralize_Retrieve
}
function main() {
chain33_RpcTestBegin "issuance & collateralize"
MAIN_HTTP="$1"
echo "ip=$MAIN_HTTP"
init
manage
issuance_test
collateralize_test
chain33_RpcTestRst "issuance & collateralize" "$CASE_ERR"
}
chain33_debug_function main "$1"
...@@ -46,8 +46,8 @@ func addIssuanceCreateFlags(cmd *cobra.Command) { ...@@ -46,8 +46,8 @@ func addIssuanceCreateFlags(cmd *cobra.Command) {
cmd.Flags().Float64P("balance", "b", 0, "balance") cmd.Flags().Float64P("balance", "b", 0, "balance")
cmd.MarkFlagRequired("balance") cmd.MarkFlagRequired("balance")
cmd.Flags().Float64P("debtCeiling", "d", 0, "debtCeiling") cmd.Flags().Float64P("debtCeiling", "d", 0, "debtCeiling")
cmd.Flags().Float32P("liquidationRatio", "l", 0, "liquidationRatio") cmd.Flags().Float64P("liquidationRatio", "l", 0, "liquidationRatio")
cmd.Flags().Float32P("period", "p", 0, "period") cmd.Flags().Uint64P("period", "p", 0, "period")
} }
func IssuanceCreate(cmd *cobra.Command, args []string) { func IssuanceCreate(cmd *cobra.Command, args []string) {
...@@ -60,7 +60,7 @@ func IssuanceCreate(cmd *cobra.Command, args []string) { ...@@ -60,7 +60,7 @@ func IssuanceCreate(cmd *cobra.Command, args []string) {
rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr") rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr")
balance, _ := cmd.Flags().GetFloat64("balance") balance, _ := cmd.Flags().GetFloat64("balance")
debtCeiling, _ := cmd.Flags().GetFloat64("debtCeiling") debtCeiling, _ := cmd.Flags().GetFloat64("debtCeiling")
liquidationRatio, _ := cmd.Flags().GetFloat32("liquidationRatio") liquidationRatio, _ := cmd.Flags().GetFloat64("liquidationRatio")
period, _ := cmd.Flags().GetUint64("period") period, _ := cmd.Flags().GetUint64("period")
params := &rpctypes.CreateTxIn{ params := &rpctypes.CreateTxIn{
...@@ -167,7 +167,7 @@ func IssuancePriceFeedRawTxCmd() *cobra.Command { ...@@ -167,7 +167,7 @@ func IssuancePriceFeedRawTxCmd() *cobra.Command {
} }
func addIssuancePriceFeedFlags(cmd *cobra.Command) { func addIssuancePriceFeedFlags(cmd *cobra.Command) {
cmd.Flags().Float32P("price", "p", 0, "price") cmd.Flags().Float64P("price", "p", 0, "price")
cmd.MarkFlagRequired("price") cmd.MarkFlagRequired("price")
cmd.Flags().Uint64P("volume", "v", 0, "volume") cmd.Flags().Uint64P("volume", "v", 0, "volume")
cmd.MarkFlagRequired("volume") cmd.MarkFlagRequired("volume")
...@@ -181,7 +181,7 @@ func IssuancePriceFeed(cmd *cobra.Command, args []string) { ...@@ -181,7 +181,7 @@ func IssuancePriceFeed(cmd *cobra.Command, args []string) {
} }
rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr") rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr")
price, _ := cmd.Flags().GetFloat32("price") price, _ := cmd.Flags().GetFloat64("price")
volume, _ := cmd.Flags().GetUint64("volume") volume, _ := cmd.Flags().GetUint64("volume")
params := &rpctypes.CreateTxIn{ params := &rpctypes.CreateTxIn{
......
...@@ -13,7 +13,7 @@ message Issuance { ...@@ -13,7 +13,7 @@ message Issuance {
repeated DebtRecord debtRecords = 7; //大户抵押记录 repeated DebtRecord debtRecords = 7; //大户抵押记录
repeated DebtRecord invalidRecords = 8; //大户抵押记录 repeated DebtRecord invalidRecords = 8; //大户抵押记录
int32 status = 9; //当期发行的状态,是否关闭 int32 status = 9; //当期发行的状态,是否关闭
double latestLiquidationPrice = 10;//最高清算价格 double latestLiquidationPrice = 10;//最高清算价格
int64 period = 11;//发行最大期限 int64 period = 11;//发行最大期限
int64 latestExpireTime = 12;//最近超期时间 int64 latestExpireTime = 12;//最近超期时间
int64 createTime = 13;//创建时间 int64 createTime = 13;//创建时间
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment