z_1_filetest.gno
1.50 Kb ยท 45 lines
1// PKGPATH: gno.land/r/demo/main
2
3// SEND: 300ugnot
4
5package main
6
7import (
8 "chain"
9 "chain/banker"
10
11 "gno.land/r/demo/disperse"
12)
13
14func main() {
15 mainAddr := chain.PackageAddress("gno.land/r/demo/main")
16 disperseAddr := chain.PackageAddress("gno.land/r/demo/disperse")
17 beneficiary1 := address("g1dmt3sa5ucvecxuhf3j6ne5r0e3z4x7h6c03xc0")
18 beneficiary2 := address("g1akeqsvhucjt8gf5yupyzjxsjd29wv8fayng37c")
19
20 banker_ := banker.NewBanker(banker.BankerTypeRealmSend)
21 println("main balance before send:", banker_.GetCoins(mainAddr))
22 println("disperse balance before send:", banker_.GetCoins(disperseAddr))
23
24 banker_.SendCoins(mainAddr, disperseAddr, chain.Coins{{"ugnot", 200}})
25 println("main balance after send:", banker_.GetCoins(mainAddr))
26 println("disperse balance after send:", banker_.GetCoins(disperseAddr))
27
28 addressesStr := beneficiary1.String() + "," + beneficiary2.String()
29 disperse.DisperseUgnotString(cross, addressesStr, "150,50")
30
31 println("main balance after disperse:", banker_.GetCoins(mainAddr))
32 println("disperse balance after disperse:", banker_.GetCoins(disperseAddr))
33 println("beneficiary1 balance:", banker_.GetCoins(beneficiary1))
34 println("beneficiary2 balance:", banker_.GetCoins(beneficiary2))
35}
36
37// Output:
38// main balance before send: 300ugnot
39// disperse balance before send:
40// main balance after send: 100ugnot
41// disperse balance after send: 200ugnot
42// main balance after disperse: 100ugnot
43// disperse balance after disperse:
44// beneficiary1 balance: 150ugnot
45// beneficiary2 balance: 50ugnot