Search Apps Documentation Source Content File Folder Download Copy Actions Download

z_1_filetest.gno

2.01 Kb ยท 78 lines
 1// PKGPATH: gno.land/r/gnops/valopers/proposal_test
 2// SEND: 100000000ugnot
 3
 4package proposal_test
 5
 6import (
 7	"testing"
 8
 9	"gno.land/p/nt/testutils"
10	"gno.land/r/gnops/valopers"
11	"gno.land/r/gnops/valopers/proposal"
12	"gno.land/r/gov/dao"
13	daoinit "gno.land/r/gov/dao/v3/init" // so that the govdao initializer is executed
14	susers "gno.land/r/sys/users"
15)
16
17var g1user = testutils.TestAddress("g1user") // g1vuch2um9wf047h6lta047h6lta047h6l2ewm6w
18
19const (
20	validMoniker     = "test-1"
21	validDescription = "test-1's description"
22	validServerType  = valopers.ServerTypeOnPrem
23	validAddress     = address("g1sp8v98h2gadm5jggtzz9w5ksexqn68ympsd68h")
24	validPubKey      = "gpub1pggj7ard9eg82cjtv4u52epjx56nzwgjyg9zqwpdwpd0f9fvqla089ndw5g9hcsufad77fml2vlu73fk8q8sh8v72cza5p"
25)
26
27func init() {
28	testing.SetOriginCaller(g1user)
29
30	daoinit.InitWithUsers(g1user)
31	registerTestUsers(g1user)
32
33	// Register a validator and add the proposal
34	valopers.Register(cross, validMoniker, validDescription, validServerType, validAddress, validPubKey)
35
36	if err := revive(func() {
37		pr := proposal.NewValidatorProposalRequest(cross, validAddress)
38		dao.MustCreateProposal(cross, pr)
39	}); err != nil {
40		println("r: ", err)
41	} else {
42		println("OK")
43	}
44}
45
46const gUsersV1Path = "gno.land/r/gnoland/users/v1"
47
48// Register a namespace for every addresses
49// Necessary to test GovDAO Vote
50func registerTestUsers(addrs ...address) {
51	// Set realm to users admin to register test user
52	testing.SetRealm(testing.NewCodeRealm(gUsersV1Path))
53	for _, addr := range addrs {
54		err := susers.RegisterUser(cross, addr.String()[1:], addr)
55		if err != nil {
56			panic(err.Error() + " : " + addr.String())
57		}
58	}
59}
60
61func main() {
62	println(dao.Render(""))
63}
64
65// Output:
66// OK
67// # GovDAO
68// ## Members
69// [> Go to Memberstore <](/r/gov/dao/v3/memberstore)
70// ## Proposals
71// ### [Prop #0 - Add valoper test-1 to the valset](/r/gov/dao:0)
72// Author: [@1vuch2um9wf047h6lta047h6lta047h6l2ewm6w](/u/1vuch2um9wf047h6lta047h6lta047h6l2ewm6w)
73//
74// Status: ACTIVE
75//
76// Tiers eligible to vote: T1, T2, T3
77//
78// ---