z_1_filetest.gno
1.95 Kb ยท 77 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 validAddress = address("g1sp8v98h2gadm5jggtzz9w5ksexqn68ympsd68h")
23 validPubKey = "gpub1pggj7ard9eg82cjtv4u52epjx56nzwgjyg9zqwpdwpd0f9fvqla089ndw5g9hcsufad77fml2vlu73fk8q8sh8v72cza5p"
24)
25
26func init() {
27 testing.SetOriginCaller(g1user)
28
29 daoinit.InitWithUsers(g1user)
30 registerTestUsers(g1user)
31
32 // Register a validator and add the proposal
33 valopers.Register(cross, validMoniker, validDescription, validAddress, validPubKey)
34
35 if err := revive(func() {
36 pr := proposal.NewValidatorProposalRequest(cross, validAddress)
37 dao.MustCreateProposal(cross, pr)
38 }); err != nil {
39 println("r: ", err)
40 } else {
41 println("OK")
42 }
43}
44
45const gUsersV1Path = "gno.land/r/gnoland/users/v1"
46
47// Register a namespace for every addresses
48// Necessary to test GovDAO Vote
49func registerTestUsers(addrs ...address) {
50 // Set realm to users admin to register test user
51 testing.SetRealm(testing.NewCodeRealm(gUsersV1Path))
52 for _, addr := range addrs {
53 err := susers.RegisterUser(cross, addr.String()[1:], addr)
54 if err != nil {
55 panic(err.Error() + " : " + addr.String())
56 }
57 }
58}
59
60func main() {
61 println(dao.Render(""))
62}
63
64// Output:
65// OK
66// # GovDAO
67// ## Members
68// [> Go to Memberstore <](/r/gov/dao/v3/memberstore)
69// ## Proposals
70// ### [Prop #0 - Add valoper test-1 to the valset](/r/gov/dao:0)
71// Author: [@1vuch2um9wf047h6lta047h6lta047h6l2ewm6w](/u/1vuch2um9wf047h6lta047h6lta047h6l2ewm6w)
72//
73// Status: ACTIVE
74//
75// Tiers eligible to vote: T1, T2, T3
76//
77// ---