diff --git a/apps/ledger-live-desktop/tests/specs/speculos/send.tx.spec.ts b/apps/ledger-live-desktop/tests/specs/speculos/send.tx.spec.ts index 40dcaafce9f..99bc113bd6e 100644 --- a/apps/ledger-live-desktop/tests/specs/speculos/send.tx.spec.ts +++ b/apps/ledger-live-desktop/tests/specs/speculos/send.tx.spec.ts @@ -1,11 +1,12 @@ import { Account } from "@ledgerhq/live-common/e2e/enum/Account"; import { Fee } from "@ledgerhq/live-common/e2e/enum/Fee"; import { OperationType } from "@ledgerhq/live-common/e2e/enum/OperationType"; +import { getEnv } from "@ledgerhq/live-env"; +import { addBugLink, addTmsLink } from "tests/utils/allureUtils"; +import { CLI } from "tests/utils/cliUtils"; +import { test } from "../../fixtures/common"; import { Transaction } from "../../models/Transaction"; -import { addTmsLink, addBugLink } from "tests/utils/allureUtils"; import { getDescription } from "../../utils/customJsonReporter"; -import { CLI } from "tests/utils/cliUtils"; -import { getEnv } from "@ledgerhq/live-env"; //Warning 🚨: XRP Tests may fail due to API HTTP 429 issue - Jira: LIVE-14237 @@ -144,55 +145,55 @@ const transactionAddressValid = [ ]; const transactionE2E = [ - { - transaction: new Transaction(Account.sep_ETH_1, Account.sep_ETH_2, "0.00001", Fee.SLOW), - xrayTicket: "B2CQA-2574", - }, - { - transaction: new Transaction(Account.POL_1, Account.POL_2, "0.001", Fee.SLOW), - xrayTicket: "B2CQA-2807", - bugTicket: "BACK-8150", - }, - { - transaction: new Transaction(Account.DOGE_1, Account.DOGE_2, "0.01", Fee.SLOW), - xrayTicket: "B2CQA-2573", - }, - { - transaction: new Transaction(Account.BCH_1, Account.BCH_2, "0.0001", Fee.SLOW), - xrayTicket: "B2CQA-2808", - }, - { - transaction: new Transaction(Account.DOT_1, Account.DOT_2, "0.0001"), - xrayTicket: "B2CQA-2809", - }, - { - transaction: new Transaction(Account.ALGO_1, Account.ALGO_2, "0.001"), - xrayTicket: "B2CQA-2810", - }, - { - transaction: new Transaction(Account.SOL_1, Account.SOL_2, "0.000001", undefined, "noTag"), - xrayTicket: "B2CQA-2811", - }, - { - transaction: new Transaction(Account.TRX_1, Account.TRX_2, "0.01"), - xrayTicket: "B2CQA-2812", - }, - { - transaction: new Transaction(Account.XLM_1, Account.XLM_2, "0.0001", undefined, "noTag"), - xrayTicket: "B2CQA-2813", - }, - { - transaction: new Transaction(Account.ATOM_1, Account.ATOM_2, "0.0001", undefined, "noTag"), - xrayTicket: "B2CQA-2814", - }, - { - transaction: new Transaction(Account.ADA_1, Account.ADA_2, "1", undefined, "noTag"), - xrayTicket: "B2CQA-2815", - }, - { - transaction: new Transaction(Account.XRP_1, Account.XRP_2, "0.0001", undefined, "noTag"), - xrayTicket: "B2CQA-2816", - }, + // { + // transaction: new Transaction(Account.sep_ETH_1, Account.sep_ETH_2, "0.00001", Fee.SLOW), + // xrayTicket: "B2CQA-2574", + // }, + // { + // transaction: new Transaction(Account.POL_1, Account.POL_2, "0.001", Fee.SLOW), + // xrayTicket: "B2CQA-2807", + // bugTicket: "BACK-8150", + // }, + // { + // transaction: new Transaction(Account.DOGE_1, Account.DOGE_2, "0.01", Fee.SLOW), + // xrayTicket: "B2CQA-2573", + // }, + // { + // transaction: new Transaction(Account.BCH_1, Account.BCH_2, "0.0001", Fee.SLOW), + // xrayTicket: "B2CQA-2808", + // }, + // { + // transaction: new Transaction(Account.DOT_1, Account.DOT_2, "0.0001"), + // xrayTicket: "B2CQA-2809", + // }, + // { + // transaction: new Transaction(Account.ALGO_1, Account.ALGO_2, "0.001"), + // xrayTicket: "B2CQA-2810", + // }, + // { + // transaction: new Transaction(Account.SOL_1, Account.SOL_2, "0.000001", undefined, "noTag"), + // xrayTicket: "B2CQA-2811", + // }, + // { + // transaction: new Transaction(Account.TRX_1, Account.TRX_2, "0.01"), + // xrayTicket: "B2CQA-2812", + // }, + // { + // transaction: new Transaction(Account.XLM_1, Account.XLM_2, "0.0001", undefined, "noTag"), + // xrayTicket: "B2CQA-2813", + // }, + // { + // transaction: new Transaction(Account.ATOM_1, Account.ATOM_2, "0.0001", undefined, "noTag"), + // xrayTicket: "B2CQA-2814", + // }, + // { + // transaction: new Transaction(Account.ADA_1, Account.ADA_2, "1", undefined, "noTag"), + // xrayTicket: "B2CQA-2815", + // }, + // { + // transaction: new Transaction(Account.XRP_1, Account.XRP_2, "0.0001", undefined, "noTag"), + // xrayTicket: "B2CQA-2816", + // }, { transaction: new Transaction(Account.APTOS_1, Account.APTOS_2, "0.0001"), xrayTicket: "B2CQA-2920", @@ -293,315 +294,315 @@ test.describe("Send flows", () => { }); } - test.describe("Send token (subAccount) - invalid address input", () => { - const tokenTransactionInvalid = { - transaction: new Transaction(Account.ALGO_USDT_1, Account.ALGO_USDT_2, "0.1", Fee.MEDIUM), - expectedErrorMessage: "Recipient account has not opted in the selected ASA.", - }; - - test.use({ - userdata: "skip-onboarding", - speculosApp: tokenTransactionInvalid.transaction.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: tokenTransactionInvalid.transaction.accountToDebit.currency.currencyId, - index: tokenTransactionInvalid.transaction.accountToDebit.index, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - - test( - `Send from ${tokenTransactionInvalid.transaction.accountToDebit.accountName} to ${tokenTransactionInvalid.transaction.accountToCredit.accountName} - invalid address input`, - { - annotation: { - type: "TMS", - description: "B2CQA-2702", - }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - tokenTransactionInvalid.transaction.accountToDebit.accountName, - ); - await app.account.navigateToTokenInAccount( - tokenTransactionInvalid.transaction.accountToDebit, - ); - await app.account.clickSend(); - await app.send.fillRecipient(tokenTransactionInvalid.transaction.accountToCredit.address); - await app.send.checkContinueButtonDisabled(); - await app.layout.checkErrorMessage(tokenTransactionInvalid.expectedErrorMessage); - }, - ); - }); - - for (const transaction of tokenTransactionInvalid) { - test.describe("Send token (subAccount) - invalid amount input", () => { - test.use({ - userdata: "skip-onboarding", - speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: transaction.transaction.accountToDebit.currency.currencyId, - index: transaction.transaction.accountToDebit.index, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - test( - `Send from ${transaction.transaction.accountToDebit.accountName} to ${transaction.transaction.accountToCredit.accountName} - invalid amount input`, - { - annotation: { - type: "TMS", - description: transaction.xrayTicket, - }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - transaction.transaction.accountToDebit.accountName, - ); - await app.account.navigateToTokenInAccount(transaction.transaction.accountToDebit); - await app.account.clickSend(); - await app.send.fillRecipient(transaction.transaction.accountToCredit.address); - await app.send.clickContinue(); - await app.send.fillAmount(transaction.transaction.amount); - await app.send.checkContinueButtonDisabled(); - await app.layout.checkAmoutWarningMessage(transaction.expectedWarningMessage); - }, - ); - }); - } - - test.describe("Send token (subAccount) - valid address & amount input", () => { - const tokenTransactionValid = new Transaction( - Account.ETH_USDT_1, - Account.ETH_USDT_2, - "1", - Fee.MEDIUM, - ); - test.use({ - userdata: "skip-onboarding", - speculosApp: tokenTransactionValid.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: tokenTransactionValid.accountToDebit.currency.currencyId, - index: tokenTransactionValid.accountToDebit.index, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - - test( - `Send from ${tokenTransactionValid.accountToDebit.accountName} to ${tokenTransactionValid.accountToCredit.accountName} - valid address & amount input`, - { - annotation: { - type: "TMS", - description: "B2CQA-2703, B2CQA-475", - }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - tokenTransactionValid.accountToDebit.accountName, - ); - await app.account.navigateToTokenInAccount(tokenTransactionValid.accountToDebit); - await app.account.clickSend(); - await app.send.fillRecipient(tokenTransactionValid.accountToCredit.address); - await app.send.checkContinueButtonEnable(); - await app.layout.checkInputErrorVisibibility("hidden"); - await app.send.clickContinue(); - await app.send.fillAmount(tokenTransactionValid.amount); - await app.send.checkContinueButtonEnable(); - }, - ); - }); - - for (const transaction of transactionsAmountInvalid) { - test.describe("Check invalid amount input error", () => { - test.use({ - userdata: "skip-onboarding", - speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: transaction.transaction.accountToDebit.currency.currencyId, - index: transaction.transaction.accountToDebit.index, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - - test( - `Check "${transaction.expectedErrorMessage}" for ${transaction.transaction.accountToDebit.currency.name} - invalid amount ${transaction.transaction.amount} input error`, - { - annotation: { type: "TMS", description: transaction.xrayTicket }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - transaction.transaction.accountToDebit.accountName, - ); - await app.account.clickSend(); - - await app.send.craftTx(transaction.transaction); - await app.send.checkContinueButtonDisabled(); - await app.layout.checkErrorMessage(transaction.expectedErrorMessage); - }, - ); - }); - } - - test.describe("Verify send max user flow", () => { - const transactionInputValid = new Transaction( - Account.ETH_1, - Account.ETH_2, - "send max", - Fee.MEDIUM, - ); - - test.use({ - userdata: "skip-onboarding", - speculosApp: transactionInputValid.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: transactionInputValid.accountToDebit.currency.currencyId, - index: transactionInputValid.accountToDebit.index, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - - test( - `Check Valid amount input (${transactionInputValid.amount})`, - { - annotation: { - type: "TMS", - description: "B2CQA-473", - }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - transactionInputValid.accountToDebit.accountName, - ); - - await app.account.clickSend(); - await app.send.fillRecipient(transactionInputValid.accountToCredit.address); - await app.send.clickContinue(); - await app.send.fillAmount(transactionInputValid.amount); - await app.send.checkContinueButtonEnable(); - await app.layout.checkInputErrorVisibibility("hidden"); - }, - ); - }); - - for (const transaction of transactionAddressValid) { - test.describe("Send funds step 1 (Recipient) - positive cases (Button enabled)", () => { - test.use({ - userdata: "skip-onboarding", - speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: transaction.transaction.accountToDebit.currency.currencyId, - index: transaction.transaction.accountToDebit.index, - scheme: transaction.transaction.accountToDebit.derivationMode, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - - test( - `Check button enabled (${transaction.transaction.amount} from ${transaction.transaction.accountToDebit.accountName} to ${transaction.transaction.accountToCredit.accountName}) - valid address input (${transaction.transaction.accountToDebit.address})`, - { - annotation: { - type: "TMS", - description: transaction.xrayTicket, - }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - transaction.transaction.accountToDebit.accountName, - ); - - await app.account.clickSend(); - await app.send.fillRecipientInfo(transaction.transaction); - await app.layout.checkInputWarningMessage(transaction.expectedWarningMessage); - await app.send.checkContinueButtonEnable(); - }, - ); - }); - } - - for (const transaction of transactionsAddressInvalid) { - test.describe("Send funds step 1 (Recipient) - negative cases (Button disabled)", () => { - test.use({ - userdata: "skip-onboarding", - speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, - cliCommands: [ - (appjsonPath: string) => { - return CLI.liveData({ - currency: transaction.transaction.accountToDebit.currency.currencyId, - index: transaction.transaction.accountToDebit.index, - add: true, - appjson: appjsonPath, - }); - }, - ], - }); - - test( - `Check "${transaction.expectedErrorMessage}" (from ${transaction.transaction.accountToDebit.accountName} to ${transaction.transaction.accountToCredit.accountName}) - invalid address input error`, - { - annotation: { - type: "TMS", - description: transaction.xrayTicket, - }, - }, - async ({ app }) => { - await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); - - await app.layout.goToAccounts(); - await app.accounts.navigateToAccountByName( - transaction.transaction.accountToDebit.accountName, - ); - - await app.account.clickSend(); - await app.send.fillRecipientInfo(transaction.transaction); - await app.layout.checkErrorMessage(transaction.expectedErrorMessage); - await app.send.checkContinueButtonDisabled(); - }, - ); - }); - } + // test.describe("Send token (subAccount) - invalid address input", () => { + // const tokenTransactionInvalid = { + // transaction: new Transaction(Account.ALGO_USDT_1, Account.ALGO_USDT_2, "0.1", Fee.MEDIUM), + // expectedErrorMessage: "Recipient account has not opted in the selected ASA.", + // }; + + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: tokenTransactionInvalid.transaction.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: tokenTransactionInvalid.transaction.accountToDebit.currency.currencyId, + // index: tokenTransactionInvalid.transaction.accountToDebit.index, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + + // test( + // `Send from ${tokenTransactionInvalid.transaction.accountToDebit.accountName} to ${tokenTransactionInvalid.transaction.accountToCredit.accountName} - invalid address input`, + // { + // annotation: { + // type: "TMS", + // description: "B2CQA-2702", + // }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // tokenTransactionInvalid.transaction.accountToDebit.accountName, + // ); + // await app.account.navigateToTokenInAccount( + // tokenTransactionInvalid.transaction.accountToDebit, + // ); + // await app.account.clickSend(); + // await app.send.fillRecipient(tokenTransactionInvalid.transaction.accountToCredit.address); + // await app.send.checkContinueButtonDisabled(); + // await app.layout.checkErrorMessage(tokenTransactionInvalid.expectedErrorMessage); + // }, + // ); + // }); + + // for (const transaction of tokenTransactionInvalid) { + // test.describe("Send token (subAccount) - invalid amount input", () => { + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: transaction.transaction.accountToDebit.currency.currencyId, + // index: transaction.transaction.accountToDebit.index, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + // test( + // `Send from ${transaction.transaction.accountToDebit.accountName} to ${transaction.transaction.accountToCredit.accountName} - invalid amount input`, + // { + // annotation: { + // type: "TMS", + // description: transaction.xrayTicket, + // }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // transaction.transaction.accountToDebit.accountName, + // ); + // await app.account.navigateToTokenInAccount(transaction.transaction.accountToDebit); + // await app.account.clickSend(); + // await app.send.fillRecipient(transaction.transaction.accountToCredit.address); + // await app.send.clickContinue(); + // await app.send.fillAmount(transaction.transaction.amount); + // await app.send.checkContinueButtonDisabled(); + // await app.layout.checkAmoutWarningMessage(transaction.expectedWarningMessage); + // }, + // ); + // }); + // } + + // test.describe("Send token (subAccount) - valid address & amount input", () => { + // const tokenTransactionValid = new Transaction( + // Account.ETH_USDT_1, + // Account.ETH_USDT_2, + // "1", + // Fee.MEDIUM, + // ); + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: tokenTransactionValid.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: tokenTransactionValid.accountToDebit.currency.currencyId, + // index: tokenTransactionValid.accountToDebit.index, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + + // test( + // `Send from ${tokenTransactionValid.accountToDebit.accountName} to ${tokenTransactionValid.accountToCredit.accountName} - valid address & amount input`, + // { + // annotation: { + // type: "TMS", + // description: "B2CQA-2703, B2CQA-475", + // }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // tokenTransactionValid.accountToDebit.accountName, + // ); + // await app.account.navigateToTokenInAccount(tokenTransactionValid.accountToDebit); + // await app.account.clickSend(); + // await app.send.fillRecipient(tokenTransactionValid.accountToCredit.address); + // await app.send.checkContinueButtonEnable(); + // await app.layout.checkInputErrorVisibibility("hidden"); + // await app.send.clickContinue(); + // await app.send.fillAmount(tokenTransactionValid.amount); + // await app.send.checkContinueButtonEnable(); + // }, + // ); + // }); + + // for (const transaction of transactionsAmountInvalid) { + // test.describe("Check invalid amount input error", () => { + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: transaction.transaction.accountToDebit.currency.currencyId, + // index: transaction.transaction.accountToDebit.index, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + + // test( + // `Check "${transaction.expectedErrorMessage}" for ${transaction.transaction.accountToDebit.currency.name} - invalid amount ${transaction.transaction.amount} input error`, + // { + // annotation: { type: "TMS", description: transaction.xrayTicket }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // transaction.transaction.accountToDebit.accountName, + // ); + // await app.account.clickSend(); + + // await app.send.craftTx(transaction.transaction); + // await app.send.checkContinueButtonDisabled(); + // await app.layout.checkErrorMessage(transaction.expectedErrorMessage); + // }, + // ); + // }); + // } + + // test.describe("Verify send max user flow", () => { + // const transactionInputValid = new Transaction( + // Account.ETH_1, + // Account.ETH_2, + // "send max", + // Fee.MEDIUM, + // ); + + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: transactionInputValid.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: transactionInputValid.accountToDebit.currency.currencyId, + // index: transactionInputValid.accountToDebit.index, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + + // test( + // `Check Valid amount input (${transactionInputValid.amount})`, + // { + // annotation: { + // type: "TMS", + // description: "B2CQA-473", + // }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // transactionInputValid.accountToDebit.accountName, + // ); + + // await app.account.clickSend(); + // await app.send.fillRecipient(transactionInputValid.accountToCredit.address); + // await app.send.clickContinue(); + // await app.send.fillAmount(transactionInputValid.amount); + // await app.send.checkContinueButtonEnable(); + // await app.layout.checkInputErrorVisibibility("hidden"); + // }, + // ); + // }); + + // for (const transaction of transactionAddressValid) { + // test.describe("Send funds step 1 (Recipient) - positive cases (Button enabled)", () => { + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: transaction.transaction.accountToDebit.currency.currencyId, + // index: transaction.transaction.accountToDebit.index, + // scheme: transaction.transaction.accountToDebit.derivationMode, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + + // test( + // `Check button enabled (${transaction.transaction.amount} from ${transaction.transaction.accountToDebit.accountName} to ${transaction.transaction.accountToCredit.accountName}) - valid address input (${transaction.transaction.accountToDebit.address})`, + // { + // annotation: { + // type: "TMS", + // description: transaction.xrayTicket, + // }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // transaction.transaction.accountToDebit.accountName, + // ); + + // await app.account.clickSend(); + // await app.send.fillRecipientInfo(transaction.transaction); + // await app.layout.checkInputWarningMessage(transaction.expectedWarningMessage); + // await app.send.checkContinueButtonEnable(); + // }, + // ); + // }); + // } + + // for (const transaction of transactionsAddressInvalid) { + // test.describe("Send funds step 1 (Recipient) - negative cases (Button disabled)", () => { + // test.use({ + // userdata: "skip-onboarding", + // speculosApp: transaction.transaction.accountToDebit.currency.speculosApp, + // cliCommands: [ + // (appjsonPath: string) => { + // return CLI.liveData({ + // currency: transaction.transaction.accountToDebit.currency.currencyId, + // index: transaction.transaction.accountToDebit.index, + // add: true, + // appjson: appjsonPath, + // }); + // }, + // ], + // }); + + // test( + // `Check "${transaction.expectedErrorMessage}" (from ${transaction.transaction.accountToDebit.accountName} to ${transaction.transaction.accountToCredit.accountName}) - invalid address input error`, + // { + // annotation: { + // type: "TMS", + // description: transaction.xrayTicket, + // }, + // }, + // async ({ app }) => { + // await addTmsLink(getDescription(test.info().annotations, "TMS").split(", ")); + + // await app.layout.goToAccounts(); + // await app.accounts.navigateToAccountByName( + // transaction.transaction.accountToDebit.accountName, + // ); + + // await app.account.clickSend(); + // await app.send.fillRecipientInfo(transaction.transaction); + // await app.layout.checkErrorMessage(transaction.expectedErrorMessage); + // await app.send.checkContinueButtonDisabled(); + // }, + // ); + // }); + // } });