From 7e1eb308b0aaa4d500b1e3c68e145b1a8a3c4cf9 Mon Sep 17 00:00:00 2001 From: Mohamed Ismail Date: Tue, 28 May 2024 10:10:59 +0200 Subject: [PATCH] fix(kadena-cli): add empty log message for networks + empty state level to warning (#2152) --- .changeset/five-pans-reply.md | 6 ++++++ .../tools/kadena-cli/src/account/commands/accountList.ts | 2 +- packages/tools/kadena-cli/src/keys/utils/keysDisplay.ts | 6 +++--- .../kadena-cli/src/networks/tests/networkList.test.ts | 5 +++-- .../kadena-cli/src/networks/utils/networkDisplay.ts | 9 ++++++++- .../tools/kadena-cli/src/wallets/commands/walletList.ts | 4 ++-- 6 files changed, 23 insertions(+), 9 deletions(-) create mode 100644 .changeset/five-pans-reply.md diff --git a/.changeset/five-pans-reply.md b/.changeset/five-pans-reply.md new file mode 100644 index 0000000000..9fd41b323d --- /dev/null +++ b/.changeset/five-pans-reply.md @@ -0,0 +1,6 @@ +--- +"@kadena/kadena-cli": minor +--- + +Add empty state warning message for network list command +All empty state log level to warning for consistency diff --git a/packages/tools/kadena-cli/src/account/commands/accountList.ts b/packages/tools/kadena-cli/src/account/commands/accountList.ts index 6c28d81165..5736924252 100644 --- a/packages/tools/kadena-cli/src/account/commands/accountList.ts +++ b/packages/tools/kadena-cli/src/account/commands/accountList.ts @@ -67,7 +67,7 @@ export const createAccountListCommand: ( const isAccountAliasesExist = await ensureAccountAliasFilesExists(); if (!isAccountAliasesExist) { - return log.error(NO_ACCOUNTS_FOUND_ERROR_MESSAGE); + return log.warning(NO_ACCOUNTS_FOUND_ERROR_MESSAGE); } const { accountAlias } = await option.accountAlias(); diff --git a/packages/tools/kadena-cli/src/keys/utils/keysDisplay.ts b/packages/tools/kadena-cli/src/keys/utils/keysDisplay.ts index ab0c606720..c026498f51 100644 --- a/packages/tools/kadena-cli/src/keys/utils/keysDisplay.ts +++ b/packages/tools/kadena-cli/src/keys/utils/keysDisplay.ts @@ -13,9 +13,9 @@ export async function printPlainKeys(plainKeys: IPlainKey[]): Promise { }); if (plainKeys.length === 0) { - log.info('There are no key files in your working directory.'); - log.info('You can add one using:\n'); - log.info(' kadena key generate'); + log.warning('There are no key files in your working directory.'); + log.warning('You can add one using:\n'); + log.warning(' kadena key generate'); return; } for (const key of plainKeys) { diff --git a/packages/tools/kadena-cli/src/networks/tests/networkList.test.ts b/packages/tools/kadena-cli/src/networks/tests/networkList.test.ts index d52c7f5f53..960c9007ee 100644 --- a/packages/tools/kadena-cli/src/networks/tests/networkList.test.ts +++ b/packages/tools/kadena-cli/src/networks/tests/networkList.test.ts @@ -1,5 +1,6 @@ import { beforeEach, describe, expect, it } from 'vitest'; import { CWD_KADENA_DIR } from '../../constants/config.js'; +import { NO_NETWORKS_FOUND_ERROR_MESSAGE } from '../../constants/networks.js'; import { services } from '../../services/index.js'; import { runCommand, runCommandJson } from '../../utils/test.util.js'; @@ -10,8 +11,8 @@ describe('network list command', () => { } }); it('should return empty networks list', async () => { - const res = await runCommandJson('network list'); - expect(res.networks).toEqual([]); + const res = await runCommand('network list'); + expect(res.stderr).toContain(NO_NETWORKS_FOUND_ERROR_MESSAGE); }); it('should return networks list', async () => { diff --git a/packages/tools/kadena-cli/src/networks/utils/networkDisplay.ts b/packages/tools/kadena-cli/src/networks/utils/networkDisplay.ts index cae74e2724..28183f1f46 100644 --- a/packages/tools/kadena-cli/src/networks/utils/networkDisplay.ts +++ b/packages/tools/kadena-cli/src/networks/utils/networkDisplay.ts @@ -1,4 +1,7 @@ -import { networkDefaults } from '../../constants/networks.js'; +import { + NO_NETWORKS_FOUND_ERROR_MESSAGE, + networkDefaults, +} from '../../constants/networks.js'; import { log } from '../../utils/logger.js'; @@ -37,6 +40,10 @@ export async function displayNetworksConfig(): Promise { const defaultNetworkName = await getDefaultNetworkName(); const existingNetworks: ICustomNetworkChoice[] = await getExistingNetworks(); + if (existingNetworks.length === 0) { + return log.warning(NO_NETWORKS_FOUND_ERROR_MESSAGE); + } + const networks = await Promise.all( existingNetworks.map(async (network) => { const networkFilePath = path.join(networkDir!, `${network.value}.yaml`); diff --git a/packages/tools/kadena-cli/src/wallets/commands/walletList.ts b/packages/tools/kadena-cli/src/wallets/commands/walletList.ts index 9463621c0d..31d2509e91 100644 --- a/packages/tools/kadena-cli/src/wallets/commands/walletList.ts +++ b/packages/tools/kadena-cli/src/wallets/commands/walletList.ts @@ -21,8 +21,8 @@ export const createListWalletsCommand: ( return log.error(`Selected wallet not found.`); } else if (Array.isArray(config.walletNameConfig)) { if (config.walletNameConfig.length === 0) { - log.info('There are no wallets created. You can add one with:\n'); - log.info(' kadena wallet add'); + log.warning('There are no wallets created. You can add one with:\n'); + log.warning(' kadena wallet add'); } for (const wallet of config.walletNameConfig) { await printWalletKeys(wallet);