From 03fec38a3248417f5c92c9355bd81f509fc2254a Mon Sep 17 00:00:00 2001 From: ignaciosantise <25931366+ignaciosantise@users.noreply.github.com> Date: Thu, 30 Apr 2026 13:26:15 +0200 Subject: [PATCH 1/4] fix pay maestro flows for pr 480 --- .../.maestro/pay_cancel_from_kyc.yaml | 8 ++--- .../pay-tests/.maestro/pay_double_scan.yaml | 2 +- .../.maestro/pay_kyc_back_navigation.yaml | 10 +++--- .../.maestro/pay_multiple_options_kyc.yaml | 32 ++++--------------- .../.maestro/pay_multiple_options_nokyc.yaml | 32 ++++--------------- .../.maestro/pay_single_option_nokyc.yaml | 2 +- .../pay_single_option_nokyc_deeplink.yaml | 2 +- 7 files changed, 26 insertions(+), 62 deletions(-) diff --git a/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml b/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml index 39ee9e1..d5c981c 100644 --- a/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml +++ b/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml @@ -23,13 +23,13 @@ tags: id: "pay-merchant-info" timeout: 15000 -# Verify first option is pre-selected +# Verify first option exists - assertVisible: - id: "pay-option-0-selected" + id: "pay-option-0" -# Tap Continue to go to collectData webview +# Tap the first option to go to collectData webview - tapOn: - id: "pay-button-continue" + id: "pay-option-0" # Wait for KYC webview to load - extendedWaitUntil: diff --git a/maestro/pay-tests/.maestro/pay_double_scan.yaml b/maestro/pay-tests/.maestro/pay_double_scan.yaml index c25efb6..0c7f0bb 100644 --- a/maestro/pay-tests/.maestro/pay_double_scan.yaml +++ b/maestro/pay-tests/.maestro/pay_double_scan.yaml @@ -32,7 +32,7 @@ tags: - copyTextFrom: id: "pay-button-pay" - assertTrue: - condition: "${maestro.copiedText == 'Pay $0.01'}" + condition: "${maestro.copiedText.startsWith('Pay $')}" # Tap Pay, verify success, tap "Got it!" - runFlow: diff --git a/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml b/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml index 7f0b063..1e5ed0d 100644 --- a/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml +++ b/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml @@ -22,13 +22,13 @@ tags: id: "pay-merchant-info" timeout: 15000 -# Verify first option is pre-selected +# Verify first option exists - assertVisible: - id: "pay-option-0-selected" + id: "pay-option-0" -# Tap Continue to go to collectData webview +# Tap the first option to go to collectData webview - tapOn: - id: "pay-button-continue" + id: "pay-option-0" # Wait for KYC webview to load - extendedWaitUntil: @@ -50,7 +50,7 @@ tags: # Verify we're back at the selectOption view - extendedWaitUntil: visible: - id: "pay-option-0-selected" + id: "pay-option-0" timeout: 10000 # Dismiss the modal diff --git a/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml b/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml index 34ccc66..49406b5 100644 --- a/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml +++ b/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml @@ -23,41 +23,23 @@ tags: id: "pay-merchant-info" timeout: 15000 -# Verify first option is pre-selected (index 0) +# Verify first option exists - assertVisible: - id: "pay-option-0-selected" + id: "pay-option-0" # Verify at least a second option exists (multiple options) - assertVisible: id: "pay-option-1" -# Verify "Info required" badge is visible on KYC options -- assertVisible: - id: "pay-info-required-badge" - -# Verify "?" info button is visible in the header +# Verify info-required marker is visible on KYC options - assertVisible: - id: "pay-button-info" + id: "pay-option-info-required" # Select the second option (index 1) -- tapOn: - id: "pay-option-1" - -# Verify second option is now selected -- assertVisible: - id: "pay-option-1-selected" - -# Verify first option is now deselected -- assertVisible: - id: "pay-option-0" - -# Copy the network name from the selected option's accessibilityLabel - copyTextFrom: - id: "pay-option-1-selected" - -# Tap Continue to proceed + id: "pay-option-1" - tapOn: - id: "pay-button-continue" + id: "pay-option-1" # Handle personal details webview (KYC) - extendedWaitUntil: @@ -93,7 +75,7 @@ tags: - copyTextFrom: id: "pay-button-pay" - assertTrue: - condition: "${maestro.copiedText == 'Pay $0.01'}" + condition: "${maestro.copiedText.startsWith('Pay $')}" # Tap Pay, verify success - runFlow: diff --git a/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml b/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml index 1e73d85..0a3adb1 100644 --- a/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml +++ b/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml @@ -22,41 +22,23 @@ tags: id: "pay-merchant-info" timeout: 15000 -# Verify first option is pre-selected (index 0) +# Verify first option exists - assertVisible: - id: "pay-option-0-selected" + id: "pay-option-0" # Verify at least a second option exists (multiple options) - assertVisible: id: "pay-option-1" -# Verify "?" info button is NOT visible (no KYC merchant) -- assertNotVisible: - id: "pay-button-info" - -# Verify "info required" badge is NOT visible (no KYC) +# Verify info-required marker is NOT visible (no KYC merchant) - assertNotVisible: - id: "pay-info-required-badge" + id: "pay-option-info-required" # Select the second option (index 1) -- tapOn: - id: "pay-option-1" - -# Verify second option is now selected -- assertVisible: - id: "pay-option-1-selected" - -# Verify first option is now deselected -- assertVisible: - id: "pay-option-0" - -# Copy the network name from the selected option's accessibilityLabel - copyTextFrom: - id: "pay-option-1-selected" - -# Tap Continue to proceed + id: "pay-option-1" - tapOn: - id: "pay-button-continue" + id: "pay-option-1" # No KYC — goes straight to review screen # Verify review screen shows the same token we selected @@ -67,7 +49,7 @@ tags: - copyTextFrom: id: "pay-button-pay" - assertTrue: - condition: "${maestro.copiedText == 'Pay $0.01'}" + condition: "${maestro.copiedText.startsWith('Pay $')}" # Tap Pay, verify success - runFlow: diff --git a/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml b/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml index 63cd064..b516937 100644 --- a/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml +++ b/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml @@ -32,7 +32,7 @@ tags: - copyTextFrom: id: "pay-button-pay" - assertTrue: - condition: "${maestro.copiedText == 'Pay $0.01'}" + condition: "${maestro.copiedText.startsWith('Pay $')}" # Tap Pay, verify success - runFlow: diff --git a/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml b/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml index d7e2953..20ac426 100644 --- a/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml +++ b/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml @@ -32,7 +32,7 @@ tags: - copyTextFrom: id: "pay-button-pay" - assertTrue: - condition: "${maestro.copiedText == 'Pay $0.01'}" + condition: "${maestro.copiedText.startsWith('Pay $')}" # Tap Pay, verify success - runFlow: From 595129e8647ce18e56eccae51374ab336de09110 Mon Sep 17 00:00:00 2001 From: ignaciosantise <25931366+ignaciosantise@users.noreply.github.com> Date: Mon, 4 May 2026 09:50:50 +0200 Subject: [PATCH 2/4] chore: expect select option header test id on payment list view --- maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml b/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml index 0a3adb1..4335f01 100644 --- a/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml +++ b/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml @@ -19,7 +19,7 @@ tags: # Wait for payment options to load - extendedWaitUntil: visible: - id: "pay-merchant-info" + id: "pay-select-option-header" timeout: 15000 # Verify first option exists From 13df6d8e4bc592d4565df7a979535f2753e22125 Mon Sep 17 00:00:00 2001 From: ignaciosantise <25931366+ignaciosantise@users.noreply.github.com> Date: Mon, 4 May 2026 09:58:46 +0200 Subject: [PATCH 3/4] chore: add clearState before payment tests --- maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml | 2 ++ maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml | 2 ++ maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml | 2 ++ .../pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml | 2 ++ 4 files changed, 8 insertions(+) diff --git a/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml b/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml index 49406b5..6f7a17f 100644 --- a/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml +++ b/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml @@ -11,6 +11,8 @@ tags: WPAY_CUSTOMER_KEY: ${WPAY_CUSTOMER_KEY_MULTI_KYC} WPAY_MERCHANT_ID: ${WPAY_MERCHANT_ID_MULTI_KYC} +- clearState + - startRecording: "WalletConnect Pay Multiple Options KYC" # Open wallet, paste payment URL diff --git a/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml b/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml index 4335f01..2405074 100644 --- a/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml +++ b/maestro/pay-tests/.maestro/pay_multiple_options_nokyc.yaml @@ -10,6 +10,8 @@ tags: WPAY_CUSTOMER_KEY: ${WPAY_CUSTOMER_KEY_MULTI_NOKYC} WPAY_MERCHANT_ID: ${WPAY_MERCHANT_ID_MULTI_NOKYC} +- clearState + - startRecording: "WalletConnect Pay Multiple Options No KYC" # Open wallet, paste payment URL diff --git a/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml b/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml index b516937..3ddb3e1 100644 --- a/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml +++ b/maestro/pay-tests/.maestro/pay_single_option_nokyc.yaml @@ -10,6 +10,8 @@ tags: WPAY_CUSTOMER_KEY: ${WPAY_CUSTOMER_KEY_SINGLE_NOKYC} WPAY_MERCHANT_ID: ${WPAY_MERCHANT_ID_SINGLE_NOKYC} +- clearState + - startRecording: "WalletConnect Pay Single Option No KYC" # Open wallet, paste payment URL diff --git a/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml b/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml index 20ac426..d2341ef 100644 --- a/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml +++ b/maestro/pay-tests/.maestro/pay_single_option_nokyc_deeplink.yaml @@ -10,6 +10,8 @@ tags: WPAY_CUSTOMER_KEY: ${WPAY_CUSTOMER_KEY_SINGLE_NOKYC} WPAY_MERCHANT_ID: ${WPAY_MERCHANT_ID_SINGLE_NOKYC} +- clearState + - startRecording: "WalletConnect Pay Single Option No KYC Deep Link" # Open wallet via deep link with payment URL From 294ffa7ef45a264b4c729c502a71ade8a45ba4f4 Mon Sep 17 00:00:00 2001 From: ignaciosantise <25931366+ignaciosantise@users.noreply.github.com> Date: Tue, 5 May 2026 12:28:15 +0200 Subject: [PATCH 4/4] chore: changed merchant info expect to select options header --- maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml | 2 +- maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml | 2 +- maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml b/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml index d5c981c..4293800 100644 --- a/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml +++ b/maestro/pay-tests/.maestro/pay_cancel_from_kyc.yaml @@ -20,7 +20,7 @@ tags: # Wait for payment options to load - extendedWaitUntil: visible: - id: "pay-merchant-info" + id: "pay-select-option-header" timeout: 15000 # Verify first option exists diff --git a/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml b/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml index 1e5ed0d..5212b3c 100644 --- a/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml +++ b/maestro/pay-tests/.maestro/pay_kyc_back_navigation.yaml @@ -19,7 +19,7 @@ tags: # Wait for payment options to load - extendedWaitUntil: visible: - id: "pay-merchant-info" + id: "pay-select-option-header" timeout: 15000 # Verify first option exists diff --git a/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml b/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml index 6f7a17f..7c95a71 100644 --- a/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml +++ b/maestro/pay-tests/.maestro/pay_multiple_options_kyc.yaml @@ -22,7 +22,7 @@ tags: # Wait for payment options to load - extendedWaitUntil: visible: - id: "pay-merchant-info" + id: "pay-select-option-header" timeout: 15000 # Verify first option exists