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

Fix loading screen for fetching community #19968

Merged
merged 1 commit into from May 13, 2024

Conversation

Parveshdhull
Copy link
Member

@Parveshdhull Parveshdhull commented May 10, 2024

fixes #19555

Summary

I guess any solution works for now, but most important is to get rid of the red square around the text

Please let me know if this looks ok or needs to be improved.

Develop Fetching Community Failed to fetch
Screenshot
Screenshot
Screenshot

Testing

Please lightly test PR for fetching community screen and let me know if anything needs to be improved. (including design)

status: ready

@status-github-bot status-github-bot bot added this to REVIEW in Pipeline for QA May 10, 2024
@status-im-auto
Copy link
Member

status-im-auto commented May 10, 2024

Jenkins Builds

Click to see older builds (24)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 76b7b49 #1 2024-05-10 09:42:45 ~4 min tests 📄log
✔️ 76b7b49 #1 2024-05-10 09:46:20 ~8 min android-e2e 🤖apk 📲
✔️ 76b7b49 #1 2024-05-10 09:46:22 ~8 min android 🤖apk 📲
✔️ 76b7b49 #1 2024-05-10 09:57:00 ~19 min ios 📱ipa 📲
✔️ b4d8983 #2 2024-05-10 10:03:15 ~5 min tests 📄log
✔️ b4d8983 #2 2024-05-10 10:03:58 ~5 min android-e2e 🤖apk 📲
✔️ b4d8983 #2 2024-05-10 10:04:56 ~6 min android 🤖apk 📲
✔️ b4d8983 #2 2024-05-10 10:11:49 ~13 min ios 📱ipa 📲
✔️ e9b29e5 #3 2024-05-10 10:50:37 ~6 min tests 📄log
✔️ e9b29e5 #3 2024-05-10 10:52:29 ~8 min android-e2e 🤖apk 📲
✔️ e9b29e5 #3 2024-05-10 10:52:30 ~8 min android 🤖apk 📲
✔️ e9b29e5 #3 2024-05-10 10:56:40 ~12 min ios 📱ipa 📲
25e284d #4 2024-05-13 09:21:01 ~2 min tests 📄log
✔️ 25e284d #4 2024-05-13 09:25:08 ~6 min android-e2e 🤖apk 📲
✔️ 25e284d #4 2024-05-13 09:28:49 ~10 min ios 📱ipa 📲
✔️ 25e284d #4 2024-05-13 09:31:13 ~12 min android 🤖apk 📲
✔️ 6940f90 #5 2024-05-13 09:35:51 ~4 min tests 📄log
✔️ 6940f90 #5 2024-05-13 09:39:29 ~7 min android-e2e 🤖apk 📲
✔️ 6940f90 #5 2024-05-13 09:39:34 ~8 min android 🤖apk 📲
✔️ 6940f90 #5 2024-05-13 09:40:40 ~9 min ios 📱ipa 📲
✔️ b47482a #7 2024-05-13 13:27:23 ~5 min tests 📄log
✔️ b47482a #7 2024-05-13 13:28:00 ~6 min android 🤖apk 📲
✔️ b47482a #7 2024-05-13 13:29:07 ~7 min android-e2e 🤖apk 📲
✔️ b47482a #7 2024-05-13 13:32:57 ~11 min ios 📱ipa 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 2fc4b9d #8 2024-05-13 14:43:58 ~6 min tests 📄log
✔️ 2fc4b9d #8 2024-05-13 14:44:51 ~6 min android-e2e 🤖apk 📲
✔️ 2fc4b9d #8 2024-05-13 14:44:56 ~6 min android 🤖apk 📲
✔️ 2fc4b9d #8 2024-05-13 14:50:16 ~12 min ios 📱ipa 📲
✔️ e0bb1d6 #9 2024-05-13 15:17:18 ~5 min tests 📄log
✔️ e0bb1d6 #9 2024-05-13 15:18:49 ~6 min android-e2e 🤖apk 📲
✔️ e0bb1d6 #9 2024-05-13 15:19:19 ~7 min android 🤖apk 📲
✔️ e0bb1d6 #9 2024-05-13 15:20:35 ~8 min ios 📱ipa 📲

@Parveshdhull Parveshdhull self-assigned this May 10, 2024
@Parveshdhull Parveshdhull moved this from REVIEW to E2E Tests in Pipeline for QA May 10, 2024
@Parveshdhull Parveshdhull force-pushed the chore/improve-loading-screen-for-community branch from 76b7b49 to b4d8983 Compare May 10, 2024 09:57
@Parveshdhull
Copy link
Member Author

I am not sure if we need design review for this PR,as these designs are not implemented by design team 🤔

Copy link
Member

@clauxx clauxx 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!

a small preference, but i'd put the text below the image instead of the header, as I think the attention will be in the centre because of the cat 🐱. WDYT?

@Parveshdhull
Copy link
Member Author

Thank you @clauxx for reviewing the PR.

a small preference, but i'd put the text below the image instead of the header, as I think the attention will be in the centre because of the cat 🐱. WDYT?

Yes, this is what I had initially. But without title, close button looks weird. Maybe we can use some other title for the screen 🤔. Any suggestions?

@Parveshdhull
Copy link
Member Author

Parveshdhull commented May 10, 2024

Maybe we can use some other title for the screen

Community screen? or Community Overview?

@Parveshdhull
Copy link
Member Author

I think this also looks good

Screenshot

@clauxx
Copy link
Member

clauxx commented May 10, 2024

Thank you @clauxx for reviewing the PR.

a small preference, but i'd put the text below the image instead of the header, as I think the attention will be in the centre because of the cat 🐱. WDYT?

Yes, this is what I had initially. But without title, close button looks weird. Maybe we can use some other title for the screen 🤔. Any suggestions?

IMO it looks fine without a title, but up to you.

@status-im-auto
Copy link
Member

85% of end-end tests have passed

Total executed tests: 52
Failed tests: 6
Expected to fail tests: 2
Passed tests: 44
IDs of failed tests: 727230,704613,727229,702807,727232,702775 
IDs of expected to fail tests: 703495,703503 

Failed tests (6)

Click to expand
  • Rerun failed tests

  • Class TestWalletOneDevice:

    1. test_wallet_add_remove_watch_only_account, id: 727232

    Device 1: Find `EditBox` by `accessibility id`: `add-address-to-watch`
    Device 1: Type `0x8d2413447ff297d30bdc475f6d5cb00254685aae` to `EditBox`

    critical/test_wallet.py:190: in test_wallet_add_remove_watch_only_account
        self.wallet_view.add_watch_only_account(address=address_to_watch, account_name=new_account_name)
    ../views/wallet_view.py:120: in add_watch_only_account
        self.account_has_activity_label.wait_for_visibility_of_element()
    ../views/base_element.py:147: in wait_for_visibility_of_element
        raise TimeoutException(
     Device 1: Text by accessibility id:`account-has-activity` is not found on the screen after wait_for_visibility_of_element
    



    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613

    Device 1: Find Button by xpath: //*[@text="open community"]
    Device 1: Tap on found: Button

    critical/test_deep_and_universal_links.py:70: in test_links_open_universal_links_from_chat
        self.errors.verify_no_errors()
    base_test_case.py:190: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Community 'Open community for e2e' was not requested to join by the url https://status.app/c/G1AAAGR0G-IRb2YJD4lRXwLusAFnGrDHGNl6Wt55MIARwVYvarnO873011-fdVSz1kHSan-qq0G96vOaMqyTRhJnQV74KCUr#zQ3shb9irJR66rhG1E8sQZX8pDU3dpGm4daYSmPVDd2e73ewE
    



    Device sessions

    2. test_links_deep_links, id: 702775

    Device 1: Find BrowserTab by accessibility id: browser-stack-tab
    Device 1: Tap on found: BrowserTab

    critical/test_deep_and_universal_links.py:114: in test_links_deep_links
        self.errors.verify_no_errors()
    base_test_case.py:190: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Community 'Open community for e2e' was not requested to join by the deep link status.app://c/G1AAAGR0G-IRb2YJD4lRXwLusAFnGrDHGNl6Wt55MIARwVYvarnO873011-fdVSz1kHSan-qq0G96vOaMqyTRhJnQV74KCUr#zQ3shb9irJR66rhG1E8sQZX8pDU3dpGm4daYSmPVDd2e73ewE
    



    Device sessions

    Class TestWalletMultipleDevice:

    1. test_wallet_send_asset_from_drawer, id: 727230

    # STEP: Getting ETH amount in the wallet of the sender before transaction
    Device 1: Find WalletTab by accessibility id: wallet-stack-tab

    critical/test_wallet.py:117: in test_wallet_send_asset_from_drawer
        sender_balance, receiver_balance, eth_amount_sender, eth_amount_receiver = self._get_balances_before_tx()
    critical/test_wallet.py:39: in _get_balances_before_tx
        self.wallet_1.wallet_tab.click()
    ../views/base_element.py:90: in click
        element = self.find_element()
    ../views/base_element.py:79: in find_element
        raise NoSuchElementException(
     Device 1: WalletTab by accessibility id: `wallet-stack-tab` 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
    



    2. test_wallet_send_eth, id: 727229

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

    critical/test_wallet.py:109: in test_wallet_send_eth
        self.wallet_1.send_asset(address=self.receiver['address'], asset_name='Ether', amount=amount_to_send)
    ../views/wallet_view.py:99: in send_asset
        self.confirm_transaction()
    ../views/wallet_view.py:86: in confirm_transaction
        self.slide_and_confirm_with_password()
    ../views/wallet_view.py:80: in slide_and_confirm_with_password
        self.slide_button_track.slide()
    ../views/base_view.py:257: in slide
        self.swipe_right_on_element(width_percentage=1.3, start_x=100)
    ../views/base_element.py:308: in swipe_right_on_element
        location, size = self.get_element_coordinates()
    ../views/base_element.py:294: in get_element_coordinates
        element = self.find_element()
    ../views/base_element.py:79: 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
    



    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_join_send_text_messages_push, id: 702807

    Device 2: Find Text by xpath: //*[starts-with(@text,'Hey, admin!')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']//*[@content-desc='message-status']/android.widget.TextView
    Device 2: Text is Sent

    critical/chats/test_group_chat.py:95: in test_group_chat_join_send_text_messages_push
        self.chats[1].chat_element_by_text(message_to_admin).wait_for_status_to_be('Delivered', timeout=120)
    ../views/chat_view.py:225: in wait_for_status_to_be
        raise TimeoutException("Message status was not changed to %s, it's %s" % (expected_status, current_status))
     Message status was not changed to Delivered, it's Sent
    



    Device sessions

    Expected to fail tests (2)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Curated communities not loading, https://github.com//issues/17852]]

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_mute_chat, id: 703495

    # STEP: Change device time so chat will be unmuted by timer
    Device 2: Long press on ChatElement

    critical/chats/test_group_chat.py:464: in test_group_chat_mute_chat
        self.errors.verify_no_errors()
    base_test_case.py:190: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Chat is still muted after timeout 
    

    [[Chat is not unmuted after expected time: https://github.com//issues/19627]]

    Device sessions

    Passed tests (44)

    Click to expand

    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 TestActivityMultipleDevicePRTwo:

    1. test_activity_center_mentions, id: 702957
    Device sessions

    2. test_activity_center_admin_notification_accept_swipe, id: 702958
    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 TestCommunityMultipleDeviceMerged:

    1. test_community_several_images_send_reply, id: 703194
    Device sessions

    2. test_community_one_image_send_reply, id: 702859
    Device sessions

    3. test_community_emoji_send_copy_paste_reply, id: 702840
    Device sessions

    4. test_community_mark_all_messages_as_read, id: 703086
    Device sessions

    5. test_community_contact_block_unblock_offline, id: 702894
    Device sessions

    6. test_community_edit_delete_message_when_offline, id: 704615
    Device sessions

    7. test_community_message_delete, id: 702839
    Device sessions

    8. test_community_message_send_check_timestamps_sender_username, id: 702838
    Device sessions

    9. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844
    Device sessions

    10. test_community_message_edit, id: 702843
    Device sessions

    11. test_community_unread_messages_badge, id: 702841
    Device sessions

    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 TestWalletOneDevice:

    1. test_wallet_add_remove_regular_account, id: 727231
    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_markdown_support, id: 702809
    Device sessions

    2. test_community_hashtag_links_to_community_channels, id: 702948
    Device sessions

    3. test_community_mentions_push_notification, id: 702786
    Device sessions

    4. test_community_leave, id: 702845
    Device sessions

    5. test_community_join_when_node_owner_offline, id: 703629
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133
    Device sessions

    2. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    3. test_community_undo_delete_message, id: 702869
    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 TestActivityMultipleDevicePR:

    1. test_navigation_jump_to, id: 702936
    Device sessions

    2. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    Device sessions

    2. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    3. test_group_chat_reactions, id: 703202
    Device sessions

    4. test_group_chat_offline_pn, id: 702808
    Device sessions

    @pavloburykh pavloburykh self-assigned this May 10, 2024
    @pavloburykh pavloburykh moved this from E2E Tests to IN TESTING in Pipeline for QA May 10, 2024
    Copy link
    Member

    @seanstrom seanstrom left a comment

    Choose a reason for hiding this comment

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

    Looks good ✅
    I left one tiny comment 👍
    And maybe we should double-check with design about the header title?

    src/status_im/contexts/communities/overview/view.cljs Outdated Show resolved Hide resolved
    @Parveshdhull Parveshdhull force-pushed the chore/improve-loading-screen-for-community branch 2 times, most recently from 25e284d to 6940f90 Compare May 13, 2024 09:31
    @Parveshdhull
    Copy link
    Member Author

    Thank you @seanstrom for reviewing the PR.

    And maybe we should double-check with design about the header title?

    Hi @Francesca-G as designs for loading screen while fetching community is not available, I have created this PR to show a temporary screen and get rid of red box. (Please check out PR description for screenshots).

    Please let me know, if it looks ok or needs to be updated. Thank you

    Copy link

    @Francesca-G Francesca-G left a comment

    Choose a reason for hiding this comment

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

    Looks good to me 👍
    only design note is that usually empty states have 2 lines, so I'd add the second line at least for the "failed" state:

    Screenshot 2024-05-13 alle 14 49 54

    @Parveshdhull Parveshdhull force-pushed the chore/improve-loading-screen-for-community branch 2 times, most recently from 5e47966 to b47482a Compare May 13, 2024 13:21
    @Parveshdhull
    Copy link
    Member Author

    Thank you @Francesca-G for checking the PR.

    so I'd add the second line at least for the "failed" state:

    Updated failed state, thank you

    @pavloburykh
    Copy link
    Contributor

    @Parveshdhull thank you for the PR. No issues from my side. After @Francesca-G approves PR is ready for merge.

    @pavloburykh pavloburykh moved this from IN TESTING to Design review in Pipeline for QA May 13, 2024
    @Parveshdhull
    Copy link
    Member Author

    Thank you very much @pavloburykh for testing the PR. I think @Francesca-G already approved the PR, so its ok to merge.

    @Parveshdhull Parveshdhull force-pushed the chore/improve-loading-screen-for-community branch from b47482a to 2fc4b9d Compare May 13, 2024 14:37
    @Parveshdhull Parveshdhull force-pushed the chore/improve-loading-screen-for-community branch from 2fc4b9d to e0bb1d6 Compare May 13, 2024 15:11
    @Parveshdhull Parveshdhull merged commit a6cd974 into develop May 13, 2024
    6 checks passed
    @Parveshdhull Parveshdhull deleted the chore/improve-loading-screen-for-community branch May 13, 2024 15:22
    Pipeline for QA automation moved this from Design review to DONE May 13, 2024
    [quo/empty-state
    {:image (resources/get-themed-image :cat-in-box theme)
    :description (when-not fetching? (i18n/label :t/here-is-a-cat-in-a-box-instead))
    :title (if fetching? "Fetching community..." "Failed to fetch community")
    Copy link
    Contributor

    Choose a reason for hiding this comment

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

    @Parveshdhull, shouldn't this be in our translation files?

    Copy link
    Member

    Choose a reason for hiding this comment

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

    Ah yeah good catch 🙏
    Most likely should be in the translation file

    Copy link
    Member Author

    Choose a reason for hiding this comment

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

    hi @ajayesivan, @seanstrom, Thank you for reviewing PR.

    I didn't move them intentionally, as they were already in the file and I assumed that's what we do when we don't have proper designs and implementation is just temporary.
    wdyt, should we move them to the translations file or handle them when implementing this placeholder when we have designs?

    Copy link
    Member

    Choose a reason for hiding this comment

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

    I see what you mean about these labels being temporary 👍

    My only thought is that if this UI can be seen without a feature flag, then maybe the labels should be translatable. And later on if we want to change them we can decide to remove them or not. How does that sound?

    Copy link
    Member Author

    Choose a reason for hiding this comment

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

    sounds good, will move them to translations file in one of my PRs. thank you

    Copy link
    Member

    Choose a reason for hiding this comment

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

    Thank you @Parveshdhull 🙏

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

    Successfully merging this pull request may close these issues.

    Fix loading screen for fetching community
    8 participants