Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore_: use status.go v2 endpoint #21450

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from
Open

Conversation

qfrank
Copy link
Contributor

@qfrank qfrank commented Oct 17, 2024

this is a followup PR for PR 21312

related status-go PR

new endpoints updated in this PR:

  • verifyAccountPasswordV2 / changeDatabasePasswordV2 (change password)
  • verifyDatabasePasswordV2 (no usage)
  • deleteMultiaccountV2 (delete profile)
  • convertToKeycardAccountV2 (no usage)
  • multiformatDeserializePublicKeyV2 (add contact via scanning contact QR code)
  • sendTransactionV2 / encodeTransferV2 / encodeFunctionCallV2 (send transaction)
  • inputConnectionStringForBootstrappingV2 / inputConnectionStringForImportingKeypairsKeystoresV2 (local sync/pairing)
  • connectionChangeV2 (Offline/Online)
  • appStateChangeV2 (App to background/foreground, user profile image should display normally)
  • deleteImportedKeyV2 (no usage)
  • migrateKeyStoreDirV2 (login with keycard)
  • validateMnemonicV2 (recover from seed phrase)

For QA testing, pls ignore no usage endpoints like verifyDatabasePasswordV2, we should ensure the relate feature which mentioned in brackets works as before. Also we should ensure there's no sensitive information like password/mnemonic logged in requests.log

status: ready.

NOTE: Hope someone know OC could take a deep review as the OC code was generated by AI cc @siddarthkay

@status-im-auto
Copy link
Member

status-im-auto commented Oct 17, 2024

Jenkins Builds

Click to see older builds (44)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 69deda5 #1 2024-10-17 10:55:34 ~6 min tests 📄log
69deda5 #1 2024-10-17 10:55:42 ~6 min android-e2e 📄log
69deda5 #1 2024-10-17 10:57:00 ~7 min android 📄log
✔️ 69deda5 #1 2024-10-17 10:59:37 ~10 min ios 📱ipa 📲
✔️ d03630c #2 2024-10-18 03:16:47 ~6 min tests 📄log
d03630c #2 2024-10-18 03:16:57 ~6 min android-e2e 📄log
d03630c #2 2024-10-18 03:17:58 ~7 min android 📄log
✔️ d03630c #2 2024-10-18 03:18:41 ~8 min ios 📱ipa 📲
✔️ 8fcef2b #3 2024-10-18 05:53:00 ~5 min tests 📄log
8fcef2b #3 2024-10-18 05:53:18 ~5 min android-e2e 📄log
8fcef2b #3 2024-10-18 05:55:05 ~7 min android 📄log
✔️ 8fcef2b #3 2024-10-18 05:56:34 ~8 min ios 📱ipa 📲
✔️ d7f4c51 #4 2024-10-18 06:49:44 ~4 min tests 📄log
✔️ d7f4c51 #4 2024-10-18 06:51:54 ~7 min android-e2e 🤖apk 📲
✔️ d7f4c51 #4 2024-10-18 06:53:00 ~8 min android 🤖apk 📲
✔️ d7f4c51 #4 2024-10-18 06:53:27 ~8 min ios 📱ipa 📲
✔️ 0011971 #5 2024-10-21 03:08:19 ~5 min tests 📄log
✔️ 0011971 #5 2024-10-21 03:11:08 ~8 min android 🤖apk 📲
✔️ 0011971 #5 2024-10-21 03:11:48 ~9 min android-e2e 🤖apk 📲
✔️ 0011971 #5 2024-10-21 03:12:41 ~9 min ios 📱ipa 📲
✔️ e8d5870 #6 2024-10-21 06:59:24 ~5 min tests 📄log
✔️ e8d5870 #6 2024-10-21 07:03:22 ~9 min ios 📱ipa 📲
✔️ e8d5870 #6 2024-10-21 07:03:30 ~9 min android-e2e 🤖apk 📲
✔️ e8d5870 #6 2024-10-21 07:05:06 ~10 min android 🤖apk 📲
✔️ e0b5d15 #7 2024-10-22 03:38:07 ~8 min ios 📱ipa 📲
✔️ e0b5d15 #7 2024-10-22 03:40:02 ~10 min tests 📄log
✔️ e0b5d15 #7 2024-10-22 03:47:50 ~18 min android-e2e 🤖apk 📲
✔️ e0b5d15 #7 2024-10-22 03:48:56 ~19 min android 🤖apk 📲
✔️ 815b249 #9 2024-10-29 12:39:38 ~12 min android-e2e 🤖apk 📲
✔️ 815b249 #9 2024-10-29 12:41:19 ~14 min ios 📱ipa 📲
✔️ 815b249 #9 2024-10-29 12:41:56 ~15 min tests 📄log
✔️ 815b249 #9 2024-10-29 12:43:26 ~16 min android 🤖apk 📲
✔️ f3068cf #10 2024-10-29 13:06:59 ~9 min ios 📱ipa 📲
✔️ f3068cf #10 2024-10-29 13:13:07 ~16 min tests 📄log
✔️ f3068cf #10 2024-10-29 13:14:38 ~17 min android-e2e 🤖apk 📲
✔️ f3068cf #10 2024-10-29 13:15:45 ~18 min android 🤖apk 📲
✔️ 7e23b16 #11 2024-10-30 07:28:31 ~4 min tests 📄log
✔️ 7e23b16 #11 2024-10-30 07:32:50 ~8 min android-e2e 🤖apk 📲
✔️ 7e23b16 #11 2024-10-30 07:33:16 ~9 min ios 📱ipa 📲
✔️ 7e23b16 #11 2024-10-30 07:34:44 ~10 min android 🤖apk 📲
✔️ 73db641 #12 2024-11-12 04:17:11 ~5 min tests 📄log
✔️ 73db641 #12 2024-11-12 04:19:57 ~7 min android-e2e 🤖apk 📲
✔️ 73db641 #12 2024-11-12 04:20:55 ~8 min ios 📱ipa 📲
✔️ 73db641 #12 2024-11-12 04:21:25 ~9 min android 🤖apk 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 0a21ecc #13 2024-11-14 11:12:03 ~4 min tests 📄log
✔️ 0a21ecc #13 2024-11-14 11:13:43 ~6 min android-e2e 🤖apk 📲
✔️ 0374cb4 #14 2024-11-14 11:20:41 ~6 min tests 📄log
✔️ 0374cb4 #14 2024-11-14 11:22:02 ~7 min android-e2e 🤖apk 📲
✔️ 0374cb4 #14 2024-11-14 11:25:15 ~11 min android 🤖apk 📲
✔️ 0374cb4 #14 2024-11-14 11:25:58 ~11 min ios 📱ipa 📲

@qfrank qfrank force-pushed the chore/use_v2_endpoints branch 2 times, most recently from d7f4c51 to 0011971 Compare October 21, 2024 03:02
@siddarthkay
Copy link
Contributor

For objective-c code review I'd also tag @briansztamfater
from my perspective if it works I don't have much of a problem in coding style so as long as this PR passes testing by QA I am good :D

I'll also review later in the day, Thanks for tagging @qfrank

Copy link
Member

@briansztamfater briansztamfater left a comment

Choose a reason for hiding this comment

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

Thanks for tagging / requesting review @siddarthkay @qfrank!

From the Objective-C side looks good to me, I only added two minor comments. Seems like the new endpoint requires the parameters to be sent as a json string, and although I haven't written Objective-C code for some time, the approach looks correct. Let me know if you need help debugging it.

Copy link
Member

@smohamedjavid smohamedjavid left a comment

Choose a reason for hiding this comment

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

Nice work! @qfrank

utils.executeRunnableStatusGoMethod(
{ Statusgo.verifyAccountPassword(newKeystoreDir, address, password) },
{ Statusgo.verifyAccountPasswordV2(jsonParams.toString()) },
Copy link
Contributor

@siddarthkay siddarthkay Oct 22, 2024

Choose a reason for hiding this comment

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

I couldn't find verifyAccountPasswordV2 in status-go changes

@status-im-auto
Copy link
Member

88% of end-end tests have passed

Total executed tests: 8
Failed tests: 1
Expected to fail tests: 0
Passed tests: 7
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: 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:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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

    Passed tests (7)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    2. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133
    Device sessions

    Class TestWalletMultipleDevice:

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

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    Class TestWalletOneDevice:

    1. test_wallet_add_remove_regular_account, id: 727231
    2. test_wallet_balance_mainnet, id: 740490

    @qfrank
    Copy link
    Contributor Author

    qfrank commented Oct 22, 2024

    I couldn't find verifyAccountPasswordV2 in status-go changes

    here @siddarthkay

    @siddarthkay
    Copy link
    Contributor

    I couldn't find verifyAccountPasswordV2 in status-go changes

    here @siddarthkay

    my bad, when I searched your PR, initially diffs for large file were not rendered by Github UI, hence search returned no results

    @pavloburykh
    Copy link
    Contributor

    pavloburykh commented Oct 22, 2024

    @qfrank thank you for the PR. Could you please summarise what exactly should be QAed in this PR? I have read comments/description of previous PRs and still not sure I understand correctly. Thanks.

    @pavloburykh pavloburykh self-assigned this Oct 22, 2024
    @qfrank
    Copy link
    Contributor Author

    qfrank commented Oct 22, 2024

    @qfrank thank you for the PR. Could you please summarise what exactly should be QAed in this PR? I have read comments/description of previous PRs and still not sure I understand correctly. Thanks.

    Thank you for taking this, updated the PR description :) @pavloburykh

    @status-im-auto
    Copy link
    Member

    62% of end-end tests have passed

    Total executed tests: 55
    Failed tests: 21
    Expected to fail tests: 0
    Passed tests: 34
    
    IDs of failed tests: 702845,702840,702894,703086,702947,702958,702786,702844,702841,702839,702809,702838,704615,702948,702859,703629,702957,702843,739307,703503,703194 
    

    Failed tests (21)

    Click to expand
  • Rerun failed tests

  • Class TestCommunityMultipleDeviceMerged:

    1. test_community_emoji_send_copy_paste_reply, id: 702840
    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    2. test_community_contact_block_unblock_offline, id: 702894

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    3. test_community_mark_all_messages_as_read, id: 703086

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    4. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    5. test_community_unread_messages_badge, id: 702841

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    6. test_community_message_delete, id: 702839

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    7. test_community_message_send_check_timestamps_sender_username, id: 702838

    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:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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

    8. test_community_edit_delete_message_when_offline, id: 704615

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    9. test_community_one_image_send_reply, id: 702859

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    10. test_community_message_edit, id: 702843

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    11. test_community_several_images_send_reply, id: 703194

    Test setup failed: critical/chats/test_public_chat_browsing.py:350: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Device 1: Tap on found: Button
    # STEP: Check Status community tags in the Discover communities screen

    critical/chats/test_public_chat_browsing.py:302: in test_community_discovery
        self.errors.verify_no_errors()
    base_test_case.py:192: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Community 'Status' is not in the Discover Communities list.
    



    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_deep_links_communities, id: 739307

    Device 1: Waiting 35s for dapp to load
    Device 1: Find Text by accessibility id: community-title

    critical/test_deep_and_universal_links.py:105: in test_deep_links_communities
        if self.community_view.community_title.text != text:
    ../views/base_element.py:432: in text
        text = self.find_element().text
    ../views/base_element.py:79: in find_element
        raise NoSuchElementException(
     Device 1: Text by accessibility id: `community-title` 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
    



    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947

    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: activity_center/test_activity_center.py:274: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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

    Class TestActivityMultipleDevicePRTwo:

    1. test_activity_center_admin_notification_accept_swipe, id: 702958

    Test setup failed: activity_center/test_activity_center.py:414: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    2. test_activity_center_mentions, id: 702957

    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: activity_center/test_activity_center.py:414: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_leave, id: 702845

    Test setup failed: critical/chats/test_public_chat_browsing.py:874: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    2. test_community_mentions_push_notification, id: 702786

    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:874: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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

    3. test_community_markdown_support, id: 702809

    Test setup failed: critical/chats/test_public_chat_browsing.py:874: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    4. test_community_hashtag_links_to_community_channels, id: 702948

    Test setup failed: critical/chats/test_public_chat_browsing.py:874: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    5. test_community_join_when_node_owner_offline, id: 703629

    Test setup failed: critical/chats/test_public_chat_browsing.py:874: in prepare_devices
        self.community_2.join_community()
    ../views/chat_view.py:420: in join_community
        self.join_button.wait_and_click(120)
    ../views/base_element.py:100: in wait_and_click
        self.wait_for_visibility_of_element(sec)
    ../views/base_element.py:147: 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
    



    Passed tests (34)

    Click to expand

    Class TestOneToOneChatMultipleSharedDevicesNewUiTwo:

    1. test_1_1_chat_mute_chat, id: 703496
    Device sessions

    2. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    3. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    2. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    3. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133
    Device sessions

    4. test_community_undo_delete_message, id: 702869
    Device sessions

    5. test_community_mute_community_and_channel, id: 703382
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851
    Device sessions

    2. test_activity_center_contact_request_decline, id: 702850
    Device sessions

    3. test_add_contact_field_validation, id: 702777
    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613
    Device sessions

    2. test_links_deep_links_profile, id: 702775
    Device sessions

    Class TestWalletMultipleDevice:

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

    Class TestFallbackMultipleDevice:

    1. test_fallback_sync_with_error, id: 740220
    Device sessions

    2. test_fallback_with_correct_seed_phrase, id: 740221
    Device sessions

    3. test_fallback_validate_seed_phrase, id: 740222
    Device sessions

    Class TestWalletOneDevice:

    1. test_wallet_add_remove_regular_account, id: 727231
    2. test_wallet_balance_mainnet, id: 740490

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_reactions, id: 703202
    Device sessions

    2. test_group_chat_join_send_text_messages_push, id: 702807
    Device sessions

    3. test_group_chat_offline_pn, id: 702808
    Device sessions

    4. test_group_chat_pin_messages, id: 702732
    Device sessions

    5. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    6. test_group_chat_mute_chat, id: 703495
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_edit_message, id: 702855
    Device sessions

    2. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    3. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    4. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    5. test_1_1_chat_text_message_delete_push_disappear, id: 702733
    Device sessions

    6. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    7. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    8. test_1_1_chat_send_image_save_and_share, id: 703391
    Device sessions

    @pavloburykh
    Copy link
    Contributor

    Hey @qfrank thanks for the PR. Please take a look at the issue.

    ISSUE 1 Cannot unmarshal string into Go struct... error when scanning Sync code by IOS

    Reproducing only on IOS. iPhone 15, IOS 17.6.1

    Steps:

    1. Generate Sync QR on Devce A
    2. Scan Sync QR by Device B (IOS)
    3. Observe the error

    Actual result: Cannot unmarshal string into Go struct... error. Cannot proceed with sync.

    logs (51).zip
    photo_2024-10-23 17 46 27

    @ilmotta
    Copy link
    Contributor

    ilmotta commented Oct 23, 2024

    Hey @qfrank @pavloburykh even if this PR is approved for merging, let's wait until the QA team has tested the release build. Once we get the preliminary results we can re-check and see if it's okay to merge.

    This is a simple strategy to reduce the risk and to avoid rebase hell in release branches. Large and/or important refactors that can affect the whole app should ideally wait until the release testing process is approaching completion/stability.

    I hope that's a sensible thing to ask 🙏🏼 Thank you

    @ilmotta
    Copy link
    Contributor

    ilmotta commented Oct 29, 2024

    FYI @qfrank, just a few more days of waiting and if nothing outstanding appears from the release testing, this PR can be merged with peace of mind 🕊️ Maybe this Friday, Nov 01 we will consider mobile 2.31 tested and ready to be shipped (we won't release yet due to other processes, that will be for next week).

    @qfrank
    Copy link
    Contributor Author

    qfrank commented Oct 30, 2024

    Hey @qfrank thanks for the PR. Please take a look at the issue.

    ISSUE 1 Cannot unmarshal string into Go struct... error when scanning Sync code by IOS

    Reproducing only on IOS. iPhone 15, IOS 17.6.1

    Steps:

    1. Generate Sync QR on Devce A
    2. Scan Sync QR by Device B (IOS)
    3. Observe the error

    Actual result: Cannot unmarshal string into Go struct... error. Cannot proceed with sync.

    logs (51).zip photo_2024-10-23 17 46 27

    issue 1 should be fixed

    @pavloburykh
    Copy link
    Contributor

    issue 1 should be fixed

    Thanks @qfrank issue 1 is fixed. As we have agreed, will wait for #21550 and then proceed with testing of this PR.

    status-im/status-go@3951129...399c3d5
    
    * feat: use status backend server
    
    * chore: add env variable STATUS_BACKEND_SERVER_IMAGE_SERVER_URI_PREFIX
    
    * update doc
    
    * fix_: image_server lint issue
    @qfrank
    Copy link
    Contributor Author

    qfrank commented Nov 14, 2024

    Hi @pavloburykh , the PR is ready to do manual QA now, we need to have a full regression test since this PR touch all of the function in native_module/core.cljs , it should work as it's on branch develop 🙏

    @status-im-auto
    Copy link
    Member

    60% of end-end tests have passed

    Total executed tests: 55
    Failed tests: 2
    Expected to fail tests: 20
    Passed tests: 33
    
    IDs of failed tests: 703503,703202 
    
    IDs of expected to fail tests: 702809,703194,702859,702957,702840,703086,702948,702894,704615,702786,702839,702947,702838,702844,702843,739307,702845,702958,703629,702841 
    

    Failed tests (2)

    Click to expand
  • Rerun failed tests

  • Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Device 1: Tap on found: Button
    # STEP: Check Status community tags in the Discover communities screen

    critical/chats/test_public_chat_browsing.py:303: in test_community_discovery
        self.errors.verify_no_errors()
    base_test_case.py:192: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Community 'Status' is not in the Discover Communities list.
    



    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_reactions, id: 703202

    ## Signed in successfully!
    Device 1: Looking for chat: 'ohuiyey'

    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:703: in urlopen
        httplib_response = self._make_request(
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:449: in _make_request
        six.raise_from(e, None)
    <string>:3: in raise_from
        ???
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:444: in _make_request
        httplib_response = conn.getresponse()
    /usr/lib/python3.10/http/client.py:1375: in getresponse
        response.begin()
    /usr/lib/python3.10/http/client.py:318: in begin
        version, status, reason = self._read_status()
    /usr/lib/python3.10/http/client.py:287: in _read_status
        raise RemoteDisconnected("Remote end closed connection without"
    E   http.client.RemoteDisconnected: Remote end closed connection without response
    
    During handling of the above exception, another exception occurred:
    critical/chats/test_group_chat.py:190: in test_group_chat_reactions
        self.homes[0].get_chat(self.chat_name).click()
    ../views/home_view.py:384: in get_chat
        if self.notifications_unread_badge.is_element_displayed(30):
    ../views/base_element.py:221: in is_element_displayed
        return self.wait_for_visibility_of_element(sec, ignored_exceptions=ignored_exceptions)
    ../views/base_element.py:145: in wait_for_visibility_of_element
        .until(expected_conditions.visibility_of_element_located((self.by, self.locator)))
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/selenium/webdriver/support/wait.py:86: in until
        value = method(self._driver)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/selenium/webdriver/support/expected_conditions.py:152: in _predicate
        return _element_if_visible(driver.find_element(*locator))
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/appium/webdriver/webdriver.py:409: in find_element
        return self.execute(RemoteCommand.FIND_ELEMENT, {'using': by, 'value': value})['value']
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/selenium/webdriver/remote/webdriver.py:343: in execute
        response = self.command_executor.execute(driver_command, params)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/selenium/webdriver/remote/remote_connection.py:291: in execute
        return self._request(command_info[0], url, body=data)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/selenium/webdriver/remote/remote_connection.py:312: in _request
        response = self._conn.request(method, url, body=body, headers=headers)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/request.py:78: in request
        return self.request_encode_body(
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/request.py:170: in request_encode_body
        return self.urlopen(method, url, **extra_kw)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/poolmanager.py:376: in urlopen
        response = conn.urlopen(method, u.request_uri, **kw)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:787: in urlopen
        retries = retries.increment(
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/util/retry.py:550: in increment
        raise six.reraise(type(error), error, _stacktrace)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/packages/six.py:769: in reraise
        raise value.with_traceback(tb)
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:703: in urlopen
        httplib_response = self._make_request(
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:449: in _make_request
        six.raise_from(e, None)
    <string>:3: in raise_from
        ???
    ../../../../status-app-prs-rerun@tmp/venv/lib/python3.10/site-packages/urllib3/connectionpool.py:444: in _make_request
        httplib_response = conn.getresponse()
    /usr/lib/python3.10/http/client.py:1375: in getresponse
        response.begin()
    /usr/lib/python3.10/http/client.py:318: in begin
        version, status, reason = self._read_status()
    /usr/lib/python3.10/http/client.py:287: in _read_status
        raise RemoteDisconnected("Remote end closed connection without"
     ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
    



    Device sessions

    Expected to fail tests (20)

    Click to expand

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_several_images_send_reply, id: 703194

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    2. test_community_one_image_send_reply, id: 702859

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    3. test_community_emoji_send_copy_paste_reply, id: 702840

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    4. test_community_mark_all_messages_as_read, id: 703086

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    5. test_community_contact_block_unblock_offline, id: 702894

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    6. test_community_edit_delete_message_when_offline, id: 704615

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    7. test_community_message_delete, id: 702839

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    8. test_community_message_send_check_timestamps_sender_username, id: 702838

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    9. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    10. test_community_message_edit, id: 702843

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    11. test_community_unread_messages_badge, id: 702841

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    Class TestActivityMultipleDevicePR:

    1. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    Class TestActivityMultipleDevicePRTwo:

    1. test_activity_center_mentions, id: 702957

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    2. test_activity_center_admin_notification_accept_swipe, id: 702958

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_markdown_support, id: 702809

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    2. test_community_hashtag_links_to_community_channels, id: 702948

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    3. test_community_mentions_push_notification, id: 702786

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    4. test_community_leave, id: 702845

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    5. test_community_join_when_node_owner_offline, id: 703629

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    Class TestDeepLinksOneDevice:

    1. test_deep_links_communities, id: 739307

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    Passed tests (33)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    2. test_community_undo_delete_message, id: 702869
    Device sessions

    3. test_restore_multiaccount_with_waku_backup_remove_profile_switch, id: 703133
    Device sessions

    4. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    5. test_community_mute_community_and_channel, id: 703382
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    Device sessions

    2. test_group_chat_mute_chat, id: 703495
    Device sessions

    3. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    4. test_group_chat_join_send_text_messages_push, id: 702807
    Device sessions

    5. test_group_chat_offline_pn, id: 702808
    Device sessions

    Class TestFallbackMultipleDevice:

    1. test_fallback_sync_with_error, id: 740220
    Device sessions

    2. test_fallback_validate_seed_phrase, id: 740222
    Device sessions

    3. test_fallback_with_correct_seed_phrase, id: 740221
    Device sessions

    Class TestWalletMultipleDevice:

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

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    2. test_1_1_chat_text_message_delete_push_disappear, id: 702733
    Device sessions

    3. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    4. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    5. test_1_1_chat_edit_message, id: 702855
    Device sessions

    6. test_1_1_chat_send_image_save_and_share, id: 703391
    Device sessions

    7. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    8. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_add_contact_field_validation, id: 702777
    Device sessions

    2. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851
    Device sessions

    3. test_activity_center_contact_request_decline, id: 702850
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUiTwo:

    1. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    2. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    3. test_1_1_chat_mute_chat, id: 703496
    Device sessions

    Class TestWalletOneDevice:

    1. test_wallet_add_remove_regular_account, id: 727231
    2. test_wallet_balance_mainnet, id: 740490

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613
    Device sessions

    2. test_links_deep_links_profile, id: 702775
    Device sessions

    @status-im-auto
    Copy link
    Member

    50% of end-end tests have passed

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

    Failed tests (1)

    Click to expand
  • Rerun failed tests

  • Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_reactions, id: 703202

    Device 2: Tap on found: Button
    Device 2: Attempt 0 is successful clicking close-activity-center

    Test setup failed: critical/chats/test_group_chat.py:55: in prepare_devices
        self.loop.run_until_complete(
    /usr/lib/python3.10/asyncio/base_events.py:649: in run_until_complete
        return future.result()
    __init__.py:52: in run_in_parallel
        returns.append(await k)
    /usr/lib/python3.10/concurrent/futures/thread.py:58: in run
        result = self.fn(*self.args, **self.kwargs)
    ../views/home_view.py:418: in handle_contact_request
        chat_element.accept_contact_request()
    ../views/home_view.py:170: in accept_contact_request
        self.handle_cr("accept-contact-request")
    ../views/home_view.py:167: in handle_cr
        ).wait_for_rendering_ended_and_click()
    ../views/base_element.py:163: in wait_for_rendering_ended_and_click
        self.wait_for_visibility_of_element(20)
    ../views/base_element.py:147: in wait_for_visibility_of_element
        raise TimeoutException(
     Device 2: Button by xpath:`//*[contains(@text, 'user admin')]/ancestor::*[@content-desc='activity']/*[@content-desc="accept-contact-request"]` is not found on the screen after wait_for_visibility_of_element
    



    Device sessions

    Passed tests (1)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503
    Device sessions

    @status-im-auto
    Copy link
    Member

    88% of end-end tests have passed

    Total executed tests: 8
    Failed tests: 0
    Expected to fail tests: 1
    Passed tests: 7
    
    IDs of expected to fail tests: 702843 
    

    Expected to fail tests (1)

    Click to expand

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_message_edit, id: 702843
    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Skipped due to waku issue on staging fleet]]

    Passed tests (7)

    Click to expand

    Class TestWalletMultipleDevice:

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

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_profile_switch, id: 703133
    Device sessions

    2. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    Class TestWalletOneDevice:

    1. test_wallet_add_remove_regular_account, id: 727231
    2. test_wallet_balance_mainnet, id: 740490

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    @status-im-auto
    Copy link
    Member

    100% of end-end tests have passed

    Total executed tests: 1
    Failed tests: 0
    Expected to fail tests: 0
    Passed tests: 1
    

    Passed tests (1)

    Click to expand

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_reactions, id: 703202
    Device sessions

    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    Status: IN TESTING
    Development

    Successfully merging this pull request may close these issues.

    7 participants