Search Apps Documentation Source Content File Folder Download Copy Actions Download

z_rename_board_06_filetest.gno

1.39 Kb · 49 lines
 1// PKGPATH: gno.land/r/gnoland/boards2/v1/filetests/z_rename_board_06_filetest
 2
 3package z_rename_board_06_filetest
 4
 5// SEND: 1000000ugnot
 6
 7import (
 8	"testing"
 9
10	"gno.land/p/gnoland/boards"
11
12	boards2 "gno.land/r/gnoland/boards2/v1"
13	uinit "gno.land/r/sys/users/init"
14)
15
16const (
17	owner   address = "g1rp7cmetn27eqlpjpc4vuusf8kaj746tysc0qgh"
18	member  address = "g1us8428u2a5satrlxzagqqa5m6vmuze025anjlj" // @test2
19	member2 address = "g1vh7krmmzfua5xjmkatvmx09z37w34lsvd2mxa5"
20	name            = "foo123"
21	newName         = "barbaz123"
22)
23
24var bid boards.ID // Operate on board DAO
25
26func init(cur realm) {
27	testing.SetRealm(testing.NewUserRealm(owner))
28	bid = boards2.CreateBoard(cross(cur), name, false, false)
29	boards2.InviteMember(cross(cur), bid, member, boards2.RoleOwner)
30
31	// Test1 is the boards owner and its address has a user already registered
32	// so a new member must register a user with the new board name.
33	// uinit.RegisterUser is genesis-only since the security fix.
34	testing.SetHeight(0)
35	uinit.RegisterUser(cross(cur), newName, member)
36	testing.SetHeight(123)
37
38	// Invite a new member that doesn't own the user that matches the new board name
39	boards2.InviteMember(cross(cur), bid, member2, boards2.RoleOwner)
40}
41
42func main(cur realm) {
43	testing.SetRealm(testing.NewUserRealm(member2))
44
45	boards2.RenameBoard(cross(cur), name, newName)
46}
47
48// Error:
49// board name is a user name registered to a different user