github.com/cosmos/cosmos-sdk@v0.50.10/testutil/account.go (about)

     1  package testutil
     2  
     3  import (
     4  	"fmt"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  
     9  	"github.com/cosmos/cosmos-sdk/crypto/hd"
    10  	"github.com/cosmos/cosmos-sdk/crypto/keyring"
    11  	"github.com/cosmos/cosmos-sdk/types"
    12  )
    13  
    14  type TestAccount struct {
    15  	Name    string
    16  	Address types.AccAddress
    17  }
    18  
    19  func CreateKeyringAccounts(t *testing.T, kr keyring.Keyring, num int) []TestAccount {
    20  	accounts := make([]TestAccount, num)
    21  	for i := range accounts {
    22  		record, _, err := kr.NewMnemonic(
    23  			fmt.Sprintf("key-%d", i),
    24  			keyring.English,
    25  			types.FullFundraiserPath,
    26  			keyring.DefaultBIP39Passphrase,
    27  			hd.Secp256k1)
    28  		assert.NoError(t, err)
    29  
    30  		addr, err := record.GetAddress()
    31  		assert.NoError(t, err)
    32  
    33  		accounts[i] = TestAccount{Name: record.Name, Address: addr}
    34  	}
    35  
    36  	return accounts
    37  }