mirror of
https://github.com/colinear-labs/chain.git
synced 2026-03-05 12:14:26 -08:00
scaffold CLR locking types / msg
This commit is contained in:
@@ -30,6 +30,7 @@ func GetQueryCmd(queryRoute string) *cobra.Command {
|
||||
cmd.AddCommand(CmdShowAuction())
|
||||
cmd.AddCommand(CmdAuctionBids())
|
||||
|
||||
cmd.AddCommand(CmdShowLockedUsers())
|
||||
// this line is used by starport scaffolding # 1
|
||||
|
||||
return cmd
|
||||
|
||||
36
x/colinearcore/client/cli/query_locked_users.go
Normal file
36
x/colinearcore/client/cli/query_locked_users.go
Normal file
@@ -0,0 +1,36 @@
|
||||
package cli
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"colinear/x/colinearcore/types"
|
||||
"github.com/cosmos/cosmos-sdk/client"
|
||||
"github.com/cosmos/cosmos-sdk/client/flags"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
func CmdShowLockedUsers() *cobra.Command {
|
||||
cmd := &cobra.Command{
|
||||
Use: "show-locked-users",
|
||||
Short: "shows lockedUsers",
|
||||
Args: cobra.NoArgs,
|
||||
RunE: func(cmd *cobra.Command, args []string) error {
|
||||
clientCtx := client.GetClientContextFromCmd(cmd)
|
||||
|
||||
queryClient := types.NewQueryClient(clientCtx)
|
||||
|
||||
params := &types.QueryGetLockedUsersRequest{}
|
||||
|
||||
res, err := queryClient.LockedUsers(context.Background(), params)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return clientCtx.PrintProto(res)
|
||||
},
|
||||
}
|
||||
|
||||
flags.AddQueryFlagsToCmd(cmd)
|
||||
|
||||
return cmd
|
||||
}
|
||||
72
x/colinearcore/client/cli/query_locked_users_test.go
Normal file
72
x/colinearcore/client/cli/query_locked_users_test.go
Normal file
@@ -0,0 +1,72 @@
|
||||
package cli_test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
clitestutil "github.com/cosmos/cosmos-sdk/testutil/cli"
|
||||
"github.com/stretchr/testify/require"
|
||||
tmcli "github.com/tendermint/tendermint/libs/cli"
|
||||
"google.golang.org/grpc/status"
|
||||
|
||||
"colinear/testutil/network"
|
||||
"colinear/testutil/nullify"
|
||||
"colinear/x/colinearcore/client/cli"
|
||||
"colinear/x/colinearcore/types"
|
||||
)
|
||||
|
||||
func networkWithLockedUsersObjects(t *testing.T) (*network.Network, types.LockedUsers) {
|
||||
t.Helper()
|
||||
cfg := network.DefaultConfig()
|
||||
state := types.GenesisState{}
|
||||
require.NoError(t, cfg.Codec.UnmarshalJSON(cfg.GenesisState[types.ModuleName], &state))
|
||||
|
||||
lockedUsers := &types.LockedUsers{}
|
||||
nullify.Fill(&lockedUsers)
|
||||
state.LockedUsers = lockedUsers
|
||||
buf, err := cfg.Codec.MarshalJSON(&state)
|
||||
require.NoError(t, err)
|
||||
cfg.GenesisState[types.ModuleName] = buf
|
||||
return network.New(t, cfg), *state.LockedUsers
|
||||
}
|
||||
|
||||
func TestShowLockedUsers(t *testing.T) {
|
||||
net, obj := networkWithLockedUsersObjects(t)
|
||||
|
||||
ctx := net.Validators[0].ClientCtx
|
||||
common := []string{
|
||||
fmt.Sprintf("--%s=json", tmcli.OutputFlag),
|
||||
}
|
||||
for _, tc := range []struct {
|
||||
desc string
|
||||
args []string
|
||||
err error
|
||||
obj types.LockedUsers
|
||||
}{
|
||||
{
|
||||
desc: "get",
|
||||
args: common,
|
||||
obj: obj,
|
||||
},
|
||||
} {
|
||||
t.Run(tc.desc, func(t *testing.T) {
|
||||
var args []string
|
||||
args = append(args, tc.args...)
|
||||
out, err := clitestutil.ExecTestCLICmd(ctx, cli.CmdShowLockedUsers(), args)
|
||||
if tc.err != nil {
|
||||
stat, ok := status.FromError(tc.err)
|
||||
require.True(t, ok)
|
||||
require.ErrorIs(t, stat.Err(), tc.err)
|
||||
} else {
|
||||
require.NoError(t, err)
|
||||
var resp types.QueryGetLockedUsersResponse
|
||||
require.NoError(t, net.Config.Codec.UnmarshalJSON(out.Bytes(), &resp))
|
||||
require.NotNil(t, resp.LockedUsers)
|
||||
require.Equal(t,
|
||||
nullify.Fill(&tc.obj),
|
||||
nullify.Fill(&resp.LockedUsers),
|
||||
)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -32,6 +32,7 @@ func GetTxCmd() *cobra.Command {
|
||||
|
||||
cmd.AddCommand(CmdNewAuction())
|
||||
cmd.AddCommand(CmdNewBid())
|
||||
cmd.AddCommand(CmdLockFunds())
|
||||
// this line is used by starport scaffolding # 1
|
||||
|
||||
return cmd
|
||||
|
||||
40
x/colinearcore/client/cli/tx_lock_funds.go
Normal file
40
x/colinearcore/client/cli/tx_lock_funds.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package cli
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"colinear/x/colinearcore/types"
|
||||
"github.com/cosmos/cosmos-sdk/client"
|
||||
"github.com/cosmos/cosmos-sdk/client/flags"
|
||||
"github.com/cosmos/cosmos-sdk/client/tx"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var _ = strconv.Itoa(0)
|
||||
|
||||
func CmdLockFunds() *cobra.Command {
|
||||
cmd := &cobra.Command{
|
||||
Use: "lock-funds",
|
||||
Short: "Broadcast message lockFunds",
|
||||
Args: cobra.ExactArgs(0),
|
||||
RunE: func(cmd *cobra.Command, args []string) (err error) {
|
||||
|
||||
clientCtx, err := client.GetClientTxContext(cmd)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
msg := types.NewMsgLockFunds(
|
||||
clientCtx.GetFromAddress().String(),
|
||||
)
|
||||
if err := msg.ValidateBasic(); err != nil {
|
||||
return err
|
||||
}
|
||||
return tx.GenerateOrBroadcastTxCLI(clientCtx, cmd.Flags(), msg)
|
||||
},
|
||||
}
|
||||
|
||||
flags.AddTxFlagsToCmd(cmd)
|
||||
|
||||
return cmd
|
||||
}
|
||||
Reference in New Issue
Block a user