github.com/line/ostracon@v1.0.10-0.20230328032236-7f20145f065d/abci/example/kvstore/helpers_test.go (about) 1 package kvstore 2 3 import ( 4 "io/ioutil" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 "github.com/stretchr/testify/require" 9 10 "github.com/line/ostracon/privval" 11 ) 12 13 func TestLoadPrivValidatorKeyFile(t *testing.T) { 14 tempKeyFile, err := ioutil.TempFile("", "priv_validator_key_") 15 require.Nil(t, err) 16 tempStateFile, err := ioutil.TempFile("", "priv_validator_state_") 17 require.Nil(t, err) 18 19 { 20 // does not exist 21 _, err := LoadPrivValidatorKeyFile("DOES_NOT_EXIST") 22 require.NotNil(t, err) 23 require.Contains(t, err.Error(), "does not exist") 24 } 25 26 { 27 // error reading since empty 28 _, err := LoadPrivValidatorKeyFile(tempKeyFile.Name()) 29 require.NotNil(t, err) 30 require.Contains(t, err.Error(), "error reading") 31 } 32 33 expected := privval.GenFilePV(tempKeyFile.Name(), tempStateFile.Name()) 34 35 expected.Save() 36 37 // success 38 actual, err := LoadPrivValidatorKeyFile(tempKeyFile.Name()) 39 require.Nil(t, err) 40 assert.Equal(t, expected.Key.Address, actual.Address) 41 assert.Equal(t, expected.Key.PrivKey, actual.PrivKey) 42 assert.Equal(t, expected.Key.PubKey, actual.PubKey) 43 }