47 lines
1.2 KiB
Go
47 lines
1.2 KiB
Go
|
package core
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
|
||
|
"github.com/CityOfZion/neo-go/pkg/core/storage"
|
||
|
"github.com/CityOfZion/neo-go/pkg/core/transaction"
|
||
|
"github.com/stretchr/testify/require"
|
||
|
)
|
||
|
|
||
|
func TestNewBlockChainStateAndCommit(t *testing.T) {
|
||
|
memCachedStore := storage.NewMemCachedStore(storage.NewMemoryStore())
|
||
|
bcState := NewBlockChainState(memCachedStore)
|
||
|
err := bcState.commit()
|
||
|
require.NoError(t, err)
|
||
|
}
|
||
|
|
||
|
func TestStoreAsBlock(t *testing.T) {
|
||
|
memCachedStore := storage.NewMemCachedStore(storage.NewMemoryStore())
|
||
|
bcState := NewBlockChainState(memCachedStore)
|
||
|
|
||
|
block := newBlock(0, newMinerTX())
|
||
|
err := bcState.storeAsBlock(block, 0)
|
||
|
require.NoError(t, err)
|
||
|
}
|
||
|
|
||
|
func TestStoreAsCurrentBlock(t *testing.T) {
|
||
|
memCachedStore := storage.NewMemCachedStore(storage.NewMemoryStore())
|
||
|
bcState := NewBlockChainState(memCachedStore)
|
||
|
|
||
|
block := newBlock(0, newMinerTX())
|
||
|
err := bcState.storeAsCurrentBlock(block)
|
||
|
require.NoError(t, err)
|
||
|
}
|
||
|
|
||
|
func TestStoreAsTransaction(t *testing.T) {
|
||
|
memCachedStore := storage.NewMemCachedStore(storage.NewMemoryStore())
|
||
|
bcState := NewBlockChainState(memCachedStore)
|
||
|
|
||
|
tx := &transaction.Transaction{
|
||
|
Type: transaction.MinerType,
|
||
|
Data: &transaction.MinerTX{},
|
||
|
}
|
||
|
err := bcState.storeAsTransaction(tx, 0)
|
||
|
require.NoError(t, err)
|
||
|
}
|