github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/client/keys/import_test.go (about) 1 package keys 2 3 import ( 4 "io/ioutil" 5 "path/filepath" 6 "testing" 7 8 "github.com/spf13/viper" 9 "github.com/stretchr/testify/require" 10 11 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/client/flags" 12 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/crypto/keys" 13 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/tests" 14 sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types" 15 ) 16 17 func Test_runImportCmd(t *testing.T) { 18 runningUnattended := isRunningUnattended() 19 importKeyCommand := ImportKeyCommand() 20 mockIn, _, _ := tests.ApplyMockIO(importKeyCommand) 21 22 // Now add a temporary keybase 23 kbHome, cleanUp := tests.NewTestCaseDir(t) 24 defer cleanUp() 25 viper.Set(flags.FlagHome, kbHome) 26 27 if !runningUnattended { 28 kb, err := keys.NewKeyring(sdk.KeyringServiceName(), viper.GetString(flags.FlagKeyringBackend), viper.GetString(flags.FlagHome), mockIn) 29 require.NoError(t, err) 30 defer func() { 31 kb.Delete("keyname1", "", false) 32 }() 33 } 34 35 keyfile := filepath.Join(kbHome, "key.asc") 36 armoredKey := `-----BEGIN TENDERMINT PRIVATE KEY----- 37 salt: A790BB721D1C094260EA84F5E5B72289 38 kdf: bcrypt 39 40 HbP+c6JmeJy9JXe2rbbF1QtCX1gLqGcDQPBXiCtFvP7/8wTZtVOPj8vREzhZ9ElO 41 3P7YnrzPQThG0Q+ZnRSbl9MAS8uFAM4mqm5r/Ys= 42 =f3l4 43 -----END TENDERMINT PRIVATE KEY----- 44 ` 45 require.NoError(t, ioutil.WriteFile(keyfile, []byte(armoredKey), 0600)) 46 47 // Now enter password 48 if runningUnattended { 49 mockIn.Reset("123456789\n12345678\n12345678\n") 50 } else { 51 mockIn.Reset("123456789\n") 52 } 53 require.NoError(t, runImportCmd(importKeyCommand, []string{"keyname1", keyfile})) 54 }