diff --git a/test/helpers/actions.ts b/test/helpers/actions.ts index b469e3e..7cc6f24 100644 --- a/test/helpers/actions.ts +++ b/test/helpers/actions.ts @@ -690,7 +690,7 @@ export async function waitForSetupWalletScreenFinish(timeout: number = 150_000) await settingUpWallet.waitForDisplayed({ reverse: true, timeout, interval: 100 }); } -export async function completeOnboarding({ isFirstTime = true } = {}) { +export async function completeOnboarding() { // TOS and PP await elementById('Continue').waitForDisplayed(); await sleep(1000); // Wait for the app to settle @@ -700,10 +700,6 @@ export async function completeOnboarding({ isFirstTime = true } = {}) { await tap('NewWallet'); await waitForSetupWalletScreenFinish(); - if (isFirstTime) { - await handleAndroidAlert(); - } - // Wait for wallet to be created await elementById('TotalBalance-primary').waitForDisplayed({ timeout: 60_000 }); } @@ -716,14 +712,12 @@ export async function restoreWallet( expectBackupSheet = false, expectBackGroundPaymentsSheet = false, reinstall = true, - expectAndroidAlert = true, }: { passphrase?: string; expectQuickPayTimedSheet?: boolean; expectBackupSheet?: boolean; expectBackGroundPaymentsSheet?: boolean; reinstall?: boolean; - expectAndroidAlert?: boolean; } = {} ) { console.info('→ Restoring wallet with seed:', seed); @@ -784,9 +778,6 @@ export async function restoreWallet( await getStarted.waitForDisplayed({ timeout: 180000 }); await tap('GetStartedButton'); await sleep(1000); - if (expectAndroidAlert) { - await handleAndroidAlert(); - } if (expectBackupSheet) { await dismissBackupTimedSheet(); @@ -1018,18 +1009,13 @@ export async function transferSavingsToSpending({ console.info('→ SpendingBalanceReadyToast not found, continuing...'); } - // verify transfer activity on savings - // see : https://github.com/synonymdev/bitkit-ios/issues/464 - if (driver.isAndroid) { - await dismissQuickPayIntro({ triggerTimedSheet: false }); - await tap('ActivitySavings'); - await expectTextWithin('Activity-1', 'Transfer', { timeout: 60_000 }); - await expectTextWithin('Activity-1', '-'); - await tap('NavigationBack'); - } else { - await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: false }); - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } + await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: false }); + await dismissQuickPayIntro({ triggerTimedSheet: true }); + + await tap('ActivitySavings'); + await expectTextWithin('Activity-1', 'Transfer', { timeout: 60_000 }); + await expectTextWithin('Activity-1', '-'); + await tap('NavigationBack'); await sleep(2000); } @@ -1287,9 +1273,16 @@ export async function dismissBackgroundPaymentsTimedSheet({ if (triggerTimedSheet) { await doTriggerTimedSheet(); } - await elementById('BackgroundPaymentsDescription').waitForDisplayed(); - await sleep(500); // wait for the app to settle - await tap('BackgroundPaymentsCancel'); + + if (driver.isAndroid) { + await elementById('BackgroundPaymentsIntro-later').waitForDisplayed(); + await sleep(500); // wait for the app to settle + await tap('BackgroundPaymentsIntro-later'); + } else { + await elementById('BackgroundPaymentsDescription').waitForDisplayed(); + await sleep(500); // wait for the app to settle + await tap('BackgroundPaymentsCancel'); + } await sleep(500); } diff --git a/test/specs/lightning.e2e.ts b/test/specs/lightning.e2e.ts index 2b62b4d..09bd5bf 100644 --- a/test/specs/lightning.e2e.ts +++ b/test/specs/lightning.e2e.ts @@ -107,12 +107,10 @@ describe('@lightning - Lightning', () => { console.info({ response }); await acknowledgeReceivedPayment(); await sleep(500); - if (driver.isIOS) { - await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: driver.isIOS }); - await dismissQuickPayIntro({ triggerTimedSheet: driver.isIOS }); - } else { - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } + + await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: true }); + await dismissQuickPayIntro({ triggerTimedSheet: true }); + const totalBalance = await elementByIdWithin('TotalBalance-primary', 'MoneyText'); await expect(totalBalance).toHaveText('11 000'); // 1k onchain + 10k lightning await expectTextWithin('ActivitySpending', '10 000'); diff --git a/test/specs/lnurl.e2e.ts b/test/specs/lnurl.e2e.ts index ea4bdeb..50f65a0 100644 --- a/test/specs/lnurl.e2e.ts +++ b/test/specs/lnurl.e2e.ts @@ -158,12 +158,10 @@ describe('@lnurl - LNURL', () => { // Success toast/flow await waitForToast('SpendingBalanceReadyToast'); await acknowledgeExternalSuccess(); - if (driver.isIOS) { - await dismissBackgroundPaymentsTimedSheet(); - await dismissQuickPayIntro({ triggerTimedSheet: driver.isIOS }); - } else { - await dismissQuickPayIntro({ triggerTimedSheet: driver.isAndroid }); - } + + await dismissBackgroundPaymentsTimedSheet(); + await dismissQuickPayIntro({ triggerTimedSheet: true }); + await expectTextWithin('ActivitySpending', '20 001'); // lnurl-pay (min != max) with comment diff --git a/test/specs/migration.e2e.ts b/test/specs/migration.e2e.ts index 96f5581..797bcea 100644 --- a/test/specs/migration.e2e.ts +++ b/test/specs/migration.e2e.ts @@ -13,7 +13,6 @@ import { getAccessibleText, getReceiveAddress, getUriFromQRCode, - handleAndroidAlert, pasteIOSText, restoreWallet, sleep, @@ -483,7 +482,6 @@ async function sendRnToSelf(amountSats: number): Promise { async function handleMigrationFlow({ withSweep = false }): Promise { console.info('→ Handling migration flow...'); await expectText('MIGRATING', { strategy: 'contains' }); - await handleAndroidAlert(); if (withSweep) { await handleSweepFlow(); } @@ -832,7 +830,6 @@ async function transferToSpendingRN(sats: number, existingBalance = 0): Promise< await sleep(1000); await dragOnElement('GRAB', 'right', 0.95); await sleep(5000); - await handleAndroidAlert(); // Mine blocks periodically to progress the channel opening console.info('→ Mining blocks to confirm channel...'); diff --git a/test/specs/multiaddress.e2e.ts b/test/specs/multiaddress.e2e.ts index e2daa26..dfc4a98 100644 --- a/test/specs/multiaddress.e2e.ts +++ b/test/specs/multiaddress.e2e.ts @@ -278,12 +278,10 @@ describe('@multi_address - Multi address', () => { await mineBlocks(6); await electrum?.waitForSync(); await waitForToast('SpendingBalanceReadyToast'); - if (driver.isIOS) { - await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: true }); - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } else { - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } + + await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: true }); + await dismissQuickPayIntro({ triggerTimedSheet: true }); + await checkChannelStatus({ size: formatSats(channelSize) }); // savings includes legacy; max channel funding may leave small taproot change diff --git a/test/specs/onboarding.e2e.ts b/test/specs/onboarding.e2e.ts index 614b9f8..54d8777 100644 --- a/test/specs/onboarding.e2e.ts +++ b/test/specs/onboarding.e2e.ts @@ -1,5 +1,4 @@ import { - handleAndroidAlert, confirmInputOnKeyboard, elementById, elementByText, @@ -44,8 +43,6 @@ describe('@onboarding - Onboarding', () => { await tap('NewWallet'); await waitForSetupWalletScreenFinish(); - await handleAndroidAlert(); - await elementByText('TO GET').waitForDisplayed(); }); @@ -71,8 +68,6 @@ describe('@onboarding - Onboarding', () => { await tap('CreateNewWallet'); await waitForSetupWalletScreenFinish(); - await handleAndroidAlert(); - // Wait for wallet to be created await elementById('TotalBalance').waitForDisplayed(); diff --git a/test/specs/send.e2e.ts b/test/specs/send.e2e.ts index a5ddb87..7be8943 100644 --- a/test/specs/send.e2e.ts +++ b/test/specs/send.e2e.ts @@ -252,12 +252,9 @@ describe('@send - Send', () => { const response = await lnd.sendPaymentSync({ paymentRequest: receive, amt: '10000' }); console.info({ response }); await acknowledgeReceivedPayment(); - if (driver.isIOS) { - await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: driver.isIOS }); - await dismissQuickPayIntro({ triggerTimedSheet: driver.isIOS }); - } else { - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } + + await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: true }); + await dismissQuickPayIntro({ triggerTimedSheet: true }); const totalBalance = await elementByIdWithin('TotalBalance-primary', 'MoneyText'); await expect(totalBalance).toHaveText('110 000'); // 100k onchain + 10k lightning @@ -597,12 +594,10 @@ describe('@send - Send', () => { await swipeFullScreen('down'); await lnd.sendPaymentSync({ paymentRequest: receive, amt: '10000' }); await acknowledgeReceivedPayment(); - if (driver.isIOS) { - await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: driver.isIOS }); - await dismissQuickPayIntro({ triggerTimedSheet: driver.isIOS }); - } else { - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } + + await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: true }); + await dismissQuickPayIntro({ triggerTimedSheet: true }); + await expectTextWithin('ActivitySpending', '10 000'); async function payMsatInvoice( diff --git a/test/specs/transfer.e2e.ts b/test/specs/transfer.e2e.ts index 201b87b..5fe89cd 100644 --- a/test/specs/transfer.e2e.ts +++ b/test/specs/transfer.e2e.ts @@ -328,14 +328,10 @@ describe('@transfer - Transfer', () => { await electrum?.waitForSync(); await waitForToast('SpendingBalanceReadyToast'); await sleep(1000); - if (driver.isIOS) { - await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: driver.isIOS }); - await dismissQuickPayIntro({ triggerTimedSheet: driver.isIOS }); - } else if (!quickPayDismissed) { - // only try to dismiss if it wasn't already dismissed earlier - await sleep(2000); - await dismissQuickPayIntro({ triggerTimedSheet: true }); - } + + await dismissBackgroundPaymentsTimedSheet({ triggerTimedSheet: true }); + await dismissQuickPayIntro({ triggerTimedSheet: true }); + await expectNoTextWithin('ActivitySpending', '0'); await waitForActiveChannel(lnd, ldkNodeId);