Commit Graph

870 Commits

Author SHA1 Message Date
Siddarth Kumar eea55b22d7
Dont check `app-state` for `Android` when evaluating universal links routing (#15896)
* Dont check app-state for android before routing PN

On Android devices, right after account creation and before a log out, the :app-state value in reframe db is set to background. The value becomes active after a log out and then log in which causes tapping on push notifications to do nothing.

This behaviour breaks E2E and hence in this PR, I remove the checking of this case only for Android platforms.
More work should be done to figure out why the app state event handler is behaving this way on Android but for now I would like to unblock E2E.

* e2e: remove xfailed tests

---------

Co-authored-by: Churikova Tetiana <tatiana@status.im>
2023-05-18 00:20:38 +05:30
Mohamed Javid 7d0dfec22c
Design Feedbacks on "Create profile password" screen (#15863)
Signed-off-by: Mohamed Javid <19339952+smohamedjavid@users.noreply.github.com>
Co-authored-by: pavloburykh <pavlo@status.im>
2023-05-16 18:03:45 +05:30
Churikova Tetiana 7ef466078a
e2e: image test 2023-05-15 19:08:03 +02:00
Churikova Tetiana 409c0a9e60
e2e: small fixes 2023-05-12 14:25:32 +02:00
Churikova Tetiana dbaaa54c83
e2e: remove/switch profiles 2023-05-04 16:27:55 +02:00
Churikova Tetiana 6c0c742676
e2e: align with new communities / cleanup 2023-04-28 13:56:31 +02:00
Jamie Caprani 52c6687608
feat: add identifiers screen to onboarding-flow (#15684) 2023-04-26 21:26:32 -07:00
flexsurfer 0ca6ee3934
Request to join community screen is not scrollable on Android #15748 (#15750)
Co-authored-by: Churikova Tetiana <tatiana@status.im>
2023-04-26 13:33:00 +02:00
pavloburykh d11ce135a6
e2e: fix xpath for link preview 2023-04-12 14:35:40 +03:00
flexsurfer 103e154076
improve navigation and bottom sheet (#15467)
Co-authored-by: Churikova Tetiana <tatiana@status.im>
2023-03-31 16:13:27 +02:00
Churikova Tetiana 4f2f8dea4c
e2e: new onboarding 2023-03-30 15:15:42 +02:00
Alexander 006b11d508
Scrollable list of pinned messages (#15506)
* Scrollable list of pinned messages

* e2e: fix accessibility id

---------

Co-authored-by: pavloburykh <pavlo@status.im>
2023-03-28 20:23:30 +02:00
Churikova Tetiana 11726df060
e2e: add to run_in_parallel args handling 2023-03-26 20:57:06 +02:00
Churikova Tetiana 5fffc230c9
e2e: new community screens 2023-03-24 11:22:02 +01:00
Churikova Tetiana 401f7d7383
e2e: activity centre and more checks 2023-03-22 18:20:48 +01:00
pavloburykh 8c358d4ae4
e2e: fix login
Signed-off-by: Parvesh Monu <parvesh.dhullmonu@gmail.com>
2023-03-22 13:52:16 +05:30
Churikova Tetiana a74da63c32
e2e: activity center 2023-03-20 13:58:09 +01:00
Jamie Caprani f6f5dfbe03
chore: add skeleton flow for onboarding (#15334) 2023-03-17 05:19:39 -07:00
Churikova Tetiana b5781a7a83
e2e: minor fixes 2023-03-15 16:49:37 +01:00
Icaro Motta e8556a9abf
Show AC unread indicator with counter and seen state color (#15304)
- Display Activity Center unread badge with the unread counter.
- Use the new seen state stored in `status-go` to change the color of the
  notification.
- Performance: split the `top-nav` component into left and right section
  components and render the unread indicator in a separate component to not
  trigger the re-render of the entire `top-nav` (as was before).
  
Fixes https://github.com/status-im/status-mobile/issues/14851

Demo: https://user-images.githubusercontent.com/46027/224299978-770dd5f1-302b-4375-af2b-3cd181ffdc9d.webm

Notes
=====

- Fix/improve: `quo/counter` displayed `NaN` to the user if the input value was
  an empty string.
- In Figma, there's a border around the unread indicator. I didn't implement
  this because the ideal solution IMO involves changing the `quo/counter`
  component a little bit because the width of the component varies according to
  the content displayed (1, 9, 99, 100, etc) and I wanted to the right thing in
  a separate PR.

Design notes
============

There's an ongoing conversation with the Design team to decide what to do with
the gray indicator on top of the bell icon, since there's little contrast when
it's is in the `seen` state.

Platforms
=========

- Android
- iOS

Steps to test
=============

- Open Status
- Receive one or more notifications in the Home screen and check the unread
  indicator is blue and has a counter.
- Open the AC and close it, notice the unread indicator is now in the `seen`
  state. You can close the app and re-open and the state is persisted.
- Mark notifications as read/unread at will, check the unread counter is
  correct.
2023-03-15 12:41:34 -03:00
Icaro Motta 9473d3f40c
Swipe gestures for Activity Center notifications with CTA (#15284)
Implements swipe actions for notifications with call to action (e.g. pending
contact requests, unverified identity verifications, etc).

Fixes https://github.com/status-im/status-mobile/issues/15118

According to the Design team, the goal is to deliver a consistent experience to
users, so whenever the user sees a notification with buttons, the same actions
can be taken via the swipe buttons.

Note: swipe buttons are using placeholder icons while the Design team works out
which ones to use

Additionally, a bunch of fixes:

- Fix: outgoing pending contact requests were not being removed from the UI when
  cancelled.
- Fix: Membership tab not showing unread indicator.
- Fix: dismissed membership notification not marked as read.
- Fix: dismissed membership notification was displaying decline/accept buttons.
  Regression came from changes in status-go related to soft deletion of
  notifications.
- Fix: incorrect check for the pending state of a contact request.
- Fixed lots of bugs for identity verification notifications, as it was
  completely broken. Unfortunately, somebody made lots of changes without
  actually testing the flows.
- Add basic error handling and log if accepting, declining or canceling contact
  requests fail.

The demo shows an identity verification with swipe actions to reply or decline.
[identity-verification-swipe-to-reply.webm](https://user-images.githubusercontent.com/46027/223565755-b2ca3f68-12e2-4e1e-9e52-edd52cfcc971.webm)

Out of scope: The old quo input is still in use in the identity verification
notification. This will eventually be solved by issue
https://github.com/status-im/status-mobile/issues/14364

### Steps to test

Notifications with one or more buttons (actions) are affected by this change,
because now the user can also swipe left/right to act on them.

- Membership notifications: private group chat. The following PR explains how to
  generate them https://github.com/status-im/status-mobile/pull/14785
- Contact requests, and community gated requests to join (Admin tab).
- Identity verifications. I believe the only way to test identity verification
  flows at the moment is to use the Desktop app, since initiating the challenge
  is not implemented in Mobile yet.
- Mentions and replies don't have new swipe buttons because they don't have call
  to action buttons throughout their lifecycle.

Steps to test identity verification flows:

#### Identity verification flow 1

- `A` and `B` are mutual contacts.
- `A` sends a verification request to `B`.
- `A` should not see any notification yet.
- `B` should receive an identity verification notification. `B` can either
  decline or reply.
- `B` declines and the status `Declined` is shown instead of buttons.
- `B` can now either swipe to toggle read/unread or swipe delete the
  notification.
- `A` should not receive any notification after `A` declined.

#### Identity verification flow 2

- `A` and `B` are mutual contacts.
- `A` sends a verification request to `B`.
- `A` should not see any notification yet.
- `B` should receive an identity verification notification. `B` can either
  decline or reply.
- `B` press `Reply` and a bottom sheet is displayed with a text input.
- `B` sends the reply/answer message and the status `Replied` is shown instead
  of buttons.
- `B` can now either swipe to toggle read/unread or swipe to delete the
  notification.
- `A` should receive a notification with the reply from `B`.
- `A` can either mark the answer as untrustworthy or accept it (trust it) via
  the normal buttons, as well as via the swipe left/right buttons.
- If `A` accepts the answer, then the status `Confirmed` is shown instead of
  buttons. On the other hand, if `A` marks as untrustworthy, then the status
  `Untrustworthy` is shown instead of buttons.
- `B` should receive no further notifications due to `A`s actions.
- `A` can now either swipe to toggle read/unread or swipe delete the
  notification.
2023-03-14 12:34:13 -03:00
Churikova Tetiana ee62ffdc2c
e2e: AC actions 2023-03-13 14:29:26 +01:00
Yevheniia Berdnyk bd54b05fd0
test_community_mentions_push_notification 2023-03-09 20:37:52 +02:00
Churikova Tetiana 8d7224d972
e2e: fix failures 2023-03-09 12:06:24 +01:00
Churikova Tetiana 0345871b66
e2e: block user test 2023-03-08 12:21:10 +01:00
Jamie Caprani 2861190e5b
New intro screen (#15127)
* feat: add new intro page

* e2e: new intro fix

---------

Co-authored-by: Churikova Tetiana <tatiana@status.im>
2023-03-06 06:42:30 -08:00
Churikova Tetiana 404ae82cfe
e2e: fix deep link profile test
Signed-off-by: Parvesh Monu <parvesh.dhullmonu@gmail.com>
2023-03-06 17:26:29 +05:30
flexsurfer f731f75fca
move profile tab (#15224)
* move profile tab

* e2e: new profile tab

* e2e: fix leftovers

* e2e: last

---------

Co-authored-by: Churikova Tetiana <tatiana@status.im>
2023-03-02 10:55:45 +01:00
Churikova Tetiana 06192e7a24
e2e: outgoing CR + new UI 2023-03-01 12:36:49 +01:00
Yevheniia Berdnyk c2782a26f7
paste from clipboard fix 2023-02-28 15:07:06 +02:00
Churikova Tetiana e1bcc8fec4
e2e: fix pinned messages 2023-02-27 16:39:39 +01:00
Churikova Tetiana 432f7bcd8c
e2e: 1-1 chat, communities 2023-02-24 20:05:30 +01:00
Yevheniia Berdnyk ad9b712bff
Fix for connection error 2023-02-17 12:34:21 +01:00
Yevheniia Berdnyk f2277371f0
Updated pytest and pytest-xdist versions 2023-02-17 12:28:43 +01:00
Churikova Tetiana c4264462b1
ci/e2e: make copying of nightly artifacts work
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-02-09 20:32:18 +01:00
Churikova Tetiana 89039cd79a
e2e: remove upload to sauce from fastlane and fix in e2e 2023-02-03 14:03:15 +01:00
Churikova Tetiana c1e3a38cb2
e2e: saucelab new api + remove workarounds 2023-02-02 12:40:19 +01:00
Churikova Tetiana 3692ad38dd
e2e: fixes compressed keys 2023-01-30 21:48:41 +01:00
Churikova Tetiana 6530713c3f
e2e: communities fix 2023-01-27 10:48:52 +01:00
Churikova Tetiana 4e8ebc6d85
e2e: previews + uncommented pins 2023-01-24 21:27:02 +01:00
Churikova Tetiana b8dfa6b645
e2e: offline messages + edit 2023-01-19 19:01:14 +01:00
Churikova Tetiana 4c33b43713
e2e: more fixes 2023-01-18 16:02:09 +01:00
Churikova Tetiana 4960f5a59c
e2e: fixes for mutual contacts 2023-01-13 19:22:51 +01:00
Churikova Tetiana c1c9fef7ec
e2e: revert failed tests 2023-01-13 12:12:12 +01:00
Churikova Tetiana 220341e0be
e2e: introduced failed due to issues tests in results 2023-01-11 13:58:11 +01:00
Churikova Tetiana e289ad8968
e2e: fixes + workarounds 2023-01-09 14:46:24 +01:00
Churikova Tetiana b158310057
e2e: workarounds 2023-01-05 18:01:57 +01:00
Churikova Tetiana 590c0629b6
e2e: new groups 2023-01-04 12:33:02 +01:00
Churikova Tetiana 0a0b70c633
e2e: workarounds 2022-12-30 15:34:25 +01:00
Churikova Tetiana 8dac11544e
e2e: activity centre 2022-12-29 14:49:35 +01:00