github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/examples/gno.land/r/demo/banktest/z_2_filetest.gno (about)

     1  package main
     2  
     3  import (
     4  	"std"
     5  
     6  	"gno.land/r/demo/banktest"
     7  )
     8  
     9  func main() {
    10  	banktestAddr := std.DerivePkgAddr("gno.land/r/demo/banktest")
    11  
    12  	// print main balance before.
    13  	mainaddr := std.DerivePkgAddr("main")
    14  	std.TestSetOrigCaller(mainaddr)
    15  
    16  	banker := std.GetBanker(std.BankerTypeReadonly)
    17  	mainbal := banker.GetCoins(mainaddr)
    18  	println("main before:", mainbal) // plus OrigSend equals 300.
    19  
    20  	// simulate a Deposit call.
    21  	std.TestSetOrigPkgAddr(banktestAddr)
    22  	std.TestIssueCoins(banktestAddr, std.Coins{{"ugnot", 100000000}})
    23  	std.TestSetOrigSend(std.Coins{{"ugnot", 100000000}}, nil)
    24  	res := banktest.Deposit("ugnot", 55000000)
    25  	println("Deposit():", res)
    26  
    27  	// print main balance after.
    28  	mainbal = banker.GetCoins(mainaddr)
    29  	println("main after:", mainbal) // now 255.
    30  
    31  	// simulate a Render().
    32  	res = banktest.Render("")
    33  	println(res)
    34  }
    35  
    36  // Output:
    37  // main before: 200000000ugnot
    38  // Deposit(): returned!
    39  // main after: 255000000ugnot
    40  // ## recent activity
    41  //
    42  //  * g17rgsdnfxzza0sdfsdma37sdwxagsz378833ca4 100000000ugnot sent, 55000000ugnot returned, at 2009-02-13 11:31pm UTC
    43  //
    44  // ## total deposits
    45  // 45000000ugnot