1package main
2
3// SEND: 200000000ugnot
4
5import (
6 "std"
7
8 "gno.land/p/demo/testutils"
9 "gno.land/r/demo/users"
10)
11
12const admin = std.Address("g1manfred47kzduec920z88wfr64ylksmdcedlf5")
13
14func main() {
15 caller := std.OriginCaller() // main
16 users.Register("", "gnouser", "my profile")
17 // as admin, grant invites to gnouser
18 std.TestSetOriginCaller(admin)
19 std.TestSetRealm(std.NewUserRealm(admin))
20 users.GrantInvites(caller.String() + ":1")
21 // switch back to caller
22 std.TestSetOriginCaller(caller)
23 std.TestSetRealm(std.NewUserRealm(caller))
24 // invite another addr
25 test1 := testutils.TestAddress("test1")
26 users.Invite(test1.String())
27 // switch to test1
28 std.TestSetOriginCaller(test1)
29 std.TestSetRealm(std.NewUserRealm(test1))
30 std.TestSetOriginSend(std.Coins{{"dontcare", 1}}, nil)
31 users.Register(caller, "satoshi", "my other profile")
32 println(users.Render(""))
33 println("========================================")
34 println(users.Render("?page=2"))
35 println("========================================")
36 println(users.Render("gnouser"))
37 println("========================================")
38 println(users.Render("satoshi"))
39 println("========================================")
40 println(users.Render("badname"))
41}
42
43// Output:
44// * [archives](/r/demo/users:archives)
45// * [demo](/r/demo/users:demo)
46// * [gno](/r/demo/users:gno)
47// * [gnoland](/r/demo/users:gnoland)
48// * [gnolang](/r/demo/users:gnolang)
49// * [gnouser](/r/demo/users:gnouser)
50// * [gov](/r/demo/users:gov)
51// * [nt](/r/demo/users:nt)
52// * [satoshi](/r/demo/users:satoshi)
53// * [sys](/r/demo/users:sys)
54// * [test1](/r/demo/users:test1)
55// * [x](/r/demo/users:x)
56//
57//
58// ========================================
59//
60//
61// ========================================
62// ## user gnouser
63//
64// * address = g1wymu47drhr0kuq2098m792lytgtj2nyx77yrsm
65// * 9 invites
66//
67// my profile
68//
69// ========================================
70// ## user satoshi
71//
72// * address = g1w3jhxap3ta047h6lta047h6lta047h6l4mfnm7
73// * 0 invites
74// * invited by g1wymu47drhr0kuq2098m792lytgtj2nyx77yrsm
75//
76// my other profile
77//
78// ========================================
79// unknown username badname
z_5_filetest.gno
2.11 Kb ยท 79 lines