Skip to content

Commit

Permalink
add verifier tests
Browse files Browse the repository at this point in the history
  • Loading branch information
leohhhn committed Jan 19, 2025
1 parent 4bb226d commit 7be3dc0
Showing 1 changed file with 25 additions and 4 deletions.
29 changes: 25 additions & 4 deletions examples/gno.land/r/sys/names/verifier_test.gno
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import (
"std"
"testing"

"gno.land/p/demo/ownable"
"gno.land/p/demo/testutils"
"gno.land/p/demo/uassert"
"gno.land/p/demo/urequire"
Expand All @@ -14,20 +15,40 @@ import (
var alice = testutils.TestAddress("alice")

func TestDefaultVerifier(t *testing.T) {
// Check disabled, any case is true
uassert.True(t, defaultVerifier(false, alice, alice.String()))
uassert.True(t, defaultVerifier(false, "", alice.String()))
uassert.True(t, defaultVerifier(false, alice, "somerandomusername"))

// Check enabled
// username + addr mismatch
uassert.False(t, defaultVerifier(alice, "notregistered"))
uassert.False(t, defaultVerifier(true, alice, "notregistered"))
// PA namespace check
uassert.True(t, defaultVerifier(alice, alice.String()))
uassert.True(t, defaultVerifier(true, alice, alice.String()))

// Empty name/address
uassert.False(t, defaultVerifier(std.Address(""), ""))
uassert.False(t, defaultVerifier(true, std.Address(""), ""))

//Register proper username
std.TestSetRealm(std.NewCodeRealm("gno.land/r/gnoland/users/v1")) // authorized write
std.TestSetOrigCaller(std.DerivePkgAddr("gno.land/r/gnoland/users/v1"))
urequire.NoError(t, users.RegisterUser("alice", alice))

// Proper namespace
uassert.True(t, defaultVerifier(alice, "alice"))
uassert.True(t, defaultVerifier(true, alice, "alice"))
}

func TestEnable(t *testing.T) {
std.TestSetRealm(std.NewUserRealm("g1manfred47kzduec920z88wfr64ylksmdcedlf5"))
std.TestSetOrigCaller("g1manfred47kzduec920z88wfr64ylksmdcedlf5")

uassert.NotPanics(t, func() {
Enable()
})

// Confirm enable drops ownerships
uassert.Equal(t, Ownable.Owner().String(), "")
uassert.PanicsWithMessage(t, ownable.ErrUnauthorized.Error(), func() {
Enable()
})
}

0 comments on commit 7be3dc0

Please sign in to comment.