nns: add test for getAllRecords
This commit is contained in:
parent
4543de0923
commit
c296f8804c
1 changed files with 42 additions and 0 deletions
|
@ -9,6 +9,7 @@ import (
|
|||
"github.com/nspcc-dev/neo-go/pkg/core/interop/storage"
|
||||
"github.com/nspcc-dev/neo-go/pkg/neotest"
|
||||
"github.com/nspcc-dev/neo-go/pkg/neotest/chain"
|
||||
"github.com/nspcc-dev/neo-go/pkg/smartcontract"
|
||||
"github.com/nspcc-dev/neo-go/pkg/util"
|
||||
"github.com/nspcc-dev/neo-go/pkg/vm/stackitem"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
@ -463,6 +464,47 @@ func TestResolve(t *testing.T) {
|
|||
c.Invoke(t, stackitem.Null{}, "resolve", "neo.com", int64(nns.AAAA))
|
||||
}
|
||||
|
||||
func TestGetAllRecords(t *testing.T) {
|
||||
c := newNSClient(t)
|
||||
e := c.Executor
|
||||
|
||||
acc := e.NewAccount(t)
|
||||
cAcc := c.WithSigners(acc)
|
||||
cAccCommittee := c.WithSigners(acc, c.Committee)
|
||||
|
||||
c.Invoke(t, true, "register", "com", c.CommitteeHash)
|
||||
cAccCommittee.Invoke(t, true, "register", "neo.com", acc.ScriptHash())
|
||||
cAcc.Invoke(t, stackitem.Null{}, "setRecord", "neo.com", int64(nns.A), "1.2.3.4")
|
||||
cAcc.Invoke(t, stackitem.Null{}, "setRecord", "neo.com", int64(nns.CNAME), "alias.com")
|
||||
cAcc.Invoke(t, stackitem.Null{}, "setRecord", "neo.com", int64(nns.TXT), "bla0")
|
||||
cAcc.Invoke(t, stackitem.Null{}, "setRecord", "neo.com", int64(nns.TXT), "bla1") // overwrite
|
||||
|
||||
// Add some arbitrary data.
|
||||
cAccCommittee.Invoke(t, true, "register", "alias.com", acc.ScriptHash())
|
||||
cAcc.Invoke(t, stackitem.Null{}, "setRecord", "alias.com", int64(nns.TXT), "sometxt")
|
||||
|
||||
script, err := smartcontract.CreateCallAndUnwrapIteratorScript(c.Hash, "getAllRecords", 10, "neo.com")
|
||||
require.NoError(t, err)
|
||||
h := e.InvokeScript(t, script, []neotest.Signer{acc})
|
||||
e.CheckHalt(t, h, stackitem.NewArray([]stackitem.Item{
|
||||
stackitem.NewStruct([]stackitem.Item{
|
||||
stackitem.NewByteArray([]byte("neo.com")),
|
||||
stackitem.Make(nns.A),
|
||||
stackitem.NewByteArray([]byte("1.2.3.4")),
|
||||
}),
|
||||
stackitem.NewStruct([]stackitem.Item{
|
||||
stackitem.NewByteArray([]byte("neo.com")),
|
||||
stackitem.Make(nns.CNAME),
|
||||
stackitem.NewByteArray([]byte("alias.com")),
|
||||
}),
|
||||
stackitem.NewStruct([]stackitem.Item{
|
||||
stackitem.NewByteArray([]byte("neo.com")),
|
||||
stackitem.Make(nns.TXT),
|
||||
stackitem.NewByteArray([]byte("bla1")),
|
||||
}),
|
||||
}))
|
||||
}
|
||||
|
||||
const (
|
||||
defaultNameServiceDomainPrice = 10_0000_0000
|
||||
defaultNameServiceSysfee = 6000_0000
|
||||
|
|
Loading…
Reference in a new issue