forked from TrueCloudLab/neoneo-go
6ed2bd63b9
Closes #782.
45 lines
1.1 KiB
Go
45 lines
1.1 KiB
Go
package state
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/nspcc-dev/neo-go/pkg/internal/random"
|
|
"github.com/nspcc-dev/neo-go/pkg/io"
|
|
"github.com/nspcc-dev/neo-go/pkg/smartcontract"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestEncodeDecodeNotificationEvent(t *testing.T) {
|
|
event := &NotificationEvent{
|
|
ScriptHash: random.Uint160(),
|
|
Item: nil,
|
|
}
|
|
|
|
buf := io.NewBufBinWriter()
|
|
event.EncodeBinary(buf.BinWriter)
|
|
assert.Nil(t, buf.Err)
|
|
|
|
eventDecoded := &NotificationEvent{}
|
|
reader := io.NewBinReaderFromBuf(buf.Bytes())
|
|
eventDecoded.DecodeBinary(reader)
|
|
assert.Equal(t, event, eventDecoded)
|
|
}
|
|
|
|
func TestEncodeDecodeAppExecResult(t *testing.T) {
|
|
appExecResult := &AppExecResult{
|
|
TxHash: random.Uint256(),
|
|
Trigger: 1,
|
|
VMState: "Hault",
|
|
GasConsumed: 10,
|
|
Stack: []smartcontract.Parameter{},
|
|
Events: []NotificationEvent{},
|
|
}
|
|
buf := io.NewBufBinWriter()
|
|
appExecResult.EncodeBinary(buf.BinWriter)
|
|
assert.Nil(t, buf.Err)
|
|
|
|
appExecResultDecoded := &AppExecResult{}
|
|
reader := io.NewBinReaderFromBuf(buf.Bytes())
|
|
appExecResultDecoded.DecodeBinary(reader)
|
|
assert.Equal(t, appExecResult, appExecResultDecoded)
|
|
}
|