github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/examples/gno.land/r/demo/users/z_5_filetest.gno (about) 1 package main 2 3 // SEND: 2000000000ugnot 4 5 import ( 6 "std" 7 8 "gno.land/p/demo/testutils" 9 "gno.land/r/demo/users" 10 ) 11 12 const admin = std.Address("g1us8428u2a5satrlxzagqqa5m6vmuze025anjlj") 13 14 func main() { 15 caller := std.GetOrigCaller() // main 16 users.Register("", "gnouser", "my profile") 17 // as admin, grant invites to gnouser 18 std.TestSetOrigCaller(admin) 19 users.GrantInvites(caller.String() + ":1") 20 // switch back to caller 21 std.TestSetOrigCaller(caller) 22 // invite another addr 23 test1 := testutils.TestAddress("test1") 24 users.Invite(test1.String()) 25 // switch to test1 26 std.TestSetOrigCaller(test1) 27 std.TestSetOrigSend(std.Coins{{"dontcare", 1}}, nil) 28 users.Register(caller, "satoshi", "my other profile") 29 println(users.Render("")) 30 println("========================================") 31 println(users.Render("gnouser")) 32 println("========================================") 33 println(users.Render("satoshi")) 34 println("========================================") 35 println(users.Render("badname")) 36 } 37 38 // Output: 39 // * [gnouser](/r/demo/users:gnouser) 40 // * [satoshi](/r/demo/users:satoshi) 41 // 42 // ======================================== 43 // ## user gnouser 44 // 45 // * address = g1wymu47drhr0kuq2098m792lytgtj2nyx77yrsm 46 // * 9 invites 47 // 48 // my profile 49 // 50 // ======================================== 51 // ## user satoshi 52 // 53 // * address = g1w3jhxap3ta047h6lta047h6lta047h6l4mfnm7 54 // * 0 invites 55 // * invited by g1wymu47drhr0kuq2098m792lytgtj2nyx77yrsm 56 // 57 // my other profile 58 // 59 // ======================================== 60 // unknown username badname