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

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