verifier_test.gno
1.16 Kb · 44 lines
1package names
2
3import (
4 "testing"
5
6 "gno.land/p/nt/ownable/v0"
7 "gno.land/p/nt/testutils/v0"
8 "gno.land/p/nt/uassert/v0"
9)
10
11var alice = testutils.TestAddress("alice")
12
13func TestDefaultVerifier(t *testing.T) {
14 // Disabled: any case is true
15 uassert.True(t, verifier(false, alice, alice.String()))
16 uassert.True(t, verifier(false, "", alice.String()))
17 uassert.True(t, verifier(false, alice, "somerandomusername"))
18
19 // Enabled: PA namespace check
20 uassert.True(t, verifier(true, alice, alice.String()))
21
22 // Enabled: non-PA namespaces denied
23 uassert.False(t, verifier(true, alice, "notregistered"))
24 uassert.False(t, verifier(true, alice, "alice"))
25
26 // Enabled: empty name/address
27 uassert.False(t, verifier(true, address(""), ""))
28 uassert.False(t, verifier(true, alice, ""))
29 uassert.False(t, verifier(true, address(""), "something"))
30}
31
32func TestEnable(t *testing.T) {
33 testing.SetRealm(testing.NewUserRealm("g1edq4dugw0sgat4zxcw9xardvuydqf6cgleuc8p"))
34
35 uassert.NotPanics(t, func() {
36 Enable(cross)
37 })
38
39 // Confirm enable drops ownership
40 uassert.Equal(t, Ownable.Owner().String(), "")
41 uassert.AbortsWithMessage(t, ownable.ErrUnauthorized.Error(), func() {
42 Enable(cross)
43 })
44}