|
|
- package state
-
- import (
- "testing"
-
- dbm "github.com/tendermint/go-db"
- "github.com/tendermint/tendermint/config/tendermint_test"
- )
-
- func TestStateCopyEquals(t *testing.T) {
- config := tendermint_test.ResetConfig("state_")
- // Get State db
- stateDB := dbm.NewDB("state", config.GetString("db_backend"), config.GetString("db_dir"))
- state := GetState(config, stateDB)
-
- stateCopy := state.Copy()
-
- if !state.Equals(stateCopy) {
- t.Fatal("expected state and its copy to be identical. got %v\n expected %v\n", stateCopy, state)
- }
-
- stateCopy.LastBlockHeight += 1
-
- if state.Equals(stateCopy) {
- t.Fatal("expected states to be different. got same %v", state)
- }
- }
-
- func TestStateSaveLoad(t *testing.T) {
- config := tendermint_test.ResetConfig("state_")
- // Get State db
- stateDB := dbm.NewDB("state", config.GetString("db_backend"), config.GetString("db_dir"))
- state := GetState(config, stateDB)
-
- state.LastBlockHeight += 1
- state.Save()
-
- loadedState := LoadState(stateDB)
- if !state.Equals(loadedState) {
- t.Fatal("expected state and its copy to be identical. got %v\n expected %v\n", loadedState, state)
- }
- }
|