432
432
require .Equal (t , ops1 .Program , ops2 .Program )
433
433
}
434
434
435
- type expect struct {
435
+ type Expect struct {
436
436
l int
437
437
s string
438
438
}
@@ -450,7 +450,7 @@ func testMatch(t testing.TB, actual, expected string) {
450
450
}
451
451
}
452
452
453
- func testProg (t testing.TB , source string , ver uint64 , expected ... expect ) * OpStream {
453
+ func testProg (t testing.TB , source string , ver uint64 , expected ... Expect ) * OpStream {
454
454
t .Helper ()
455
455
program := strings .ReplaceAll (source , ";" , "\n " )
456
456
ops , err := AssembleStringWithVersion (program , ver )
@@ -521,7 +521,7 @@ func testLine(t *testing.T, line string, ver uint64, expected string) {
521
521
testProg (t , source , ver )
522
522
return
523
523
}
524
- testProg (t , source , ver , expect {2 , expected })
524
+ testProg (t , source , ver , Expect {2 , expected })
525
525
}
526
526
527
527
func TestAssembleTxna (t * testing.T ) {
@@ -571,7 +571,7 @@ int 1
571
571
+
572
572
// comment
573
573
`
574
- testProg (t , source , AssemblerMaxVersion , expect {3 , "+ arg 0 wanted type uint64 got []byte" })
574
+ testProg (t , source , AssemblerMaxVersion , Expect {3 , "+ arg 0 wanted type uint64 got []byte" })
575
575
}
576
576
577
577
// mutateProgVersion replaces version (first two symbols) in hex-encoded program
@@ -710,10 +710,10 @@ func TestAssembleBytes(t *testing.T) {
710
710
}
711
711
712
712
for _ , b := range bad {
713
- testProg (t , b [0 ], v , expect {1 , b [1 ]})
713
+ testProg (t , b [0 ], v , Expect {1 , b [1 ]})
714
714
// pushbytes should produce the same errors
715
715
if v >= 3 {
716
- testProg (t , strings .Replace (b [0 ], "byte" , "pushbytes" , 1 ), v , expect {1 , b [1 ]})
716
+ testProg (t , strings .Replace (b [0 ], "byte" , "pushbytes" , 1 ), v , Expect {1 , b [1 ]})
717
717
}
718
718
}
719
719
})
@@ -1182,7 +1182,7 @@ bnz wat
1182
1182
int 2`
1183
1183
for v := uint64 (1 ); v < backBranchEnabledVersion ; v ++ {
1184
1184
t .Run (fmt .Sprintf ("v=%d" , v ), func (t * testing.T ) {
1185
- testProg (t , source , v , expect {3 , "label \" wat\" is a back reference..." })
1185
+ testProg (t , source , v , Expect {3 , "label \" wat\" is a back reference..." })
1186
1186
})
1187
1187
}
1188
1188
for v := uint64 (backBranchEnabledVersion ); v <= AssemblerMaxVersion ; v ++ {
@@ -1236,7 +1236,7 @@ bnz nowhere
1236
1236
int 2`
1237
1237
for v := uint64 (1 ); v <= AssemblerMaxVersion ; v ++ {
1238
1238
t .Run (fmt .Sprintf ("v=%d" , v ), func (t * testing.T ) {
1239
- testProg (t , source , v , expect {2 , "reference to undefined label \" nowhere\" " })
1239
+ testProg (t , source , v , Expect {2 , "reference to undefined label \" nowhere\" " })
1240
1240
})
1241
1241
}
1242
1242
}
@@ -1269,8 +1269,8 @@ int 2`
1269
1269
for v := uint64 (1 ); v <= AssemblerMaxVersion ; v ++ {
1270
1270
t .Run (fmt .Sprintf ("v=%d" , v ), func (t * testing.T ) {
1271
1271
testProg (t , source , v ,
1272
- expect {2 , "reference to undefined label \" nowhere\" " },
1273
- expect {4 , "txn unknown field: \" XYZ\" " })
1272
+ Expect {2 , "reference to undefined label \" nowhere\" " },
1273
+ Expect {4 , "txn unknown field: \" XYZ\" " })
1274
1274
})
1275
1275
}
1276
1276
}
@@ -1467,15 +1467,15 @@ func TestConstantArgs(t *testing.T) {
1467
1467
partitiontest .PartitionTest (t )
1468
1468
t .Parallel ()
1469
1469
for v := uint64 (1 ); v <= AssemblerMaxVersion ; v ++ {
1470
- testProg (t , "int" , v , expect {1 , "int needs one argument" })
1471
- testProg (t , "intc" , v , expect {1 , "intc operation needs one argument" })
1472
- testProg (t , "byte" , v , expect {1 , "byte operation needs byte literal argument" })
1473
- testProg (t , "bytec" , v , expect {1 , "bytec operation needs one argument" })
1474
- testProg (t , "addr" , v , expect {1 , "addr operation needs one argument" })
1470
+ testProg (t , "int" , v , Expect {1 , "int needs one argument" })
1471
+ testProg (t , "intc" , v , Expect {1 , "intc operation needs one argument" })
1472
+ testProg (t , "byte" , v , Expect {1 , "byte operation needs byte literal argument" })
1473
+ testProg (t , "bytec" , v , Expect {1 , "bytec operation needs one argument" })
1474
+ testProg (t , "addr" , v , Expect {1 , "addr operation needs one argument" })
1475
1475
}
1476
1476
for v := uint64 (3 ); v <= AssemblerMaxVersion ; v ++ {
1477
- testProg (t , "pushint" , v , expect {1 , "pushint needs one argument" })
1478
- testProg (t , "pushbytes" , v , expect {1 , "pushbytes operation needs byte literal argument" })
1477
+ testProg (t , "pushint" , v , Expect {1 , "pushint needs one argument" })
1478
+ testProg (t , "pushbytes" , v , Expect {1 , "pushbytes operation needs byte literal argument" })
1479
1479
}
1480
1480
1481
1481
}
@@ -1612,7 +1612,7 @@ balance
1612
1612
int 1
1613
1613
==`
1614
1614
for v := uint64 (2 ); v < directRefEnabledVersion ; v ++ {
1615
- testProg (t , source , v , expect {2 , "balance arg 0 wanted type uint64 got []byte" })
1615
+ testProg (t , source , v , Expect {2 , "balance arg 0 wanted type uint64 got []byte" })
1616
1616
}
1617
1617
for v := uint64 (directRefEnabledVersion ); v <= AssemblerMaxVersion ; v ++ {
1618
1618
testProg (t , source , v )
@@ -1629,7 +1629,7 @@ min_balance
1629
1629
int 1
1630
1630
==`
1631
1631
for v := uint64 (3 ); v < directRefEnabledVersion ; v ++ {
1632
- testProg (t , source , v , expect {2 , "min_balance arg 0 wanted type uint64 got []byte" })
1632
+ testProg (t , source , v , Expect {2 , "min_balance arg 0 wanted type uint64 got []byte" })
1633
1633
}
1634
1634
for v := uint64 (directRefEnabledVersion ); v <= AssemblerMaxVersion ; v ++ {
1635
1635
testProg (t , source , v )
@@ -1643,16 +1643,16 @@ func TestAssembleAsset(t *testing.T) {
1643
1643
introduction := OpsByName [LogicVersion ]["asset_holding_get" ].Version
1644
1644
for v := introduction ; v <= AssemblerMaxVersion ; v ++ {
1645
1645
testProg (t , "asset_holding_get ABC 1" , v ,
1646
- expect {1 , "asset_holding_get ABC 1 expects 2 stack arguments..." })
1646
+ Expect {1 , "asset_holding_get ABC 1 expects 2 stack arguments..." })
1647
1647
testProg (t , "int 1; asset_holding_get ABC 1" , v ,
1648
- expect {2 , "asset_holding_get ABC 1 expects 2 stack arguments..." })
1648
+ Expect {2 , "asset_holding_get ABC 1 expects 2 stack arguments..." })
1649
1649
testProg (t , "int 1; int 1; asset_holding_get ABC 1" , v ,
1650
- expect {3 , "asset_holding_get expects one argument" })
1650
+ Expect {3 , "asset_holding_get expects one argument" })
1651
1651
testProg (t , "int 1; int 1; asset_holding_get ABC" , v ,
1652
- expect {3 , "asset_holding_get unknown field: \" ABC\" " })
1652
+ Expect {3 , "asset_holding_get unknown field: \" ABC\" " })
1653
1653
1654
1654
testProg (t , "byte 0x1234; asset_params_get ABC 1" , v ,
1655
- expect {2 , "asset_params_get ABC 1 arg 0 wanted type uint64..." })
1655
+ Expect {2 , "asset_params_get ABC 1 arg 0 wanted type uint64..." })
1656
1656
1657
1657
testLine (t , "asset_params_get ABC 1" , v , "asset_params_get expects one argument" )
1658
1658
testLine (t , "asset_params_get ABC" , v , "asset_params_get unknown field: \" ABC\" " )
@@ -2036,15 +2036,15 @@ func TestPragmas(t *testing.T) {
2036
2036
}
2037
2037
2038
2038
testProg (t , `#pragma version 100` , assemblerNoVersion ,
2039
- expect {1 , "unsupported version: 100" })
2039
+ Expect {1 , "unsupported version: 100" })
2040
2040
2041
- testProg (t , `int 1` , 99 , expect {0 , "Can not assemble version 99" })
2041
+ testProg (t , `int 1` , 99 , Expect {0 , "Can not assemble version 99" })
2042
2042
2043
2043
// Allow this on the off chance someone needs to reassemble an old logigsig
2044
2044
testProg (t , `#pragma version 0` , assemblerNoVersion )
2045
2045
2046
2046
testProg (t , `#pragma version a` , assemblerNoVersion ,
2047
- expect {1 , `bad #pragma version: "a"` })
2047
+ Expect {1 , `bad #pragma version: "a"` })
2048
2048
2049
2049
// will default to 1
2050
2050
ops := testProg (t , "int 3" , assemblerNoVersion )
@@ -2058,35 +2058,35 @@ func TestPragmas(t *testing.T) {
2058
2058
require .Equal (t , uint64 (2 ), ops .Version )
2059
2059
2060
2060
// changing version is not allowed
2061
- testProg (t , "#pragma version 1" , 2 , expect {1 , "version mismatch..." })
2062
- testProg (t , "#pragma version 2" , 1 , expect {1 , "version mismatch..." })
2061
+ testProg (t , "#pragma version 1" , 2 , Expect {1 , "version mismatch..." })
2062
+ testProg (t , "#pragma version 2" , 1 , Expect {1 , "version mismatch..." })
2063
2063
2064
2064
testProg (t , "#pragma version 2\n #pragma version 1" , assemblerNoVersion ,
2065
- expect {2 , "version mismatch..." })
2065
+ Expect {2 , "version mismatch..." })
2066
2066
2067
2067
// repetitive, but fine
2068
2068
ops = testProg (t , "#pragma version 2\n #pragma version 2" , assemblerNoVersion )
2069
2069
require .Equal (t , uint64 (2 ), ops .Version )
2070
2070
2071
2071
testProg (t , "\n int 1\n #pragma version 2" , assemblerNoVersion ,
2072
- expect {3 , "#pragma version is only allowed before instructions" })
2072
+ Expect {3 , "#pragma version is only allowed before instructions" })
2073
2073
2074
2074
testProg (t , "#pragma run-mode 2" , assemblerNoVersion ,
2075
- expect {1 , `unsupported pragma directive: "run-mode"` })
2075
+ Expect {1 , `unsupported pragma directive: "run-mode"` })
2076
2076
2077
2077
testProg (t , "#pragma versions" , assemblerNoVersion ,
2078
- expect {1 , `unsupported pragma directive: "versions"` })
2078
+ Expect {1 , `unsupported pragma directive: "versions"` })
2079
2079
2080
2080
ops = testProg (t , "#pragma version 1" , assemblerNoVersion )
2081
2081
require .Equal (t , uint64 (1 ), ops .Version )
2082
2082
2083
2083
ops = testProg (t , "\n #pragma version 1" , assemblerNoVersion )
2084
2084
require .Equal (t , uint64 (1 ), ops .Version )
2085
2085
2086
- testProg (t , "#pragma" , assemblerNoVersion , expect {1 , "empty pragma" })
2086
+ testProg (t , "#pragma" , assemblerNoVersion , Expect {1 , "empty pragma" })
2087
2087
2088
2088
testProg (t , "#pragma version" , assemblerNoVersion ,
2089
- expect {1 , "no version value" })
2089
+ Expect {1 , "no version value" })
2090
2090
2091
2091
ops = testProg (t , " #pragma version 5 " , assemblerNoVersion )
2092
2092
require .Equal (t , uint64 (5 ), ops .Version )
@@ -2105,8 +2105,8 @@ int 1
2105
2105
require .NoError (t , err )
2106
2106
require .Equal (t , ops1 .Program , ops .Program )
2107
2107
2108
- testProg (t , text , 0 , expect {1 , "version mismatch..." })
2109
- testProg (t , text , 2 , expect {1 , "version mismatch..." })
2108
+ testProg (t , text , 0 , Expect {1 , "version mismatch..." })
2109
+ testProg (t , text , 2 , Expect {1 , "version mismatch..." })
2110
2110
testProg (t , text , assemblerNoVersion )
2111
2111
2112
2112
ops , err = AssembleStringWithVersion (text , assemblerNoVersion )
@@ -2122,8 +2122,8 @@ int 1
2122
2122
require .NoError (t , err )
2123
2123
require .Equal (t , ops2 .Program , ops .Program )
2124
2124
2125
- testProg (t , text , 0 , expect {1 , "version mismatch..." })
2126
- testProg (t , text , 1 , expect {1 , "version mismatch..." })
2125
+ testProg (t , text , 0 , Expect {1 , "version mismatch..." })
2126
+ testProg (t , text , 1 , Expect {1 , "version mismatch..." })
2127
2127
2128
2128
ops , err = AssembleStringWithVersion (text , assemblerNoVersion )
2129
2129
require .NoError (t , err )
@@ -2143,7 +2143,7 @@ len
2143
2143
require .Equal (t , ops2 .Program , ops .Program )
2144
2144
2145
2145
testProg (t , "#pragma unk" , assemblerNoVersion ,
2146
- expect {1 , `unsupported pragma directive: "unk"` })
2146
+ Expect {1 , `unsupported pragma directive: "unk"` })
2147
2147
}
2148
2148
2149
2149
func TestAssembleConstants (t * testing.T ) {
@@ -2215,77 +2215,77 @@ func TestSwapTypeCheck(t *testing.T) {
2215
2215
partitiontest .PartitionTest (t )
2216
2216
t .Parallel ()
2217
2217
/* reconfirm that we detect this type error */
2218
- testProg (t , "int 1; byte 0x1234; +" , AssemblerMaxVersion , expect {3 , "+ arg 1..." })
2218
+ testProg (t , "int 1; byte 0x1234; +" , AssemblerMaxVersion , Expect {3 , "+ arg 1..." })
2219
2219
/* despite swap, we track types */
2220
- testProg (t , "int 1; byte 0x1234; swap; +" , AssemblerMaxVersion , expect {4 , "+ arg 0..." })
2221
- testProg (t , "byte 0x1234; int 1; swap; +" , AssemblerMaxVersion , expect {4 , "+ arg 1..." })
2220
+ testProg (t , "int 1; byte 0x1234; swap; +" , AssemblerMaxVersion , Expect {4 , "+ arg 0..." })
2221
+ testProg (t , "byte 0x1234; int 1; swap; +" , AssemblerMaxVersion , Expect {4 , "+ arg 1..." })
2222
2222
}
2223
2223
2224
2224
func TestDigAsm (t * testing.T ) {
2225
2225
partitiontest .PartitionTest (t )
2226
2226
t .Parallel ()
2227
- testProg (t , "int 1; dig; +" , AssemblerMaxVersion , expect {2 , "dig expects 1 immediate..." })
2228
- testProg (t , "int 1; dig junk; +" , AssemblerMaxVersion , expect {2 , "dig unable to parse..." })
2227
+ testProg (t , "int 1; dig; +" , AssemblerMaxVersion , Expect {2 , "dig expects 1 immediate..." })
2228
+ testProg (t , "int 1; dig junk; +" , AssemblerMaxVersion , Expect {2 , "dig unable to parse..." })
2229
2229
2230
2230
testProg (t , "int 1; byte 0x1234; int 2; dig 2; +" , AssemblerMaxVersion )
2231
2231
testProg (t , "byte 0x32; byte 0x1234; int 2; dig 2; +" , AssemblerMaxVersion ,
2232
- expect {5 , "+ arg 1..." })
2232
+ Expect {5 , "+ arg 1..." })
2233
2233
testProg (t , "byte 0x32; byte 0x1234; int 2; dig 3; +" , AssemblerMaxVersion ,
2234
- expect {4 , "dig 3 expects 4..." })
2234
+ Expect {4 , "dig 3 expects 4..." })
2235
2235
testProg (t , "int 1; byte 0x1234; int 2; dig 12; +" , AssemblerMaxVersion ,
2236
- expect {4 , "dig 12 expects 13..." })
2236
+ Expect {4 , "dig 12 expects 13..." })
2237
2237
2238
2238
// Confirm that digging something out does not ruin our knowledge about the types in the middle
2239
2239
testProg (t , "int 1; byte 0x1234; byte 0x1234; dig 2; dig 3; +; pop; +" , AssemblerMaxVersion ,
2240
- expect {8 , "+ arg 1..." })
2240
+ Expect {8 , "+ arg 1..." })
2241
2241
testProg (t , "int 3; pushbytes \" 123456\" ; int 1; dig 2; substring3" , AssemblerMaxVersion )
2242
2242
2243
2243
}
2244
2244
2245
2245
func TestEqualsTypeCheck (t * testing.T ) {
2246
2246
partitiontest .PartitionTest (t )
2247
2247
t .Parallel ()
2248
- testProg (t , "int 1; byte 0x1234; ==" , AssemblerMaxVersion , expect {3 , "== arg 0..." })
2249
- testProg (t , "int 1; byte 0x1234; !=" , AssemblerMaxVersion , expect {3 , "!= arg 0..." })
2250
- testProg (t , "byte 0x1234; int 1; ==" , AssemblerMaxVersion , expect {3 , "== arg 0..." })
2251
- testProg (t , "byte 0x1234; int 1; !=" , AssemblerMaxVersion , expect {3 , "!= arg 0..." })
2248
+ testProg (t , "int 1; byte 0x1234; ==" , AssemblerMaxVersion , Expect {3 , "== arg 0..." })
2249
+ testProg (t , "int 1; byte 0x1234; !=" , AssemblerMaxVersion , Expect {3 , "!= arg 0..." })
2250
+ testProg (t , "byte 0x1234; int 1; ==" , AssemblerMaxVersion , Expect {3 , "== arg 0..." })
2251
+ testProg (t , "byte 0x1234; int 1; !=" , AssemblerMaxVersion , Expect {3 , "!= arg 0..." })
2252
2252
}
2253
2253
2254
2254
func TestDupTypeCheck (t * testing.T ) {
2255
2255
partitiontest .PartitionTest (t )
2256
2256
t .Parallel ()
2257
- testProg (t , "byte 0x1234; dup; int 1; +" , AssemblerMaxVersion , expect {4 , "+ arg 0..." })
2257
+ testProg (t , "byte 0x1234; dup; int 1; +" , AssemblerMaxVersion , Expect {4 , "+ arg 0..." })
2258
2258
testProg (t , "byte 0x1234; int 1; dup; +" , AssemblerMaxVersion )
2259
- testProg (t , "byte 0x1234; int 1; dup2; +" , AssemblerMaxVersion , expect {4 , "+ arg 0..." })
2260
- testProg (t , "int 1; byte 0x1234; dup2; +" , AssemblerMaxVersion , expect {4 , "+ arg 1..." })
2259
+ testProg (t , "byte 0x1234; int 1; dup2; +" , AssemblerMaxVersion , Expect {4 , "+ arg 0..." })
2260
+ testProg (t , "int 1; byte 0x1234; dup2; +" , AssemblerMaxVersion , Expect {4 , "+ arg 1..." })
2261
2261
2262
- testProg (t , "byte 0x1234; int 1; dup; dig 1; len" , AssemblerMaxVersion , expect {5 , "len arg 0..." })
2263
- testProg (t , "int 1; byte 0x1234; dup; dig 1; !" , AssemblerMaxVersion , expect {5 , "! arg 0..." })
2262
+ testProg (t , "byte 0x1234; int 1; dup; dig 1; len" , AssemblerMaxVersion , Expect {5 , "len arg 0..." })
2263
+ testProg (t , "int 1; byte 0x1234; dup; dig 1; !" , AssemblerMaxVersion , Expect {5 , "! arg 0..." })
2264
2264
2265
- testProg (t , "byte 0x1234; int 1; dup2; dig 2; len" , AssemblerMaxVersion , expect {5 , "len arg 0..." })
2266
- testProg (t , "int 1; byte 0x1234; dup2; dig 2; !" , AssemblerMaxVersion , expect {5 , "! arg 0..." })
2265
+ testProg (t , "byte 0x1234; int 1; dup2; dig 2; len" , AssemblerMaxVersion , Expect {5 , "len arg 0..." })
2266
+ testProg (t , "int 1; byte 0x1234; dup2; dig 2; !" , AssemblerMaxVersion , Expect {5 , "! arg 0..." })
2267
2267
}
2268
2268
2269
2269
func TestSelectTypeCheck (t * testing.T ) {
2270
2270
partitiontest .PartitionTest (t )
2271
2271
t .Parallel ()
2272
- testProg (t , "int 1; int 2; int 3; select; len" , AssemblerMaxVersion , expect {5 , "len arg 0..." })
2273
- testProg (t , "byte 0x1234; byte 0x5678; int 3; select; !" , AssemblerMaxVersion , expect {5 , "! arg 0..." })
2272
+ testProg (t , "int 1; int 2; int 3; select; len" , AssemblerMaxVersion , Expect {5 , "len arg 0..." })
2273
+ testProg (t , "byte 0x1234; byte 0x5678; int 3; select; !" , AssemblerMaxVersion , Expect {5 , "! arg 0..." })
2274
2274
}
2275
2275
2276
2276
func TestSetBitTypeCheck (t * testing.T ) {
2277
2277
partitiontest .PartitionTest (t )
2278
2278
t .Parallel ()
2279
- testProg (t , "int 1; int 2; int 3; setbit; len" , AssemblerMaxVersion , expect {5 , "len arg 0..." })
2280
- testProg (t , "byte 0x1234; int 2; int 3; setbit; !" , AssemblerMaxVersion , expect {5 , "! arg 0..." })
2279
+ testProg (t , "int 1; int 2; int 3; setbit; len" , AssemblerMaxVersion , Expect {5 , "len arg 0..." })
2280
+ testProg (t , "byte 0x1234; int 2; int 3; setbit; !" , AssemblerMaxVersion , Expect {5 , "! arg 0..." })
2281
2281
}
2282
2282
2283
2283
func TestCoverAsm (t * testing.T ) {
2284
2284
partitiontest .PartitionTest (t )
2285
2285
t .Parallel ()
2286
2286
testProg (t , `int 4; byte "john"; int 5; cover 2; pop; +` , AssemblerMaxVersion )
2287
2287
testProg (t , `int 4; byte "ayush"; int 5; cover 1; pop; +` , AssemblerMaxVersion )
2288
- testProg (t , `int 4; byte "john"; int 5; cover 2; +` , AssemblerMaxVersion , expect {5 , "+ arg 1..." })
2288
+ testProg (t , `int 4; byte "john"; int 5; cover 2; +` , AssemblerMaxVersion , Expect {5 , "+ arg 1..." })
2289
2289
2290
2290
}
2291
2291
@@ -2295,15 +2295,15 @@ func TestUncoverAsm(t *testing.T) {
2295
2295
testProg (t , `int 4; byte "john"; int 5; uncover 2; +` , AssemblerMaxVersion )
2296
2296
testProg (t , `int 4; byte "ayush"; int 5; uncover 1; pop; +` , AssemblerMaxVersion )
2297
2297
testProg (t , `int 1; byte "jj"; byte "ayush"; byte "john"; int 5; uncover 4; +` , AssemblerMaxVersion )
2298
- testProg (t , `int 4; byte "ayush"; int 5; uncover 1; +` , AssemblerMaxVersion , expect {5 , "+ arg 1..." })
2298
+ testProg (t , `int 4; byte "ayush"; int 5; uncover 1; +` , AssemblerMaxVersion , Expect {5 , "+ arg 1..." })
2299
2299
}
2300
2300
2301
2301
func TestTxTypes (t * testing.T ) {
2302
- testProg (t , "itxn_begin; itxn_field Sender" , 5 , expect {2 , "itxn_field Sender expects 1 stack argument..." })
2303
- testProg (t , "itxn_begin; int 1; itxn_field Sender" , 5 , expect {3 , "...wanted type []byte got uint64" })
2302
+ testProg (t , "itxn_begin; itxn_field Sender" , 5 , Expect {2 , "itxn_field Sender expects 1 stack argument..." })
2303
+ testProg (t , "itxn_begin; int 1; itxn_field Sender" , 5 , Expect {3 , "...wanted type []byte got uint64" })
2304
2304
testProg (t , "itxn_begin; byte 0x56127823; itxn_field Sender" , 5 )
2305
2305
2306
- testProg (t , "itxn_begin; itxn_field Amount" , 5 , expect {2 , "itxn_field Amount expects 1 stack argument..." })
2307
- testProg (t , "itxn_begin; byte 0x87123376; itxn_field Amount" , 5 , expect {3 , "...wanted type uint64 got []byte" })
2306
+ testProg (t , "itxn_begin; itxn_field Amount" , 5 , Expect {2 , "itxn_field Amount expects 1 stack argument..." })
2307
+ testProg (t , "itxn_begin; byte 0x87123376; itxn_field Amount" , 5 , Expect {3 , "...wanted type uint64 got []byte" })
2308
2308
testProg (t , "itxn_begin; int 1; itxn_field Amount" , 5 )
2309
2309
}
0 commit comments