github.com/Finschia/finschia-sdk@v0.48.1/crypto/keyring/output_test.go (about)

     1  package keyring
     2  
     3  import (
     4  	"fmt"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/require"
     8  
     9  	kmultisig "github.com/Finschia/finschia-sdk/crypto/keys/multisig"
    10  	"github.com/Finschia/finschia-sdk/crypto/keys/secp256k1"
    11  	"github.com/Finschia/finschia-sdk/crypto/types"
    12  	sdk "github.com/Finschia/finschia-sdk/types"
    13  )
    14  
    15  func TestBech32KeysOutput(t *testing.T) {
    16  	sk := secp256k1.PrivKey{Key: []byte{154, 49, 3, 117, 55, 232, 249, 20, 205, 216, 102, 7, 136, 72, 177, 2, 131, 202, 234, 81, 31, 208, 46, 244, 179, 192, 167, 163, 142, 117, 246, 13}}
    17  	tmpKey := sk.PubKey()
    18  	multisigPk := kmultisig.NewLegacyAminoPubKey(1, []types.PubKey{tmpKey})
    19  
    20  	info, err := NewMultiInfo("multisig", multisigPk)
    21  	require.NoError(t, err)
    22  	accAddr := sdk.AccAddress(info.GetPubKey().Address())
    23  	expectedOutput, err := NewKeyOutput(info.GetName(), info.GetType(), accAddr, multisigPk)
    24  	require.NoError(t, err)
    25  
    26  	out, err := MkAccKeyOutput(info)
    27  	require.NoError(t, err)
    28  	require.Equal(t, expectedOutput, out)
    29  	require.Equal(t, `{Name:multisig Type:multi Address:link1nf8lf6n4wa43rzmdzwe6hkrnw5guekhq769krx PubKey:{"@type":"/cosmos.crypto.multisig.LegacyAminoPubKey","threshold":1,"public_keys":[{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"AurroA7jvfPd1AadmmOvWM2rJSwipXfRf8yD6pLbA2DJ"}]} Mnemonic:}`, fmt.Sprintf("%+v", out))
    30  }