crypto/keyring: drop password from keyWriter internal interface (#5899)
Add an extra test case to increase coverage.
This commit is contained in:
parent
a368988e17
commit
f7c0578fea
@ -25,7 +25,7 @@ type (
|
||||
}
|
||||
|
||||
writeLocalKeyer interface {
|
||||
writeLocalKey(name string, priv tmcrypto.PrivKey, passphrase string, algo SigningAlgo) Info
|
||||
writeLocalKey(name string, priv tmcrypto.PrivKey, algo SigningAlgo) Info
|
||||
}
|
||||
|
||||
infoWriter interface {
|
||||
@ -87,7 +87,7 @@ func (kb baseKeybase) CreateAccount(
|
||||
var info Info
|
||||
|
||||
if encryptPasswd != "" {
|
||||
info = keyWriter.writeLocalKey(name, privKey, encryptPasswd, algo)
|
||||
info = keyWriter.writeLocalKey(name, privKey, algo)
|
||||
} else {
|
||||
info = kb.writeOfflineKey(keyWriter, name, privKey.PubKey(), algo)
|
||||
}
|
||||
|
||||
@ -364,7 +364,7 @@ func (kb keyringKeybase) ImportPrivKey(name, armor, passphrase string) error {
|
||||
}
|
||||
|
||||
// NOTE: The keyring keystore has no need for a passphrase.
|
||||
kb.writeLocalKey(name, privKey, "", SigningAlgo(algo))
|
||||
kb.writeLocalKey(name, privKey, SigningAlgo(algo))
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -435,7 +435,7 @@ func (kb keyringKeybase) SupportedAlgosLedger() []SigningAlgo {
|
||||
return kb.base.SupportedAlgosLedger()
|
||||
}
|
||||
|
||||
func (kb keyringKeybase) writeLocalKey(name string, priv tmcrypto.PrivKey, _ string, algo SigningAlgo) Info {
|
||||
func (kb keyringKeybase) writeLocalKey(name string, priv tmcrypto.PrivKey, algo SigningAlgo) Info {
|
||||
// encrypt private key using keyring
|
||||
pub := priv.PubKey()
|
||||
info := newLocalInfo(name, pub, string(priv.Bytes()), algo)
|
||||
|
||||
@ -2,6 +2,7 @@ package keyring
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"errors"
|
||||
"fmt"
|
||||
"strings"
|
||||
"testing"
|
||||
@ -432,6 +433,14 @@ func TestSupportedAlgos(t *testing.T) {
|
||||
require.Equal(t, []SigningAlgo{"secp256k1"}, kb.SupportedAlgosLedger())
|
||||
}
|
||||
|
||||
func TestCustomDerivFuncKey(t *testing.T) {
|
||||
kb := NewInMemory(WithDeriveFunc(func(mnemonic string, bip39Passphrase, hdPath string, algo SigningAlgo) ([]byte, error) {
|
||||
return nil, errors.New("cannot derive keys")
|
||||
}))
|
||||
_, _, err := kb.CreateMnemonic("test", English, "", "")
|
||||
require.Error(t, err, "cannot derive keys")
|
||||
}
|
||||
|
||||
func TestInMemoryLanguage(t *testing.T) {
|
||||
kb := NewInMemory()
|
||||
_, _, err := kb.CreateMnemonic("something", Japanese, "no_pass", Secp256k1)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user