z_3_filetest.gno
1.36 Kb ยท 43 lines
1// PKGPATH: gno.land/r/demo/main
2
3package main
4
5import (
6 "std"
7 "testing"
8
9 "gno.land/r/demo/disperse"
10 tokens "gno.land/r/demo/grc20factory"
11)
12
13func main() {
14 disperseAddr := std.DerivePkgAddr("gno.land/r/demo/disperse")
15 mainAddr := std.DerivePkgAddr("gno.land/r/demo/main")
16 beneficiary1 := std.Address("g1dmt3sa5ucvecxuhf3j6ne5r0e3z4x7h6c03xc0")
17 beneficiary2 := std.Address("g1akeqsvhucjt8gf5yupyzjxsjd29wv8fayng37c")
18
19 testing.SetOriginCaller(mainAddr)
20
21 tokens.New(cross, "test", "TEST", 4, 0, 0)
22 tokens.Mint(cross, "TEST", mainAddr, 200)
23 println("main balance before:", tokens.BalanceOf("TEST", mainAddr))
24
25 tokens.Approve(cross, "TEST", disperseAddr, 200)
26 println("disperse allowance before:", tokens.Allowance("TEST", mainAddr, disperseAddr))
27
28 addressesStr := beneficiary1.String() + "," + beneficiary2.String()
29 disperse.DisperseGRC20String(cross, addressesStr, "150TEST,50TEST")
30
31 println("main balance after:", tokens.BalanceOf("TEST", mainAddr))
32 println("disperse allowance after:", tokens.Allowance("TEST", mainAddr, disperseAddr))
33 println("beneficiary1 balance:", tokens.BalanceOf("TEST", beneficiary1))
34 println("beneficiary2 balance:", tokens.BalanceOf("TEST", beneficiary2))
35}
36
37// Output:
38// main balance before: 200
39// disperse allowance before: 200
40// main balance after: 0
41// disperse allowance after: 0
42// beneficiary1 balance: 150
43// beneficiary2 balance: 50