Skip to content

Conversation

@clauxx
Copy link
Contributor

@clauxx clauxx commented Mar 19, 2025

fixes #22287

Summary

Error and error callback not passed when keycard auth fails with the wrong PIN in standard auth.

status: ready

@clauxx clauxx added the wallet-core Issues for mobile wallet team label Mar 19, 2025
@clauxx clauxx self-assigned this Mar 19, 2025
@status-github-bot-v2 status-github-bot-v2 bot moved this to CONTRIBUTOR in Pipeline for QA Mar 19, 2025
@clauxx clauxx moved this from CONTRIBUTOR to REVIEW in Pipeline for QA Mar 19, 2025
@status-im-auto
Copy link
Member

status-im-auto commented Mar 19, 2025

Jenkins Builds

Click to see older builds (16)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ bfd9b20 #1 2025-03-19 09:33:05 ~5 min tests 📄log
✔️ bfd9b20 #1 2025-03-19 09:36:56 ~9 min android-e2e 🤖apk 📲
✔️ bfd9b20 #1 2025-03-19 09:37:33 ~10 min android 🤖apk 📲
✔️ bfd9b20 #1 2025-03-19 09:38:46 ~11 min ios 📱ipa 📲
✔️ 2aa0563 #2 2025-03-19 09:54:27 ~5 min tests 📄log
✔️ 2aa0563 #2 2025-03-19 09:56:55 ~7 min android 🤖apk 📲
✔️ 2aa0563 #2 2025-03-19 09:57:28 ~8 min android-e2e 🤖apk 📲
✔️ 2aa0563 #2 2025-03-19 09:59:03 ~9 min ios 📱ipa 📲
✔️ 4987112 #3 2025-03-20 11:04:13 ~7 min tests 📄log
✔️ 4987112 #3 2025-03-20 11:05:18 ~8 min android-e2e 🤖apk 📲
✔️ 4987112 #3 2025-03-20 11:05:51 ~9 min android 🤖apk 📲
✔️ 4987112 #3 2025-03-20 11:09:41 ~12 min ios 📱ipa 📲
✔️ 8db59cf #4 2025-03-20 11:40:49 ~5 min tests 📄log
✔️ 8db59cf #4 2025-03-20 11:42:01 ~7 min android-e2e 🤖apk 📲
✔️ 8db59cf #4 2025-03-20 11:44:11 ~9 min android 🤖apk 📲
✔️ 8db59cf #4 2025-03-20 11:45:35 ~10 min ios 📱ipa 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 0c44ee9 #6 2025-03-20 15:14:14 ~8 min tests 📄log
✔️ 0c44ee9 #6 2025-03-20 15:15:01 ~9 min android-e2e 🤖apk 📲
✔️ 0c44ee9 #6 2025-03-20 15:15:17 ~9 min android 🤖apk 📲
✔️ 0c44ee9 #6 2025-03-20 15:21:21 ~15 min ios 📱ipa 📲
✔️ 250ee1d #7 2025-03-25 11:12:34 ~6 min tests 📄log
✔️ 250ee1d #7 2025-03-25 11:17:19 ~10 min android-e2e 🤖apk 📲
✔️ 250ee1d #7 2025-03-25 11:17:52 ~11 min android 🤖apk 📲
✔️ 250ee1d #7 2025-03-25 11:18:28 ~12 min ios 📱ipa 📲

Copy link
Contributor

@Parveshdhull Parveshdhull left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @clauxx for fixing the issue.

Should we also add null check or default case in (keycard.utils/tag-lost? and (keycard.utils/pin-retries (assuming this was culprit)?

@clauxx
Copy link
Contributor Author

clauxx commented Mar 19, 2025

Thank you @clauxx for fixing the issue.

Should we also add null check or default case in (keycard.utils/tag-lost? and (keycard.utils/pin-retries (assuming this was culprit)?

yeah keycard.utils/pin-retries would fail if error is nil. Can add the checks, good call.

@status-im-auto
Copy link
Member

57% of end-end tests have passed

Total executed tests: 14
Failed tests: 3
Expected to fail tests: 3
Passed tests: 8
IDs of failed tests: 741612,741554,702843 
IDs of expected to fail tests: 741840,741839,741841 

Failed tests (3)

Click to expand
  • Rerun failed tests

  • Class TestWalletOneDevice:

    1. test_wallet_bridge_flow_mainnet, id: 741612

    Device 1: Find `SlideButton` by `xpath`: `//*[@resource-id='slide-button-track']`
    Device 1: Click system back button

    critical/wallet/test_wallet_mainnet.py:343: in test_wallet_bridge_flow_mainnet
        self.errors.verify_no_errors()
    base_test_case.py:179: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Device 1: Optimism to Arbitrum: Est. time is not shown on the Review Bridge screen
    E    Device 1: Arbitrum to Base: Est. time is not shown on the Review Bridge screen
    E    Device 1: Base to Optimism: Est. time is not shown on the Review Bridge screen
    



    2. test_wallet_send_flow_mainnet, id: 741554

    Device 1: Swiping right on element SlideButton
    Device 1: Find SlideButton by xpath: //*[@resource-id='slide-button-track']

    critical/wallet/test_wallet_mainnet.py:154: in test_wallet_send_flow_mainnet
        self.errors.verify_no_errors()
    base_test_case.py:179: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Device 1: Ether on Mainnet: Est. time is not shown on the Review Send page
    E    Device 1: Ether on Arbitrum: Est. time is not shown on the Review Send page
    E    Device 1: Status on Mainnet: Est. time is not shown on the Review Send page
    E    Device 1: Status on Optimism: Est. time is not shown on the Review Send page
    



    Class TestCommunityMultipleDeviceMerged:

    1. test_community_message_edit, id: 702843

    Device 2: Find Text by xpath: //android.view.ViewGroup[@content-desc='chat-item']//android.widget.TextView[contains(@text,'https://status.app/c/')]
    Device 2: Wait for element Button for max 120s and click when it is available

    Test setup failed: critical/chats/test_public_chat_browsing.py:349: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:336: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:99: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:138: in wait_for_visibility_of_element
        raise TimeoutException(
     Device 2: Button by accessibility id:`show-request-to-join-screen-button` is not found on the screen after wait_for_visibility_of_element
    



    Device sessions

    Expected to fail tests (3)

    Click to expand

    Class TestWalletCollectibles:

    1. test_wallet_send_collectible, id: 741840

    Device 1: Swiping right on element SlideButton
    Device 1: Find SlideButton by xpath: //*[@resource-id='slide-button-track']

    critical/wallet/test_collectibles.py:141: in test_wallet_send_collectible
        self.wallet_view.slide_button_track.slide()
    ../views/base_view.py:107: in slide
        self.swipe_right_on_element(width_percentage=1.3, start_x=100)
    ../views/base_element.py:288: in swipe_right_on_element
        location, size = self.get_element_coordinates()
    ../views/base_element.py:274: in get_element_coordinates
        element = self.find_element()
    ../views/base_element.py:78: in find_element
        raise NoSuchElementException(
     Device 1: SlideButton by xpath: `//*[@resource-id='slide-button-track']` is not found on the screen; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception 
    

    [[Collectibles list is not loaded sometimes]]

    2. test_wallet_collectibles_balance, id: 741839

    Device 1: Text is Double Spike
    Device 1: Click system back button

    critical/wallet/test_collectibles.py:95: in test_wallet_collectibles_balance
        self.errors.verify_no_errors()
    base_test_case.py:179: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Device 1: BVL image doesn't match expected template
    E    Device 1: BVL quantity 2 doesn't match expected 1
    E    Device 1: BVL expanded image doesn't match expected template
    E    Device 1: Glitch Punks image doesn't match expected template 
    

    [[Collectibles list is not loaded sometimes]]

    3. test_wallet_collectible_send_from_expanded_info_view, id: 741841

    Device 1: Find Button by accessibility id: collectibles-tab
    Device 1: Tap on found: Button

    critical/wallet/test_collectibles.py:153: in test_wallet_collectible_send_from_expanded_info_view
        self.wallet_view.get_collectible_element('Glitch Punks').wait_for_element().click()
    ../views/base_element.py:120: in wait_for_element
        raise TimeoutException(
     Device `1`: `CollectibleItemElement` by` xpath`: `//*[@content-desc='collectible-list-item']//*[contains(@text,'Glitch Punks')]/../..` is not found on the screen after wait_for_element 
    

    [[Collectibles list is not loaded sometimes]]

    Passed tests (8)

    Click to expand

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    Class TestWalletMultipleDevice:

    1. test_wallet_send_asset_from_drawer, id: 727230
    2. test_wallet_send_eth, id: 727229

    Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    2. test_restore_multiaccount_with_waku_backup_remove_profile_switch, id: 703133
    Device sessions

    Class TestWalletOneDevice:

    1. test_wallet_swap_flow_mainnet, id: 741555
    2. test_wallet_add_remove_regular_account, id: 727231
    3. test_wallet_balance_mainnet, id: 740490

    @Horupa-Olena Horupa-Olena self-assigned this Mar 19, 2025
    @Horupa-Olena Horupa-Olena moved this from E2E Tests to IN TESTING in Pipeline for QA Mar 19, 2025
    @Horupa-Olena
    Copy link

    @clauxx Thank you for your PR!

    I don't see the error popup, but I still can't sign Send transaction when entered wrong PIN. Please check this issue.
    Log: Status-debug-logs.zip

    Actual result:

    screen-20250320-121232.mp4

    @clauxx
    Copy link
    Contributor Author

    clauxx commented Mar 20, 2025

    @Horupa-Olena please test with the latest changes

    @flexsurfer @Parveshdhull there's a new commit, please have a look

    @Horupa-Olena Horupa-Olena force-pushed the cl-22287-fix-keycard-wrong-pin branch from 4987112 to 8db59cf Compare March 20, 2025 11:34
    @status-im-auto
    Copy link
    Member

    67% of end-end tests have passed

    Total executed tests: 3
    Failed tests: 1
    Expected to fail tests: 0
    Passed tests: 2
    
    IDs of failed tests: 702843 
    

    Failed tests (1)

    Click to expand
  • Rerun failed tests

  • Class TestCommunityMultipleDeviceMerged:

    1. test_community_message_edit, id: 702843

    Device 2: Attempt 0 is successful clicking close-activity-center
    Device 1: Looking for chat: 'shaujsi5bgUKz3DU4BS8'

    Test setup failed: critical/chats/test_public_chat_browsing.py:329: in prepare_devices
        self.home_1.get_chat(self.username_2).wait_for_visibility_of_element()
    ../views/base_element.py:138: in wait_for_visibility_of_element
        raise TimeoutException(
     Device 1: ChatElement by xpath:`//*[@content-desc='author-primary-name'][starts-with(@text,'shaujsi5bgUKz3DU4BS8')]/..` is not found on the screen after wait_for_visibility_of_element
    



    Device sessions

    Passed tests (2)

    Click to expand

    Class TestWalletOneDevice:

    1. test_wallet_bridge_flow_mainnet, id: 741612
    2. test_wallet_send_flow_mainnet, id: 741554

    @Horupa-Olena
    Copy link

    @clauxx Thank you for quick fix!

    PR can be merged.

    Tested send flow witn Keycard auth and also quick re-check swap/bridge flow and other auth method to avoid any regression.

    @Horupa-Olena Horupa-Olena moved this from IN TESTING to MERGE in Pipeline for QA Mar 20, 2025
    @clauxx clauxx force-pushed the cl-22287-fix-keycard-wrong-pin branch from 8db59cf to 8363ca3 Compare March 20, 2025 15:03
    clauxx added 3 commits March 20, 2025 17:04
    Signed-off-by: Cristian Lungu <lungucristian95@gmail.com>
    Signed-off-by: Cristian Lungu <lungucristian95@gmail.com>
    Signed-off-by: Cristian Lungu <lungucristian95@gmail.com>
    @clauxx clauxx force-pushed the cl-22287-fix-keycard-wrong-pin branch from 8363ca3 to 0c44ee9 Compare March 20, 2025 15:05
    @flexsurfer
    Copy link
    Contributor

    hey @clauxx should we merge this PR?

    @clauxx clauxx merged commit 780136c into develop Mar 25, 2025
    5 checks passed
    @clauxx clauxx deleted the cl-22287-fix-keycard-wrong-pin branch March 25, 2025 11:43
    @github-project-automation github-project-automation bot moved this from MERGE to DONE in Pipeline for QA Mar 25, 2025
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Projects

    Archived in project

    Development

    Successfully merging this pull request may close these issues.

    Error for the user when he entered wrong PIN during Keycard sign TX

    6 participants