PathrockNetwork Gno Explorer
HomeBlocksTransactionsTokensRealmsPackagesValidatorsAnalytics

PathrockNetwork Gno Explorer — an independent explorer for Gno.land Mainnet (gnoland-1), operated by PathrockNetwork. Not an official Gno.land service.

gnowebarchive RPC

gno.land/r/akkadia/beta/definition

Realm
Open in gnoweb ↗

Overview

Kind
Realm (renderable)
Name
definition
Namespace
akkadia / beta
Files
7 (gnomod.toml)
Exported functions
7
Module
gno.land/r/akkadia/beta/definition
gno
0.9

Files (7)

  • gnomod.tomltoml
  • definition.gnogno
  • render.gnogno
  • validation.gnogno
  • definition_test.gnogno
  • external_test.gnogno
  • render_test.gno
gno
external_test.gnogno
1package definition_test23import (4	"chain"5	"chain/runtime"6	"testing"78	"gno.land/p/nt/testutils/v0"9	"gno.land/p/nt/uassert/v0"10	"gno.land/r/akkadia/beta/admin"11	"gno.land/r/akkadia/beta/definition"12)1314func TestExternalDefinitionsAndAdminRun(cur realm, t *testing.T) {15	caller := testutils.TestAddress("definitionExternal")16	testing.SetOriginCaller(admin.GetAdmin())17	testing.SetRealm(testing.NewUserRealm(admin.GetAdmin()))18	admin.TransferAdmin(cross(cur), caller)19	testing.SetOriginCaller(caller)20	testing.SetRealm(testing.NewUserRealm(caller))21	admin.AcceptAdmin(cross(cur))22	testing.SetOriginSend(chain.Coins{})23	testing.SetRealm(runtime.NewRealm(caller, "gno.land/e/"+caller.String()+"/run"))24	definition.SetDefinitions(cross(cur), "x", "name=before")25	value, found := definition.GetField("x", "name")["value"]26	uassert.True(t, found)27	uassert.Equal(t, "before", value)2829	// A forged code path with the admin address still is not a user call/run.30	testing.SetRealm(runtime.NewRealm(caller, "gno.land/r/example/forged_definition_admin"))31	uassert.AbortsWithMessage(t, cur, "direct user call or run required", func() {32		definition.DeleteAll(cross(cur))33	})34	uassert.AbortsWithMessage(t, cur, "direct user call or run required", func() {35		definition.SetDefinitions(cross(cur), "x", "name=forged")36	})37	value, _ = definition.GetField("x", "name")["value"]38	uassert.Equal(t, "before", value)3940	testing.SetRealm(runtime.NewRealm(caller, "gno.land/e/"+caller.String()+"/run"))41	definition.DeleteAll(cross(cur))42	uassert.Equal(t, len(definition.Get("x")), 0)43	definition.SetDefinitions(cross(cur), "x", "fresh=value")44	_, found = definition.GetField("x", "name")["value"]45	uassert.False(t, found)46	value, found = definition.GetField("x", "fresh")["value"]47	uassert.True(t, found)48	uassert.Equal(t, "value", value)49}50

Functions

  • DeleteAll(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string})

  • Get(key string) []map[string]string

  • GetField(key string, fieldKey string) map[string]string

  • GetKeyCount() int

  • ListKeys(page int, count int) []string

  • Render(path string) string

  • SetDefinitions(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, keys string, values string)

Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.

Rendered

RenderedRawgnoweb ↗

vm/qrender output, sanitized (docs/render-security.md) and displayed in an empty-sandbox iframe — scripts, forms and popups cannot run. Links stay inert in-preview; right-click to open.