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

feat: add in-app notification, refactor toast #15642

Merged
merged 4 commits into from
Apr 17, 2023

Conversation

yqrashawn
Copy link
Contributor

@yqrashawn yqrashawn commented Apr 13, 2023

fixes #14296

  • refactor toast component
  • add in-app notification component
  • add in-app notification preview
  • component test

reuse the same :toasts/upsert event

(rf/dispatch [:toasts/upsert
              {...
               :type :notification
               ...}])

status: wip

@status-im-auto
Copy link
Member

status-im-auto commented Apr 13, 2023

Jenkins Builds

Click to see older builds (13)
Commit #️⃣ Finished (UTC) Duration Platform Result
4e96e11 #1 2023-04-13 12:51:06 ~4 min tests 📄log
✔️ 4e96e11 #1 2023-04-13 12:53:08 ~6 min android-e2e 🤖apk 📲
✔️ 4e96e11 #1 2023-04-13 12:53:28 ~6 min android 🤖apk 📲
✔️ 4e96e11 #1 2023-04-13 12:54:01 ~7 min ios 📱ipa 📲
3e76ee8 #2 2023-04-14 02:18:32 ~4 min tests 📄log
✔️ 3e76ee8 #2 2023-04-14 02:19:52 ~5 min android-e2e 🤖apk 📲
✔️ 3e76ee8 #2 2023-04-14 02:20:14 ~6 min android 🤖apk 📲
✔️ 3e76ee8 #2 2023-04-14 02:23:03 ~8 min ios 📱ipa 📲
dbc1369 #3 2023-04-14 08:53:43 ~3 min tests 📄log
ddf8c71 #4 2023-04-14 08:59:02 ~3 min tests 📄log
✔️ ddf8c71 #4 2023-04-14 09:01:44 ~6 min ios 📱ipa 📲
✔️ ddf8c71 #4 2023-04-14 09:02:10 ~6 min android-e2e 🤖apk 📲
✔️ ddf8c71 #4 2023-04-14 09:02:13 ~6 min android 🤖apk 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 3ed6efd #5 2023-04-14 12:16:18 ~6 min android 🤖apk 📲
✔️ 3ed6efd #5 2023-04-14 12:16:18 ~6 min android-e2e 🤖apk 📲
✔️ 3ed6efd #5 2023-04-14 12:16:25 ~6 min tests 📄log
✔️ 3ed6efd #5 2023-04-14 12:16:44 ~7 min ios 📱ipa 📲
✔️ fd0a527 #6 2023-04-17 02:32:16 ~6 min tests 📄log
✔️ fd0a527 #6 2023-04-17 02:32:18 ~6 min android 🤖apk 📲
✔️ fd0a527 #6 2023-04-17 02:32:19 ~6 min android-e2e 🤖apk 📲
✔️ fd0a527 #6 2023-04-17 02:36:29 ~10 min ios 📱ipa 📲

src/quo2/core.cljs Outdated Show resolved Hide resolved
@yqrashawn yqrashawn force-pushed the feat/in-app-notification branch 2 times, most recently from 3e76ee8 to dbc1369 Compare April 14, 2023 08:49
@yqrashawn yqrashawn marked this pull request as ready for review April 14, 2023 08:53
@yqrashawn yqrashawn changed the title feat: add in-app notification, refactor toast [WIP] feat: add in-app notification, refactor toast Apr 14, 2023
@yqrashawn yqrashawn requested a review from J-Son89 April 14, 2023 08:56
@yqrashawn
Copy link
Contributor Author

@J-Son89 fixed above comments

@J-Son89
Copy link
Contributor

J-Son89 commented Apr 14, 2023

nice work with the refactors too :D

@status-im-auto
Copy link
Member

66% of end-end tests have passed

Total executed tests: 29
Failed tests: 10
Passed tests: 19
IDs of failed tests: 702840,702844,702894,702850,702841,702936,702839,702838,702742,702843 

Failed tests (10)

Click to expand
  • Rerun failed tests

  • Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742

    Device 1: Find `ChatMessageInput` by `accessibility id`: `chat-message-input`
    Device 1: Clear text in `ChatMessageInput`

    critical/test_public_chat_browsing.py:352: in test_community_copy_and_paste_message_in_chat_input
        self.errors.verify_no_errors()
    base_test_case.py:184: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Message mmmeowesage_text text was not copied in community channel
    E    Message https://status.im text was not copied in community channel
    



    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_navigation_jump_to, id: 702936

    Device 1: Tap on found: Button
    Device 1: Find Button by xpath: //*[contains(@text, "user2")]

    medium/test_activity_center.py:250: in test_navigation_jump_to
        self.community_1.element_by_text_part(self.default_username_2).click()
    ../views/base_element.py:91: in click
        self.find_element().click()
    ../views/base_element.py:80: in find_element
        raise NoSuchElementException(
     Device 1: Button by xpath: `//*[contains(@text, "user2")]` is not found on the screen
    



    Device sessions

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_emoji_send_copy_paste_reply, id: 702840

    Device 2: Quoting '🇧🇧' message
    Device 2: Find Button by xpath: //*[contains(@text, "🇧🇧")]

    critical/test_public_chat_browsing.py:475: in test_community_emoji_send_copy_paste_reply
        self.channel_2.quote_message(emoji_unicode)
    ../views/chat_view.py:973: in quote_message
        self.element_by_text_part(message).long_press_until_element_is_shown(self.reply_message_button)
    ../views/base_element.py:298: in long_press_until_element_is_shown
        element = self.find_element()
    ../views/base_element.py:80: in find_element
        raise NoSuchElementException(
     Device 2: Button by xpath: `//*[contains(@text, "🇧🇧")]` is not found on the screen
    



    Device sessions

    2. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844

    # STEP: Check enabling and sending first gif

    critical/test_public_chat_browsing.py:512: in test_community_links_with_previews_github_youtube_twitter_gif_send_enable
        self.channel_2.send_message(giphy_url)
    ../views/chat_view.py:933: in send_message
        self.chat_message_input.wait_for_element(wait_chat_input_sec)
    ../views/base_element.py:117: in wait_for_element
        raise TimeoutException(
     Device `2`: `ChatMessageInput` by` accessibility id`: `chat-message-input` is not found on the screen after wait_for_element
    



    Device sessions

    3. test_community_contact_block_unblock_offline, id: 702894

    Device 2: Tap on found: Button
    Device 2: Find Button by xpath: //*[@text="# general"]

    critical/test_public_chat_browsing.py:564: in test_community_contact_block_unblock_offline
        [home.jump_to_card_by_text('# %s' % self.channel_name) for home in [self.home_1, self.home_2]]</b>
    critical/test_public_chat_browsing.py:564: in <listcomp>
        [home.jump_to_card_by_text('# %s' % self.channel_name) for home in [self.home_1, self.home_2]]</b>
    ../views/base_view.py:606: in jump_to_card_by_text
        self.element_by_text(text).click()
    ../views/base_element.py:91: in click
        self.find_element().click()
    ../views/base_element.py:80: in find_element
        raise NoSuchElementException(
     Device 2: Button by xpath: `//*[@text="# general"]` is not found on the screen
    



    Device sessions

    4. test_community_unread_messages_badge, id: 702841

    Device 1: Find CommunitiesTab by accessibility id: communities-stack-tab
    Device 2: Sending message 'test message'

    critical/test_public_chat_browsing.py:547: in test_community_unread_messages_badge
        self.channel_2.send_message(message)
    ../views/chat_view.py:933: in send_message
        self.chat_message_input.wait_for_element(wait_chat_input_sec)
    ../views/base_element.py:117: in wait_for_element
        raise TimeoutException(
     Device `2`: `ChatMessageInput` by` accessibility id`: `chat-message-input` is not found on the screen after wait_for_element
    



    Device sessions

    5. test_community_message_delete, id: 702839

    Device 2: Sending message 'delete for everyone'

    critical/test_public_chat_browsing.py:437: in test_community_message_delete
        self.channel_2.send_message(message_to_delete_everyone)
    ../views/chat_view.py:933: in send_message
        self.chat_message_input.wait_for_element(wait_chat_input_sec)
    ../views/base_element.py:117: in wait_for_element
        raise TimeoutException(
     Device `2`: `ChatMessageInput` by` accessibility id`: `chat-message-input` is not found on the screen after wait_for_element
    



    Device sessions

    6. test_community_message_send_check_timestamps_sender_username, id: 702838

    Device 2: Verifying that 'hello' is under today
    Device 2: Looking for a message by text: hello

    critical/test_public_chat_browsing.py:418: in test_community_message_send_check_timestamps_sender_username
        channel.verify_message_is_under_today_text(message, self.errors)
    ../views/chat_view.py:923: in verify_message_is_under_today_text
        message_element.wait_for_visibility_of_element()
    ../views/base_element.py:135: in wait_for_visibility_of_element
        raise TimeoutException(
     Device 2: ChatElementByText by xpath:`//*[starts-with(@text,'hello')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']` is not found on the screen after wait_for_visibility_of_element 
    

    [[blocked by 14797]]

    Device sessions

    7. test_community_message_edit, id: 702843

    Device 1: Find SendMessageButton by accessibility id: send-message-button
    Device 1: Tap on found: SendMessageButton

    critical/test_public_chat_browsing.py:431: in test_community_message_edit
        self.errors.verify_no_errors()
    base_test_case.py:184: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Message is not edited
    



    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_activity_center_contact_request_decline, id: 702850

    Device 2: Find Button by accessibility id: tab-recent
    Device 2: Tap on found: Button

    medium/test_activity_center.py:142: in test_activity_center_contact_request_decline
        self.errors.verify_no_errors()
    base_test_case.py:184: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Username is not shown on 'Add contact' page after entering valid public key 
    

    [[Blocked by 15500]]

    Device sessions

    Passed tests (19)

    Click to expand

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_text_message_delete_push_disappear, id: 702733
    Device sessions

    2. test_1_1_chat_edit_message, id: 702855
    Device sessions

    3. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    4. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    5. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    6. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    7. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    8. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    9. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947
    Device sessions

    2. test_activity_center_admin_notification_accept_swipe, id: 702958
    Device sessions

    3. test_activity_center_mentions, id: 702957
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    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

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_mentions_push_notification, id: 702786
    Device sessions

    2. test_community_leave, id: 702845
    Device sessions

    @yqrashawn yqrashawn merged commit 9b75654 into develop Apr 17, 2023
    @yqrashawn yqrashawn deleted the feat/in-app-notification branch April 17, 2023 06:01
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    No open projects
    Archived in project
    Development

    Successfully merging this pull request may close these issues.

    Implement In-app Notifications component
    3 participants