Some checks are pending
docker-build-cometbft / vars (push) Waiting to run
docker-build-cometbft / build-images (amd64, ubuntu-24.04) (push) Blocked by required conditions
docker-build-cometbft / build-images (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
docker-build-cometbft / merge-images (push) Blocked by required conditions
docker-build-e2e-node / vars (push) Waiting to run
docker-build-e2e-node / build-images (amd64, ubuntu-24.04) (push) Blocked by required conditions
docker-build-e2e-node / build-images (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
docker-build-e2e-node / merge-images (push) Blocked by required conditions
53 lines
2.1 KiB
Go
53 lines
2.1 KiB
Go
package commands
|
|
|
|
import (
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
cfg "git.cw.tr/mukan-network/mukan-consensus/config"
|
|
"git.cw.tr/mukan-network/mukan-consensus/privval"
|
|
)
|
|
|
|
func Test_ResetAll(t *testing.T) {
|
|
config := cfg.TestConfig()
|
|
dir := t.TempDir()
|
|
config.SetRoot(dir)
|
|
cfg.EnsureRoot(dir)
|
|
require.NoError(t, initFilesWithConfig(config))
|
|
pv := privval.LoadFilePV(config.PrivValidatorKeyFile(), config.PrivValidatorStateFile())
|
|
pv.LastSignState.Height = 10
|
|
pv.Save()
|
|
require.NoError(t, resetAll(config.DBDir(), config.P2P.AddrBookFile(), config.PrivValidatorKeyFile(),
|
|
config.PrivValidatorStateFile(), logger))
|
|
require.DirExists(t, config.DBDir())
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "block.db"))
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "state.db"))
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "evidence.db"))
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "tx_index.db"))
|
|
require.FileExists(t, config.PrivValidatorStateFile())
|
|
pv = privval.LoadFilePV(config.PrivValidatorKeyFile(), config.PrivValidatorStateFile())
|
|
require.Equal(t, int64(0), pv.LastSignState.Height)
|
|
}
|
|
|
|
func Test_ResetState(t *testing.T) {
|
|
config := cfg.TestConfig()
|
|
dir := t.TempDir()
|
|
config.SetRoot(dir)
|
|
cfg.EnsureRoot(dir)
|
|
require.NoError(t, initFilesWithConfig(config))
|
|
pv := privval.LoadFilePV(config.PrivValidatorKeyFile(), config.PrivValidatorStateFile())
|
|
pv.LastSignState.Height = 10
|
|
pv.Save()
|
|
require.NoError(t, resetState(config.DBDir(), logger))
|
|
require.DirExists(t, config.DBDir())
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "block.db"))
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "state.db"))
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "evidence.db"))
|
|
require.NoFileExists(t, filepath.Join(config.DBDir(), "tx_index.db"))
|
|
require.FileExists(t, config.PrivValidatorStateFile())
|
|
pv = privval.LoadFilePV(config.PrivValidatorKeyFile(), config.PrivValidatorStateFile())
|
|
// private validator state should still be in tact.
|
|
require.Equal(t, int64(10), pv.LastSignState.Height)
|
|
}
|