diff options
Diffstat (limited to 'cmd/tealdbg/local_test.go')
-rw-r--r-- | cmd/tealdbg/local_test.go | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/cmd/tealdbg/local_test.go b/cmd/tealdbg/local_test.go index ad7faa605..d78c402e8 100644 --- a/cmd/tealdbg/local_test.go +++ b/cmd/tealdbg/local_test.go @@ -1350,3 +1350,103 @@ byte 0x5ce9454909639d2d17a3f753ce7d93fa0b9ab12e // addr }) } } + +func TestGroupTxnIdx(t *testing.T) { + + partitiontest.PartitionTest(t) + a := require.New(t) + + ddrBlob := `{ + "accounts": [ + { + "address": "FPVVJ7N42QRVP2OWBGZ3XPTQAZFQNBYHJGZ2CJFOATAQNWFA5NWB4MPWBQ", + "amount": 3999999999497000, + "amount-without-pending-rewards": 3999999999497000, + "created-apps": [ + { + "id": 1, + "params": { + "approval-program": "BSABATEQIhJAABExEIEGEkAAByJAAAEAIkMiQ4EAQw==", + "clear-state-program": "BYEBQw==", + "creator": "FPVVJ7N42QRVP2OWBGZ3XPTQAZFQNBYHJGZ2CJFOATAQNWFA5NWB4MPWBQ" + } + } + ], + "pending-rewards": 0, + "rewards": 0, + "round": 2, + "status": "Online" + }, + { + "address": "WCS6TVPJRBSARHLN2326LRU5BYVJZUKI2VJ53CAWKYYHDE455ZGKANWMGM", + "amount": 500000, + "amount-without-pending-rewards": 500000, + "pending-rewards": 0, + "rewards": 0, + "round": 2, + "status": "Offline" + } + ], + "apps": [ + { + "id": 1, + "params": { + "approval-program": "BSABATEQIhJAABExEIEGEkAAByJAAAEAIkMiQ4EAQw==", + "clear-state-program": "BYEBQw==", + "creator": "FPVVJ7N42QRVP2OWBGZ3XPTQAZFQNBYHJGZ2CJFOATAQNWFA5NWB4MPWBQ" + } + } + ], + "latest-timestamp": 1634765269, + "protocol-version": "future", + "round": 2, + "sources": null, + "txns": [ + { + "sig": "8Z/ECart3vFBSKp5sFuNRN4coliea4TE+xttZNn9E15DJ8GZ++kgtZKhG4Tiopv7r61Lqh8VBuyuTf9AC3uQBQ==", + "txn": { + "amt": 5000, + "fee": 1000, + "fv": 3, + "gen": "sandnet-v1", + "gh": "pjM5GFR9MpNkWIibcfqtu/a2OIZTBy/mSQc++sF1r0Q=", + "grp": "2ca4sSb5aGab0k065qIT3J3AcB5YWYezrRh6bLB0ve8=", + "lv": 1003, + "note": "V+GSPgDmLQo=", + "rcv": "WCS6TVPJRBSARHLN2326LRU5BYVJZUKI2VJ53CAWKYYHDE455ZGKANWMGM", + "snd": "FPVVJ7N42QRVP2OWBGZ3XPTQAZFQNBYHJGZ2CJFOATAQNWFA5NWB4MPWBQ", + "type": "pay" + } + }, + { + "sig": "4/gj+6rllN/Uc55kAJ0BOKTzoUJKJ7gExE3vp7cr5vC9XVStx0QNZq1DFXLhpTZnTQAl3zOrGzIxfS5HOpSyCg==", + "txn": { + "apid": 1, + "fee": 1000, + "fv": 3, + "gh": "pjM5GFR9MpNkWIibcfqtu/a2OIZTBy/mSQc++sF1r0Q=", + "grp": "2ca4sSb5aGab0k065qIT3J3AcB5YWYezrRh6bLB0ve8=", + "lv": 1003, + "note": "+fl8jkXqyFc=", + "snd": "FPVVJ7N42QRVP2OWBGZ3XPTQAZFQNBYHJGZ2CJFOATAQNWFA5NWB4MPWBQ", + "type": "appl" + } + } + ] + }` + + ds := DebugParams{ + Proto: string(protocol.ConsensusCurrentVersion), + DdrBlob: []byte(ddrBlob), + GroupIndex: 0, + RunMode: "application", + } + + local := MakeLocalRunner(nil) + err := local.Setup(&ds) + a.NoError(err) + + pass, err := local.Run() + a.NoError(err) + a.True(pass) +} |