z_0_a_filetest.gno
1.64 Kb ยท 63 lines
1// PKGPATH: gno.land/r/gnops/valopers/proposal_test
2// SEND: 20000000ugnot
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"
14 susers "gno.land/r/sys/users"
15)
16
17var g1user = testutils.TestAddress("g1user")
18
19const (
20 validMoniker = "test-1"
21 validDescription = "test-1's description"
22 validAddress = address("g1sp8v98h2gadm5jggtzz9w5ksexqn68ympsd68h")
23 otherAddress = address("g1juz2yxmdsa6audkp6ep9vfv80c8p5u76e03vvh")
24 validPubKey = "gpub1pggj7ard9eg82cjtv4u52epjx56nzwgjyg9zqwpdwpd0f9fvqla089ndw5g9hcsufad77fml2vlu73fk8q8sh8v72cza5p"
25)
26
27func init() {
28 testing.SetOriginCaller(g1user)
29 daoinit.InitWithUsers(g1user)
30 registerTestUsers(g1user)
31}
32
33const gUsersV1Path = "gno.land/r/gnoland/users/v1"
34
35// Register a namespace for every addresses
36// Necessary to test GovDAO Vote
37func registerTestUsers(addrs ...address) {
38 // Set realm to users admin to register test user
39 testing.SetRealm(testing.NewCodeRealm(gUsersV1Path))
40 for _, addr := range addrs {
41 err := susers.RegisterUser(cross, addr.String()[1:], addr)
42 if err != nil {
43 panic(err.Error() + " : " + addr.String())
44 }
45 }
46}
47
48func main() {
49 testing.SetOriginCaller(g1user)
50 // Register a validator
51 valopers.Register(cross, validMoniker, validDescription, validAddress, validPubKey)
52 // Try to make a proposal for a non-existing validator
53
54 if err := revive(func() {
55 pr := proposal.NewValidatorProposalRequest(cross, otherAddress)
56 dao.MustCreateProposal(cross, pr)
57 }); err != nil {
58 println("r: ", err)
59 }
60}
61
62// Output:
63// r: valoper does not exist