mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2025-05-03 01:41:48 +00:00
stackitem: introduce Convertible interface
We have a lot of native contract types that are converted to stack items before serialization, then deserialized as stack items and converted back to regular structures. stackitem.Convertible allows to remove a lot of repetitive io.Serializable code. This also introduces to/from converter in testserdes which unfortunately required to change util tests to avoid circular references.
This commit is contained in:
parent
2d993d0da5
commit
aab18c3083
23 changed files with 223 additions and 339 deletions
|
@ -4,7 +4,7 @@ import (
|
|||
"math/big"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/nspcc-dev/neo-go/internal/testserdes"
|
||||
)
|
||||
|
||||
func TestCandidate_Bytes(t *testing.T) {
|
||||
|
@ -12,7 +12,6 @@ func TestCandidate_Bytes(t *testing.T) {
|
|||
Registered: true,
|
||||
Votes: *big.NewInt(0x0F),
|
||||
}
|
||||
data := expected.Bytes()
|
||||
actual := new(candidate).FromBytes(data)
|
||||
require.Equal(t, expected, actual)
|
||||
actual := new(candidate)
|
||||
testserdes.ToFromStackItem(t, expected, actual)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue