@@ -949,13 +949,16 @@ function register_receiver() {
949
949
function test_send() {
950
950
set -e
951
951
local contract_addr=" $1 "
952
+ local skip_register_receiver=" $2 "
952
953
953
954
log_test_header
954
955
955
- local receiver_addr
956
- receiver_addr=" $( create_receiver_contract) "
957
- # receiver_addr='secret17k8qt6aqd7eee3fawmtvy4vu6teqx8d7mdm49x'
958
- register_receiver " $receiver_addr " " $contract_addr "
956
+ local receiver_addr=" $( create_receiver_contract) "
957
+ local receiver_hash=" $( secretcli q compute contract-hash $receiver_addr | sed ' s/^0x//' ) "
958
+
959
+ if [ " $skip_register_receiver " != " true" ]; then
960
+ register_receiver " $receiver_addr " " $contract_addr "
961
+ fi
959
962
960
963
local tx_hash
961
964
@@ -998,8 +1001,15 @@ function test_send() {
998
1001
log ' sending funds from "a" to the Receiver, with message to the Receiver'
999
1002
local receiver_msg=' {"increment":{}}'
1000
1003
receiver_msg=" $( base64 <<< " $receiver_msg" ) "
1001
- local send_message=' {"send":{"recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1004
+
1005
+ if [ " $skip_register_receiver " = " true" ]; then
1006
+ send_message=' {"send":{"recipient":"' " $receiver_addr " ' ","recipient_code_hash":"' " $receiver_hash " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1007
+ else
1008
+ send_message=' {"send":{"recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1009
+ fi
1010
+
1002
1011
local send_response
1012
+
1003
1013
tx_hash=" $( compute_execute " $contract_addr " " $send_message " ${FROM[a]} --gas 300000) "
1004
1014
send_response=" $( wait_for_compute_tx " $tx_hash " ' waiting for send from "a" to the Receiver to process' ) "
1005
1015
assert_eq \
@@ -1040,7 +1050,13 @@ function test_send() {
1040
1050
log ' sending funds from "a" to the Receiver, with a "Fail" message to the Receiver'
1041
1051
receiver_msg=' {"fail":{}}'
1042
1052
receiver_msg=" $( base64 <<< " $receiver_msg" ) "
1043
- send_message=' {"send":{"recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1053
+
1054
+ if [ " $skip_register_receiver " = " true" ]; then
1055
+ send_message=' {"send":{"recipient":"' " $receiver_addr " ' ","recipient_code_hash":"' " $receiver_hash " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1056
+ else
1057
+ send_message=' {"send":{"recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1058
+ fi
1059
+
1044
1060
tx_hash=" $( compute_execute " $contract_addr " " $send_message " ${FROM[a]} --gas 300000) "
1045
1061
# Notice the `!` before the command - it is EXPECTED to fail.
1046
1062
! send_response=" $( wait_for_compute_tx " $tx_hash " ' waiting for send from "a" to the Receiver to process' ) "
@@ -1265,13 +1281,16 @@ function test_transfer_from() {
1265
1281
function test_send_from() {
1266
1282
set -e
1267
1283
local contract_addr=" $1 "
1284
+ local skip_register_receiver=" $2 "
1268
1285
1269
1286
log_test_header
1270
1287
1271
- local receiver_addr
1272
- receiver_addr=" $( create_receiver_contract) "
1273
- # receiver_addr='secret17k8qt6aqd7eee3fawmtvy4vu6teqx8d7mdm49x'
1274
- register_receiver " $receiver_addr " " $contract_addr "
1288
+ local receiver_addr=" $( create_receiver_contract) "
1289
+ local receiver_hash=" $( secretcli q compute contract-hash $receiver_addr | sed ' s/^0x//' ) "
1290
+
1291
+ if [ " $skip_register_receiver " != " true" ]; then
1292
+ register_receiver " $receiver_addr " " $contract_addr "
1293
+ fi
1275
1294
1276
1295
local tx_hash
1277
1296
@@ -1322,7 +1341,13 @@ function test_send_from() {
1322
1341
log ' sending funds from "a", using "b", to the Receiver, with message to the Receiver'
1323
1342
local receiver_msg=' {"increment":{}}'
1324
1343
receiver_msg=" $( base64 <<< " $receiver_msg" ) "
1325
- local send_message=' {"send_from":{"owner":"' " ${ADDRESS[a]} " ' ","recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1344
+
1345
+ if [ " $skip_register_receiver " = " true" ]; then
1346
+ send_message=' {"send_from":{"owner":"' " ${ADDRESS[a]} " ' ","recipient":"' " $receiver_addr " ' ","recipient_code_hash":"' " $receiver_hash " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1347
+ else
1348
+ send_message=' {"send_from":{"owner":"' " ${ADDRESS[a]} " ' ","recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1349
+ fi
1350
+
1326
1351
local send_response
1327
1352
tx_hash=" $( compute_execute " $contract_addr " " $send_message " ${FROM[b]} --gas 302000) "
1328
1353
send_response=" $( wait_for_compute_tx " $tx_hash " ' waiting for send from "a" to the Receiver to process' ) "
@@ -1377,7 +1402,13 @@ function test_send_from() {
1377
1402
log ' sending funds from "a", using "b", to the Receiver, with a "Fail" message to the Receiver'
1378
1403
receiver_msg=' {"fail":{}}'
1379
1404
receiver_msg=" $( base64 <<< " $receiver_msg" ) "
1380
- send_message=' {"send_from":{"owner":"' " ${ADDRESS[a]} " ' ", "recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1405
+
1406
+ if [ " $skip_register_receiver " = " true" ]; then
1407
+ send_message=' {"send_from":{"owner":"' " ${ADDRESS[a]} " ' ","recipient":"' " $receiver_addr " ' ","recipient_code_hash":"' " $receiver_hash " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1408
+ else
1409
+ send_message=' {"send_from":{"owner":"' " ${ADDRESS[a]} " ' ","recipient":"' " $receiver_addr " ' ","amount":"400000","msg":"' $receiver_msg ' "}}'
1410
+ fi
1411
+
1381
1412
tx_hash=" $( compute_execute " $contract_addr " " $send_message " ${FROM[b]} --gas 300000) "
1382
1413
# Notice the `!` before the command - it is EXPECTED to fail.
1383
1414
! send_response=" $( wait_for_compute_tx " $tx_hash " ' waiting for send from "a" to the Receiver to process' ) "
@@ -1421,9 +1452,11 @@ function main() {
1421
1452
test_deposit " $contract_addr "
1422
1453
test_transfer " $contract_addr "
1423
1454
test_send " $contract_addr "
1455
+ test_send " $contract_addr " true
1424
1456
test_burn " $contract_addr "
1425
1457
test_transfer_from " $contract_addr "
1426
1458
test_send_from " $contract_addr "
1459
+ test_send_from " $contract_addr " true
1427
1460
1428
1461
log ' Tests completed successfully'
1429
1462
0 commit comments