Search Apps Documentation Source Content File Folder Download Copy Actions Download

z_0_a_filetest.gno

1.40 Kb · 50 lines
 1// PKGPATH: gno.land/r/test/proposal
 2// SEND: 20000000ugnot
 3
 4package proposal
 5
 6import (
 7	"testing"
 8
 9	"gno.land/p/nt/testutils/v0"
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)
15
16var g1user = testutils.TestAddress("g1user")
17
18const (
19	validMoniker     = "test-1"
20	validDescription = "test-1's description"
21	validServerType  = valopers.ServerTypeOnPrem
22	validAddress     = address("g1sp8v98h2gadm5jggtzz9w5ksexqn68ympsd68h")
23	otherAddress     = address("g1juz2yxmdsa6audkp6ep9vfv80c8p5u76e03vvh")
24	validPubKey      = "gpub1pggj7ard9eg82cjtv4u52epjx56nzwgjyg9zqwpdwpd0f9fvqla089ndw5g9hcsufad77fml2vlu73fk8q8sh8v72cza5p"
25)
26
27func init(cur realm) {
28	testing.SetOriginCaller(g1user)
29	daoinit.InitWithUsers(cross(cur), g1user)
30}
31
32func main(cur realm) {
33	// Register a validator: OriginCaller must equal operator addr (squat guard).
34	testing.SetOriginCaller(validAddress)
35	valopers.Register(cross(cur), validMoniker, validDescription, validServerType, validAddress, validPubKey)
36
37	// Switch back to g1user for the GovDAO proposal submission.
38	testing.SetOriginCaller(g1user)
39
40	// Try to make a proposal for a non-existing validator
41	if err := revive(func() {
42		pr := proposal.NewValidatorProposalRequest(cross(cur), otherAddress)
43		dao.MustCreateProposal(cross(cur), pr)
44	}); err != nil {
45		println("r: ", err)
46	}
47}
48
49// Output:
50// r:  valoper does not exist