Search Apps Documentation Source Content File Folder Download Copy Actions Download

z_iterate_realm_members_00_filetest.gno

0.98 Kb · 36 lines
 1// PKGPATH: gno.land/r/gnoland/boards2/v1/filetests/z_iterate_realm_members_00_filetest
 2
 3package z_iterate_realm_members_00_filetest
 4
 5import (
 6	"testing"
 7
 8	"gno.land/p/gnoland/boards"
 9
10	boards2 "gno.land/r/gnoland/boards2/v1"
11)
12
13const (
14	owner address = "g1rp7cmetn27eqlpjpc4vuusf8kaj746tysc0qgh"
15	bid           = boards.ID(0) // Operate on realm DAO instead of individual boards
16)
17
18func init(cur realm) {
19	testing.SetRealm(testing.NewUserRealm(owner))
20	boards2.InviteMember(cross(cur), bid, "g1us8428u2a5satrlxzagqqa5m6vmuze025anjlj", boards2.RoleAdmin)
21}
22
23func main(cur realm) {
24	testing.SetRealm(testing.NewCodeRealm("gno.land/r/gnoland/boards2/test"))
25
26	// Calling as a Boards2 sub realm should succeed
27	perms := boards2.GetRealmPermissions(cross(cur))
28	perms.IterateUsers(0, perms.UsersCount(), func(u boards.User) bool {
29		println(u.Address, string(u.Roles[0]))
30		return false
31	})
32}
33
34// Output:
35// g1rp7cmetn27eqlpjpc4vuusf8kaj746tysc0qgh owner
36// g1us8428u2a5satrlxzagqqa5m6vmuze025anjlj admin