status-im / status-mobile

a free (libre) open source, mobile OS for Ethereum
https://status.app
Mozilla Public License 2.0
3.91k stars 984 forks source link

Fix: only display spectated communities in opened tab #21548

Closed seanstrom closed 2 weeks ago

seanstrom commented 3 weeks ago

fixes #20762

Summary

Platforms

Areas that maybe impacted

Functional

Steps to test

After Changes

https://github.com/user-attachments/assets/bfeebc32-bbce-48d0-8a33-596a5cf8d3ed

status: ready

status-im-auto commented 3 weeks ago

Jenkins Builds

Click to see older builds (4) | :grey_question: | Commit | :hash: | Finished (UTC) | Duration | Platform | Result | |-|-|-|-|-|-|-| | :heavy_check_mark: | b76d75ac | [#1](https://ci.status.im/job/status-mobile/job/prs/job/tests/job/PR-21548/1/) | 2024-11-01 18:28:49 | ~5 min | `tests` | [:page_facing_up:`log`](https://status-im-mobile-prs.ams3.cdn.digitaloceanspaces.com/StatusIm-Mobile-241101-182339-b76d75-pr21548-tests.log) | | :heavy_check_mark: | b76d75ac | [#1](https://ci.status.im/job/status-mobile/job/prs/job/android/job/PR-21548/1/) | 2024-11-01 18:30:47 | ~7 min | `android` | [:robot:`apk`](https://status-im-mobile-prs.ams3.cdn.digitaloceanspaces.com/StatusIm-Mobile-241101-182339-b76d75-pr21548-arm64-v8a.apk) [:calling:](https://chart.apis.google.com/chart?cht=qr&chs=400x400&chld=L%7C%0A1&chl=https%3A%2F%2Fstatus-im-mobile-prs.ams3.cdn.digitaloceanspaces.com%2FStatusIm-Mobile-241101-182339-b76d75-pr21548-arm64-v8a.apk)| | :heavy_check_mark: | b76d75ac | [#1](https://ci.status.im/job/status-mobile/job/prs/job/android-e2e/job/PR-21548/1/) | 2024-11-01 18:31:51 | ~8 min | `android-e2e` | [:robot:`apk`](https://status-im-mobile-prs.ams3.cdn.digitaloceanspaces.com/StatusIm-Mobile-241101-182339-b76d75-pr21548-x86_64.apk) [:calling:](https://chart.apis.google.com/chart?cht=qr&chs=400x400&chld=L%7C%0A1&chl=https%3A%2F%2Fstatus-im-mobile-prs.ams3.cdn.digitaloceanspaces.com%2FStatusIm-Mobile-241101-182339-b76d75-pr21548-x86_64.apk)| | :heavy_check_mark: | b76d75ac | [#1](https://ci.status.im/job/status-mobile/job/prs/job/ios/job/PR-21548/1/) | 2024-11-01 18:33:04 | ~9 min | `ios` | [:iphone:`ipa`](https://i.diawi.com/N5VZeZ) [:calling:](https://chart.apis.google.com/chart?cht=qr&chs=400x400&chld=L%7C%0A1&chl=https%3A%2F%2Fi.diawi.com%2FN5VZeZ)|
:grey_question: Commit :hash: Finished (UTC) Duration Platform Result
:heavy_check_mark: 05b04c8b #2 2024-11-04 16:18:20 ~4 min tests :page_facing_up:log
:heavy_check_mark: 05b04c8b #2 2024-11-04 16:21:09 ~7 min android-e2e :robot:apk :calling:
:heavy_check_mark: 05b04c8b #2 2024-11-04 16:21:58 ~8 min android :robot:apk :calling:
:heavy_check_mark: 05b04c8b #2 2024-11-04 16:22:37 ~8 min ios :iphone:ipa :calling:
:heavy_check_mark: df440910 #3 2024-11-05 21:28:09 ~4 min tests :page_facing_up:log
:heavy_check_mark: df440910 #3 2024-11-05 21:31:32 ~7 min android-e2e :robot:apk :calling:
:heavy_check_mark: df440910 #3 2024-11-05 21:32:18 ~8 min android :robot:apk :calling:
:heavy_check_mark: df440910 #3 2024-11-05 21:32:46 ~8 min ios :iphone:ipa :calling:
status-im-auto commented 2 weeks ago

62% of end-end tests have passed

Total executed tests: 8
Failed tests: 3
Expected to fail tests: 0
Passed tests: 5
IDs of failed tests: 703133,702745,702843 

Failed tests (3)

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

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745

    Device 2: Find `MemberPhoto` by `xpath`: `//*[starts-with(@text,'profile_photo')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']//*[@content-desc='user-avatar']`
    Device 2: Image differs from template to 7.179984298406862 percents

    ``` critical/chats/test_1_1_public_chats.py:321: in test_1_1_chat_non_latin_messages_stack_update_profile_photo 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))])) Image of user in 1-1 chat is too different from template! ```

    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133

    # STEP: Check that removed user is not shown in the list anymore
    Device 1: Wait for element `Button` for max 30s and click when it is available

    ``` critical/chats/test_public_chat_browsing.py:240: in test_restore_multiaccount_with_waku_backup_remove_switch self.sign_in.show_profiles_button.wait_and_click() ../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 1: Button by accessibility id:`show-profiles` is not found on the screen after wait_for_visibility_of_element ```

    Device sessions

    Passed tests (5)

    Click to expand

    Class TestWalletMultipleDevice:

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

    Class TestWalletOneDevice:

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

    Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    Horupa-Olena commented 2 weeks ago

    @seanstrom Thank you for the PR. Could you clarify—if a user leaves a community, does the community not return to "Open" afterwards?

    seanstrom commented 2 weeks ago

    Hey @Horupa-Olena 👋

    Based on how it’s implemented in status-go, it seems a community is not considered opened/spectated after leaving the community.

    So it seems that the intended behavior is that a community will not reappear in the opened tab after leaving the community.

    Horupa-Olena commented 2 weeks ago

    @seanstrom Understood, thank you! In that case, this PR can be merged.