github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/client/keys/mnemonic_test.go (about)

     1  package keys
     2  
     3  import (
     4  	"strings"
     5  	"testing"
     6  
     7  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/tests"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  	"github.com/stretchr/testify/require"
    11  )
    12  
    13  func Test_RunMnemonicCmdNormal(t *testing.T) {
    14  	cmdBasic := MnemonicKeyCommand()
    15  	err := runMnemonicCmd(cmdBasic, []string{})
    16  	require.NoError(t, err)
    17  }
    18  
    19  func Test_RunMnemonicCmdUser(t *testing.T) {
    20  	cmdUser := MnemonicKeyCommand()
    21  	err := cmdUser.Flags().Set(flagUserEntropy, "1")
    22  	assert.NoError(t, err)
    23  
    24  	err = runMnemonicCmd(cmdUser, []string{})
    25  	require.Error(t, err)
    26  	require.Equal(t, "EOF", err.Error())
    27  
    28  	// Try again
    29  	mockIn, _, _ := tests.ApplyMockIO(cmdUser)
    30  	mockIn.Reset("Hi!\n")
    31  	err = runMnemonicCmd(cmdUser, []string{})
    32  	require.Error(t, err)
    33  	require.Equal(t,
    34  		"256-bits is 43 characters in Base-64, and 100 in Base-6. You entered 3, and probably want more",
    35  		err.Error())
    36  
    37  	// Now provide "good" entropy :)
    38  	fakeEntropy := strings.Repeat(":)", 40) + "\ny\n" // entropy + accept count
    39  	mockIn.Reset(fakeEntropy)
    40  	err = runMnemonicCmd(cmdUser, []string{})
    41  	require.NoError(t, err)
    42  
    43  	// Now provide "good" entropy but no answer
    44  	fakeEntropy = strings.Repeat(":)", 40) + "\n" // entropy + accept count
    45  	mockIn.Reset(fakeEntropy)
    46  	err = runMnemonicCmd(cmdUser, []string{})
    47  	require.Error(t, err)
    48  
    49  	// Now provide "good" entropy but say no
    50  	fakeEntropy = strings.Repeat(":)", 40) + "\nn\n" // entropy + accept count
    51  	mockIn.Reset(fakeEntropy)
    52  	err = runMnemonicCmd(cmdUser, []string{})
    53  	require.NoError(t, err)
    54  }