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