diff --git a/framework/scenario/tests/scenarios-self/multi-transfer-egld.scen.json b/framework/scenario/tests/scenarios-self/multi-transfer-egld.scen.json new file mode 100644 index 0000000000..32b5ee3aa1 --- /dev/null +++ b/framework/scenario/tests/scenarios-self/multi-transfer-egld.scen.json @@ -0,0 +1,100 @@ +{ + "comment": "ESDT multi-transfer with EGLD, no SC", + "steps": [ + { + "step": "setState", + "accounts": { + "address:A": { + "nonce": "0", + "balance": "1000000000", + "esdt": { + "str:TOK-123456": "150", + "str:OTHERTOK-123456": "500", + "str:NFT-123456": { + "instances": [ + { + "nonce": "5", + "balance": "20" + } + ] + } + } + }, + "address:B": { + "nonce": "0", + "balance": "0" + } + } + }, + { + "step": "transfer", + "id": "multi-transfer", + "tx": { + "from": "address:A", + "to": "address:B", + "esdtValue": [ + { + "tokenIdentifier": "str:TOK-123456", + "value": "100" + }, + { + "tokenIdentifier": "str:OTHERTOK-123456", + "value": "400" + }, + { + "tokenIdentifier": "str:EGLD-000000", + "value": "500" + }, + { + "tokenIdentifier": "str:NFT-123456", + "nonce": "5", + "value": "10" + } + ], + "gasLimit": "0x100000000" + } + }, + { + "step": "checkState", + "comment": "check after tx 1", + "accounts": { + "address:A": { + "nonce": "1", + "balance": "999999500", + "esdt": { + "str:TOK-123456": "50", + "str:OTHERTOK-123456": "100", + "str:NFT-123456": { + "instances": [ + { + "nonce": "5", + "balance": "10" + } + ] + } + }, + "storage": {}, + "code": "" + }, + "address:B": { + "nonce": "0", + "balance": "500", + "esdt": { + "str:TOK-123456": "100", + "str:OTHERTOK-123456": "400", + "str:NFT-123456": { + "instances": [ + { + "nonce": "5", + "balance": "10" + } + ] + } + }, + "storage": {}, + "code": "" + } + } + } + ] +} \ No newline at end of file diff --git a/framework/scenario/tests/scenarios-self/multi-transfer-esdt.scen.json b/framework/scenario/tests/scenarios-self/multi-transfer-esdt.scen.json index 9aad78288d..09ebf399dd 100644 --- a/framework/scenario/tests/scenarios-self/multi-transfer-esdt.scen.json +++ b/framework/scenario/tests/scenarios-self/multi-transfer-esdt.scen.json @@ -41,10 +41,6 @@ "tokenIdentifier": "str:OTHERTOK-123456", "value": "400" }, - { - "tokenIdentifier": "str:EGLD-000000", - "value": "500" - }, { "tokenIdentifier": "str:NFT-123456", "nonce": "5", @@ -60,7 +56,7 @@ "accounts": { "address:A": { "nonce": "1", - "balance": "999999500", + "balance": "1000000000", "esdt": { "str:TOK-123456": "50", "str:OTHERTOK-123456": "100", @@ -78,7 +74,6 @@ }, "address:B": { "nonce": "0", - "balance": "500", "esdt": { "str:TOK-123456": "100", "str:OTHERTOK-123456": "400", @@ -97,4 +92,4 @@ } } ] -} \ No newline at end of file +} diff --git a/framework/scenario/tests/scenarios_self_test.rs b/framework/scenario/tests/scenarios_self_test.rs index bcdbd17993..94f63a0539 100644 --- a/framework/scenario/tests/scenarios_self_test.rs +++ b/framework/scenario/tests/scenarios_self_test.rs @@ -162,6 +162,11 @@ fn esdt_zero_balance_check_err_rs() { #[test] #[ignore = "TODO: not yet implemented in Rust VM"] +fn multi_transfer_egld_rs() { + world().run("tests/scenarios-self/multi-transfer-esdt.scen.json"); +} + +#[test] fn multi_transfer_esdt_rs() { world().run("tests/scenarios-self/multi-transfer-esdt.scen.json"); }