Commit e5fab515 authored by harrylee2015's avatar harrylee2015 Committed by vipwzw

ajust game rcp test for para

parent 85ae730f
...@@ -8,7 +8,7 @@ PARA_HTTP="" ...@@ -8,7 +8,7 @@ PARA_HTTP=""
CASE_ERR="" CASE_ERR=""
GAME_ID="" GAME_ID=""
PASSWD="ABCD" PASSWD="ABCD"
HASH_VALUE=$(echo -n "ABCD1" | sha256sum | awk '{print $1}') HASH_VALUE=$(echo -n "ABCD1" | sha256sum |awk '{print $1}')
create_txHash="" create_txHash=""
match_txHash="" match_txHash=""
close_txHash="" close_txHash=""
...@@ -22,6 +22,8 @@ RED='\033[1;31m' ...@@ -22,6 +22,8 @@ RED='\033[1;31m'
GRE='\033[1;32m' GRE='\033[1;32m'
NOC='\033[0m' NOC='\033[0m'
function echo_rst() { function echo_rst() {
if [ "$2" -eq 0 ]; then if [ "$2" -eq 0 ]; then
echo -e "${GRE}$1 ok${NOC}" echo -e "${GRE}$1 ok${NOC}"
...@@ -46,9 +48,8 @@ function chain33_GetExecAddr() { ...@@ -46,9 +48,8 @@ function chain33_GetExecAddr() {
function CreateGameTx() { function CreateGameTx() {
local amount=$1 local amount=$1
local hash_value=$2 local hash_value=$2
local exector=$3 local addr=$3
local addr=$4 local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${EXECTOR}"'", "actionName":"createGame", "payload":{"amount": '"${amount}"',"hashType":"sha256","hashValue":"'"${hash_value}"'"}}]'
local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${exector}"'", "actionName":"createGame", "payload":{"amount": '"${amount}"',"hashType":"sha256","hashValue":"'"${hash_value}"'"}}]'
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd "{$req}" "${MAIN_HTTP}")
echo "#response: $resp" echo "#response: $resp"
...@@ -68,8 +69,7 @@ function CreateGameTx() { ...@@ -68,8 +69,7 @@ function CreateGameTx() {
function MatchGameTx() { function MatchGameTx() {
local gameId=$1 local gameId=$1
local exector=$2 local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${EXECTOR}"'", "actionName":"matchGame", "payload":{"gameId": "'"${gameId}"'","guess":2}}]'
local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${exector}"'", "actionName":"matchGame", "payload":{"gameId": "'"${gameId}"'","guess":2}}]'
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd "{$req}" "${MAIN_HTTP}")
echo "#response: $resp" echo "#response: $resp"
...@@ -89,8 +89,7 @@ function MatchGameTx() { ...@@ -89,8 +89,7 @@ function MatchGameTx() {
function CloseGameTx() { function CloseGameTx() {
local gameId=$1 local gameId=$1
local secret=$2 local secret=$2
local exector=$3 local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${EXECTOR}"'", "actionName":"closeGame", "payload":{"gameId": "'"${gameId}"'","secret":"'"${secret}"'","result":1}}]'
local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${exector}"'", "actionName":"closeGame", "payload":{"gameId": "'"${gameId}"'","secret":"'"${secret}"'","result":1}}]'
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd "{$req}" "${MAIN_HTTP}")
echo "#response: $resp" echo "#response: $resp"
...@@ -109,8 +108,7 @@ function CloseGameTx() { ...@@ -109,8 +108,7 @@ function CloseGameTx() {
function CancleGameTx() { function CancleGameTx() {
local gameId=$1 local gameId=$1
local exector=$2 local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${EXECTOR}"'", "actionName":"cancelGame", "payload":{"gameId": "'"${gameId}"'"}}]'
local req='"method":"Chain33.CreateTransaction","params":[{"execer":"'"${exector}"'", "actionName":"cancelGame", "payload":{"gameId": "'"${gameId}"'"}}]'
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd "{$req}" "${MAIN_HTTP}")
echo "#response: $resp" echo "#response: $resp"
...@@ -128,20 +126,20 @@ function CancleGameTx() { ...@@ -128,20 +126,20 @@ function CancleGameTx() {
} }
function QueryGameByStatus() { function QueryGameByStatus() {
local exector=$1 local status=$1
local req='"method":"Chain33.Query","params":[{"execer":"'"${exector}"'","funcName":"QueryGameListByStatusAndAddr","payload":{"status":1,"address":""}}]' local req='"method":"Chain33.Query","params":[{"execer":"'"${EXECTOR}"'","funcName":"QueryGameListByStatusAndAddr","payload":{"status":"${status}","address":""}}]'
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd "{$req}" "${MAIN_HTTP}")
echo "#response: $resp" echo "#response: $resp"
GAMES=$(echo "${resp}" | jq -r ".result.games") GAMES=$(echo "${resp}" | jq -r ".result.games")
echo "${GAMES}"
echo_rst "$FUNCNAME" "$?" echo_rst "$FUNCNAME" "$?"
} }
function QueryGameByGameId() { function QueryGameByGameId() {
local gameId=$1 local gameId=$1
local exector=$2 local status=$2
local status=$3 local req='"method":"Chain33.Query","params":[{"execer":"'"${EXECTOR}"'","funcName":"QueryGameById","payload":{"gameId":"'"${gameId}"'"}}]'
local req='"method":"Chain33.Query","params":[{"execer":"'"${exector}"'","funcName":"QueryGameById","payload":{"gameId":"'"${gameId}"'"}}]'
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd "{$req}" "${MAIN_HTTP}")
echo "#response: $resp" echo "#response: $resp"
...@@ -161,25 +159,22 @@ function chain33_ImportPrivkey() { ...@@ -161,25 +159,22 @@ function chain33_ImportPrivkey() {
echo "#request: $req" echo "#request: $req"
resp=$(curl -ksd "{$req}" "$1") resp=$(curl -ksd "{$req}" "$1")
echo "#response: $resp" echo "#response: $resp"
ok=$(jq '(.error|not) and (.result.label=="gameB") and (.result.acc.addr == "'"$acc"'")' <<<"$resp") # ok=$(jq '(.error|not) and (.result.label=="gameB") and (.result.acc.addr == "'"$acc"'")' <<<"$resp")
[ "$ok" == true ] # [ "$ok" == true ]
# echo_rst "$FUNCNAME" "$?" # echo_rst "$FUNCNAME" "$?"
} }
function Chain33_SendToAddress() { function Chain33_SendToAddress() {
local from="$1" from=$1
local to="$2" to=$2
local amount=$3 amount=$3
local req='"method":"Chain33.SendToAddress", "params":[{"from":"'"$from"'","to":"'"$to"'", "amount":'"$amount"', "note":"test\n"}]' http=$4
# echo "#request: $req" note="test"
resp=$(curl -ksd "{$req}" "${MAIN_HTTP}") resp=$(curl -ksd '{"jsonrpc":"2.0","id":2,"method":"Chain33.SendToAddress","params":[{"from":"'"$from"'","to":"'"$to"'","amount":'"$amount"',"note":"'"$note"'"}]}' -H 'content-type:text/plain;' "${http}")
# echo "#response: $resp" ok=$(jq '(.error|not)' <<<"$resp")
ok=$(jq '(.error|not) and (.result.hash|length==66)' <<<"$resp")
[ "$ok" == true ] [ "$ok" == true ]
echo_rst "$FUNCNAME" "$?" rst=$?
hash=$(jq '(.result.hash)' <<<"$resp") echo_rst "$FUNCNAME" "$rst"
echo "hash=$hash"
# query_tx "$hash"
} }
function chain33_unlock() { function chain33_unlock() {
...@@ -208,7 +203,7 @@ function block_wait() { ...@@ -208,7 +203,7 @@ function block_wait() {
function signRawTx() { function signRawTx() {
unsignedTx=$1 unsignedTx=$1
addr=$2 addr=$2
signedTx=$(curl -s --data-binary '{"jsonrpc":"2.0","id":2,"method":"Chain33.SignRawTx","params":[{"addr":"'${addr}'","txHex":"'${unsignedTx}'","expire":"120s","fee":10000000}]}' -H 'content-type:text/plain;' ${MAIN_HTTP} | jq -r ".result") signedTx=$(curl -s --data-binary '{"jsonrpc":"2.0","id":2,"method":"Chain33.SignRawTx","params":[{"addr":"'${addr}'","txHex":"'${unsignedTx}'","expire":"120s","fee":1000000}]}' -H 'content-type:text/plain;' ${MAIN_HTTP} | jq -r ".result")
if [ "$signedTx" == "null" ]; then if [ "$signedTx" == "null" ]; then
return 1 return 1
else else
...@@ -253,6 +248,7 @@ function query_tx() { ...@@ -253,6 +248,7 @@ function query_tx() {
done done
} }
function init() { function init() {
ispara=$(echo '"'"${MAIN_HTTP}"'"' | jq '.|contains("8901")') ispara=$(echo '"'"${MAIN_HTTP}"'"' | jq '.|contains("8901")')
echo "ipara=$ispara" echo "ipara=$ispara"
...@@ -262,6 +258,13 @@ function init() { ...@@ -262,6 +258,13 @@ function init() {
local game_addr="" local game_addr=""
if [ "$ispara" == "true" ]; then if [ "$ispara" == "true" ]; then
#主链中相应账户需要转帐
M_HTTP=${MAIN_HTTP//8901/8801}
Chain33_SendToAddress "${ACCOUNT_A}" "${ACCOUNT_B}" 20000000000 "${M_HTTP}"
block_wait 1
EXECTOR="user.p.para.game" EXECTOR="user.p.para.game"
game_addr=$(curl -ksd '{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.game"}]}' ${MAIN_HTTP} | jq -r ".result") game_addr=$(curl -ksd '{"method":"Chain33.ConvertExectoAddr","params":[{"execname":"user.p.para.game"}]}' ${MAIN_HTTP} | jq -r ".result")
else else
...@@ -270,34 +273,42 @@ function init() { ...@@ -270,34 +273,42 @@ function init() {
fi fi
echo "gameAddr=${game_addr}" echo "gameAddr=${game_addr}"
Chain33_SendToAddress "${ACCOUNT_B}" "$game_addr" 5000000000 Chain33_SendToAddress "${ACCOUNT_B}" "$game_addr" 5000000000 "${MAIN_HTTP}"
Chain33_SendToAddress "${ACCOUNT_A}" "$game_addr" 5000000000 Chain33_SendToAddress "${ACCOUNT_A}" "$game_addr" 5000000000 "${MAIN_HTTP}"
block_wait 1 block_wait 1
} }
function run_test() { function run_test() {
local ip=$1 local ip=$1
CreateGameTx 1000000000 "${HASH_VALUE}" "${EXECTOR}" CreateGameTx 1000000000 "${HASH_VALUE}"
QueryGameByGameId "${GAME_ID}" 1
QueryGameByGameId "${GAME_ID}" "${EXECTOR}" 1 QueryGameByStatus 1
MatchGameTx "${GAME_ID}" "${EXECTOR}" MatchGameTx "${GAME_ID}"
QueryGameByGameId "${GAME_ID}" "${EXECTOR}" 2 QueryGameByGameId "${GAME_ID}" 2
CloseGameTx "${GAME_ID}" 1 "${EXECTOR}" QueryGameByStatus 2
QueryGameByGameId "${GAME_ID}" "${EXECTOR}" 4 CloseGameTx "${GAME_ID}" 1
CreateGameTx 500000000 "${HASH_VALUE}" "${EXECTOR}" QueryGameByGameId "${GAME_ID}" 4
QueryGameByGameId "${GAME_ID}" "${EXECTOR}" 1 QueryGameByStatus 4
CancleGameTx "${GAME_ID}" "${EXECTOR}" CreateGameTx 500000000 "${HASH_VALUE}"
QueryGameByGameId "${GAME_ID}" "${EXECTOR}" 3 QueryGameByGameId "${GAME_ID}" 1
CancleGameTx "${GAME_ID}"
QueryGameByGameId "${GAME_ID}" 3
QueryGameByStatus 3
} }
function main() { function main() {
...@@ -306,10 +317,11 @@ function main() { ...@@ -306,10 +317,11 @@ function main() {
echo "=========== # game rpc test =============" echo "=========== # game rpc test ============="
echo "main_ip=$MAIN_HTTP" echo "main_ip=$MAIN_HTTP"
Chain33_SendToAddress "${ACCOUNT_A}" "${ACCOUNT_B}" 20000000000 Chain33_SendToAddress "${ACCOUNT_A}" "${ACCOUNT_B}" 20000000000 "${MAIN_HTTP}"
block_wait 1 block_wait 1
init init
run_test "$MAIN_HTTP" run_test "$MAIN_HTTP"
......
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