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

Link preview generation #11311

Merged
merged 1 commit into from
Nov 2, 2020
Merged

Link preview generation #11311

merged 1 commit into from
Nov 2, 2020

Conversation

vkjr
Copy link
Contributor

@vkjr vkjr commented Oct 20, 2020

fixes #11158

Summary

Link preview generation implemented. Currently works for youtube.

Screenshot 2020-10-20 at 16 13 18

Screenshot 2020-10-20 at 16 13 14

Screenshot 2020-10-20 at 16 13 04

Review notes

Platforms

  • Android
  • iOS
Functional
  • 1-1 chats
  • public chats
  • group chats

Steps to test

  • Open Status
  • Navigate to chat with links

status: ready

@vkjr vkjr requested a review from a team as a code owner October 20, 2020 13:24
@vkjr vkjr self-assigned this Oct 20, 2020
@status-im-auto
Copy link
Member

status-im-auto commented Oct 20, 2020

Jenkins Builds

Click to see older builds (33)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 82dda5e #1 2020-10-20 13:37:37 ~12 min android 📦apk 📲
✔️ 82dda5e #1 2020-10-20 13:38:49 ~13 min android-e2e 📦apk 📲
✔️ 82dda5e #1 2020-10-20 13:46:02 ~21 min ios 📦ipa 📲
4e18bfd #2 2020-10-23 12:16:28 ~26 sec android-e2e 📄log
4e18bfd #2 2020-10-23 12:16:30 ~23 sec android 📄log
4e18bfd #2 2020-10-23 12:16:31 ~24 sec ios 📄log
0e390e6 #3 2020-10-27 11:29:58 ~14 sec android 📄log
0e390e6 #3 2020-10-27 11:30:00 ~14 sec ios 📄log
0e390e6 #3 2020-10-27 11:30:12 ~32 sec android-e2e 📄log
2203525 #4 2020-10-27 11:54:17 ~11 min android 📄log
2203525 #4 2020-10-27 11:54:30 ~12 min android-e2e 📄log
2203525 #4 2020-10-27 12:00:26 ~17 min ios 📄log
e6ce066 #5 2020-10-27 13:30:09 ~25 min android-e2e 📄log
e6ce066 #5 2020-10-27 13:30:44 ~26 min android 📄log
e6ce066 #5 2020-10-27 13:44:39 ~39 min ios 📄log
80befcc #6 2020-10-28 10:44:36 ~16 min android-e2e 📄log
80befcc #6 2020-10-28 10:48:46 ~20 min android 📄log
80befcc #6 2020-10-28 10:51:57 ~23 min ios 📄log
✔️ 6ddb774 #7 2020-10-28 11:09:56 ~11 min android 📦apk 📲
✔️ 6ddb774 #7 2020-10-28 11:11:49 ~13 min android-e2e 📦apk 📲
✔️ 6ddb774 #7 2020-10-28 11:17:46 ~19 min ios 📦ipa 📲
✔️ 0d613c0 #8 2020-10-28 15:29:55 ~14 min android-e2e 📦apk 📲
✔️ 0d613c0 #8 2020-10-28 15:31:20 ~15 min ios 📦ipa 📲
✔️ 0d613c0 #8 2020-10-28 15:31:52 ~16 min android 📦apk 📲
✔️ 76f4356 #9 2020-10-29 13:11:29 ~9 min android 📦apk 📲
✔️ 76f4356 #9 2020-10-29 13:11:36 ~9 min android-e2e 📦apk 📲
✔️ 76f4356 #9 2020-10-29 13:16:52 ~14 min ios 📦ipa 📲
✔️ 2f1f057 #10 2020-10-30 15:47:41 ~8 min android 📦apk 📲
✔️ 2f1f057 #10 2020-10-30 15:49:23 ~10 min android-e2e 📦apk 📲
✔️ 2f1f057 #10 2020-10-30 15:55:01 ~15 min ios 📦ipa 📲
✔️ a6cad82 #11 2020-11-01 09:15:37 ~9 min android-e2e 📦apk 📲
✔️ a6cad82 #11 2020-11-01 09:15:39 ~8 min android 📦apk 📲
✔️ a6cad82 #11 2020-11-01 09:22:17 ~15 min ios 📦ipa 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 2d2bf14 #12 2020-11-01 13:00:01 ~10 min android-e2e 📦apk 📲
✔️ 2d2bf14 #12 2020-11-01 13:03:48 ~14 min android 📦apk 📲
✔️ 2d2bf14 #12 2020-11-01 13:04:03 ~14 min ios 📦ipa 📲
✔️ 9a48cef #13 2020-11-02 13:15:05 ~8 min android-e2e 📦apk 📲
✔️ 9a48cef #13 2020-11-02 13:15:09 ~8 min android 📦apk 📲
✔️ 9a48cef #13 2020-11-02 13:21:54 ~15 min ios 📦ipa 📲

@qoqobolo
Copy link
Contributor

@vkjr there are conflicts in the branch. Could you take a look, please?

Copy link
Member

@flexsurfer flexsurfer left a comment

Choose a reason for hiding this comment

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

overall looks great

Runnable r = new Runnable() {
@Override
public void run() {
String res = Statusgo.getLinkPreviewWhitelist();
Copy link
Member

Choose a reason for hiding this comment

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

just wondering why not a service ?

(re-frame/reg-fx
::get-link-preview-whitelist
(fn []
(native-module/link-preview-whitelist #(do
Copy link
Member

Choose a reason for hiding this comment

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

do - leftover ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yep

(disj (get multiaccount :link-previews-enabled-sites #{}) site))
{})))

(fx/defn cache-link-preview-data
Copy link
Member

Choose a reason for hiding this comment

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

could you pls elaborate on this ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

During session we save locally data about link preview to not fetch it every time when chat re-creates

:webview-allow-permission-requests? false})
:webview-allow-permission-requests? false
:link-previews-enabled-sites #{}
:can-ask-to-preview-links true})
Copy link
Member

Choose a reason for hiding this comment

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

why is this option needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

will be renamed but it is set to false when user says "Don't ask me again about link preview"

[status-im.native-module.core :as native-module]))

(fx/defn set-link-preview
[{{:keys [multiaccount]} :db :as cofx} site enabled?]
Copy link
Member

Choose a reason for hiding this comment

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

{:events [:link-preview/enable]}

@@ -1264,3 +1265,18 @@
:multiaccounts (keycard/multiaccounts-screen-did-load %)
(:wallet-stack :wallet) (wallet.events/wallet-will-focus %)
nil))))

(handlers/register-handler-fx
Copy link
Member

Choose a reason for hiding this comment

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

we don't use this ns anymore, just use {:events []} in the link-preview ns

@@ -205,7 +206,9 @@
[message-author-name from modal]])
;;MESSAGE CONTENT
[react/view
content]]]
content]
(when-let [link (link-preview/get-link (:parsed-text (:content message)))]
Copy link
Member

Choose a reason for hiding this comment

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

can we move this to status-go, so we'll have links from the whitelist in (:valid-links (:content message))

Copy link
Contributor

Choose a reason for hiding this comment

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

that's a good idea, maybe is worth to have only: links (say something like {:domain ... :url ...} rather than valid-links, and in status-react we match against a domain whitelist.
The rationale is the whitelist might be changing because the user enables/disables and we won't be reloading messages probably, what do you think?

Copy link
Member

Choose a reason for hiding this comment

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

yeah all links is better, i wanted to suggest it first, but for some reason changed my mind in the last moment :)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks, will dig it on status-go side

Copy link
Contributor

Choose a reason for hiding this comment

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

https://github.com/status-im/status-go/blob/7467ca7b103f685dd64d73485555f90c181a4484/protocol/common/message.go#L306 is a class you can modify to fetch links and store them in the database, similarly to how we do with mentions

@@ -81,6 +81,8 @@
"wakuext_sendEmojiReaction" {}
"wakuext_sendEmojiReactionRetraction" {}
"wakuext_emojiReactionsByChatID" {}
"wakuext_getLinkPreviewWhitelist" {}
"wakuext_getLinkPreviewData" {}
Copy link
Member

Choose a reason for hiding this comment

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

probably better to move this to accounts or settings service

@vkjr vkjr force-pushed the url_unfurling branch 5 times, most recently from 80befcc to 6ddb774 Compare October 28, 2020 10:57
@vkjr
Copy link
Contributor Author

vkjr commented Oct 28, 2020

@cammellos, @flexsurfer, review notes addressed, could you please check again?

@qoqobolo, rebased)

@status-im-auto
Copy link
Member

64% of end-end tests have passed

Total executed tests: 99
Failed tests: 36
Passed tests: 63
IDs of failed tests: 5782, 5415, 5386, 5391, 6293, 6229, 6295, 5299, 5741, 5379, 6226, 6283, 5502, 5783, 5382, 5419, 5758, 5403, 5762, 5406, 5356, 5689, 5390, 5738, 5319, 5346, 5368, 6296, 6253, 5786, 5332, 5381, 6240, 6279, 6263, 5338 

Failed tests (36)

Click to expand
1. test_install_pack_and_send_sticker, id: 5782

Device 2: Scrolling down to AdvancedButton
Device 2: Scrolling down to AdvancedButton

Device 2: 'AdvancedButton' is not found on the screen

Device sessions

2. test_password_in_logcat_sign_in, id: 5415

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

3. test_public_chat_clear_history, id: 5386

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

4. test_need_help_section, id: 5391

Device 1: Scrolling down to HelpButton
Device 1: Scrolling down to HelpButton

Device 1: 'HelpButton' is not found on the screen

Device sessions

5. test_keycard_send_eth_in_1_1_chat, id: 6293

Device 1: TransactionStatus is Pending
Device 1: TransactionStatus is Pending

Wrong state is shown for outgoing transaction: "Confirmed" is expected, in fact Pending

Device sessions

6. test_mobile_data_usage_settings, id: 6229

Device 1: Scrolling down to SyncSettingsButton
Device 1: Scrolling down to SyncSettingsButton

Device 1: 'SyncSettingsButton' is not found on the screen

Device sessions

7. test_keycard_send_eth_to_ens, id: 6295

Device 1: TransactionStatus is Pending
Device 1: TransactionStatus is Pending

Wrong state is shown for outgoing transaction to ENS: "Confirmed" is expected, in fact Pending

Device sessions

8. test_user_can_switch_network, id: 5299

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

9. test_mobile_data_usage_popup_continue_syncing, id: 5741

Device 1: Scrolling down to SyncSettingsButton
Device 1: Scrolling down to SyncSettingsButton

Device 1: 'SyncSettingsButton' is not found on the screen

Device sessions

10. test_home_view, id: 5379

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

11. test_ens_mentions_and_nickname_in_public_and_1_1_chats, id: 6226

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

12. test_push_notification_1_1_chat, id: 6283

Device 1: PrivacyAndSecurityButton element not found
Device 1: DefaultUserNameText is Hungry Broken Acaciarat

Device 1: 'PrifileNotificationsButton' is not found on the screen

Device sessions

13. test_can_add_existing_ens, id: 5502

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

14. test_can_use_purchased_stickers_on_recovered_account, id: 5783

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

15. test_contact_profile_view, id: 5382

Device 1: Looking for an element by text: 'Remove from contacts'
Device 1: Looking for an element by text: 'Send message'

Device 1: 'BaseButton' is not found on the screen

Device sessions

16. test_logcat_backup_recovery_phrase, id: 5419

Device 1: Wait for PrivacyAndSecurityButton
Device 1: PrivacyAndSecurityButton element not found

Device 1: 'PrivacyAndSecurityButton' is not found on the screen

Device sessions

17. test_can_recover_keycard_account_card_pairing, id: 5758

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

18. test_start_chat_with_ens, id: 5403

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

19. test_pair_devices_sync_one_to_one_contacts_public_chat, id: 5762

Device 1: Wait for PrivacyAndSecurityButton
Device 1: PrivacyAndSecurityButton element not found

Device 1: 'PrivacyAndSecurityButton' is not found on the screen

Device sessions

20. test_ens_username_recipient, id: 5406

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

21. test_switch_users_and_add_new_account, id: 5356

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

22. test_add_new_keycard_account_and_login, id: 5689

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

23. test_long_press_delete_clear_all_dapps, id: 5390

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

24. test_dapps_permissions, id: 5738

Device 1: Wait for PrivacyAndSecurityButton
Device 1: PrivacyAndSecurityButton element not found

Device 1: 'PrivacyAndSecurityButton' is not found on the screen

Device sessions

25. test_long_press_to_delete_chat, id: 5319

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

26. test_collectible_from_wallet, id: 5346

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

27. test_log_level_and_fleet, id: 5368

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

28. test_recover_account_from_new_user_seedphrase, id: 6296

Device 1: Wait for PrivacyAndSecurityButton
Device 1: PrivacyAndSecurityButton element not found

Device 1: 'PrivacyAndSecurityButton' is not found on the screen

Device sessions

29. test_send_eth_in_1_1_chat, id: 6253

Device 1: TransactionStatus is Pending
Device 1: TransactionStatus is Pending

Wrong state is shown for outgoing transaction: "Confirmed" is expected, in fact Pending

Device sessions

30. test_block_user_from_public_chat, id: 5786

Device 1: Scrolling down to ProfileBlockContactButton
Device 1: Scrolling down to ProfileBlockContactButton

Device 1: 'ProfileBlockContactButton' is not found on the screen

Device sessions

31. test_add_and_remove_mention_contact_with_nickname_from_public_chat, id: 5332

Device 1: Looking for message with text 'Drab Solid Indianhare'
Device 1: Tap on ChatElementByText

Device 1: 'ProfileAddToContactsButton' is not found on the screen

Device sessions

32. test_user_can_see_all_own_assets_after_account_recovering, id: 5381

Device 1: Scrolling down to AdvancedButton
Device 1: Scrolling down to AdvancedButton

Device 1: 'AdvancedButton' is not found on the screen

Device sessions

33. test_restore_account_from_mnemonic_to_keycard, id: 6240

Device 1: Scrolling down to LogoutButton
Device 1: Scrolling down to LogoutButton

Device 1: 'LogoutButton' is not found on the screen

Device sessions

34. test_send_eth_to_ens_in_chat, id: 6279

Device 1: TransactionStatus is Pending
Device 1: TransactionStatus is Pending

Wrong state is shown for outgoing transaction to ENS: "Confirmed" is expected, in fact Pending

Device sessions

35. test_request_and_receive_stt_in_1_1_chat_offline, id: 6263

Device 2: Scrolling down to LogoutButton
Device 2: Scrolling down to LogoutButton

Device 2: 'LogoutButton' is not found on the screen

Device sessions

36. test_messaging_in_different_networks, id: 5338

Device 2: Scrolling down to AdvancedButton
Device 2: Scrolling down to AdvancedButton

Device 2: 'AdvancedButton' is not found on the screen

Device sessions

Passed tests (63)

Click to expand
1. test_delete_chats_via_delete_button, id: 5387
Device sessions

2. test_can_see_all_transactions_in_history, id: 5314
Device sessions

3. test_login_with_new_account, id: 5312
Device sessions

4. test_timestamp_in_chats, id: 5385
Device sessions

5. test_logcat_recovering_account, id: 5366
Device sessions

6. test_send_and_open_links, id: 5373
Device sessions

7. test_mobile_data_usage_popup_stop_syncing, id: 6228
Device sessions

8. test_create_new_group_chat, id: 3994
Device sessions

9. test_open_google_com_via_open_dapp, id: 5320
Device sessions

10. test_share_contact_code_and_wallet_address, id: 5323
Device sessions

11. test_connection_is_secure, id: 5402
Device sessions

12. test_add_to_contacts, id: 5316
Device sessions

13. test_add_account_to_multiaccount_instance_private_key, id: 6272
Device sessions

14. test_refresh_button_browsing_app_webview, id: 5354
Device sessions

15. test_keycard_send_two_transactions_one_after_another_in_dapp, id: 6288
Device sessions

16. test_transaction_wrong_password_wallet, id: 5408
Device sessions

17. test_public_chat_messaging, id: 5313
Device sessions

18. test_unread_messages_counter_public_chat, id: 5360
Device sessions

19. test_keycard_send_eth_from_wallet_to_address, id: 6289
Device sessions

20. test_keycard_fetching_balance_after_offline, id: 6290
Device sessions

21. test_keycard_send_transaction_from_daap, id: 6249
Device sessions

22. test_text_message_1_1_chat, id: 5305
Device sessions

23. test_decline_transactions_in_1_1_chat_push_notification_changing_state, id: 6265
Device sessions

24. test_open_transaction_on_etherscan, id: 5384
Device sessions

25. test_send_audio_message_with_push_notification_check, id: 6316
Device sessions

26. test_onboarding_screen_when_requesting_tokens_for_recovered_account, id: 5677
Device sessions

27. test_offline_add_new_group_chat_member, id: 3998
Device sessions

28. test_add_account_to_multiaccount_instance_seed_phrase, id: 6271
Device sessions

29. test_open_blocked_site, id: 6210
Device sessions

30. test_open_chat_by_pasting_public_key, id: 5304
Device sessions

31. test_keycard_sign_message_from_daap, id: 6251
Device sessions

32. test_send_non_english_message_to_newly_added_contact, id: 5315
Device sessions

33. test_fetch_more_history_in_empty_chat, id: 6205
Device sessions

34. test_open_public_chat_using_deep_link, id: 5396
Device sessions

35. test_add_account_to_multiaccount_instance_generate_new, id: 6224
Device sessions

36. test_copy_contact_code_and_wallet_address, id: 5375
Device sessions

37. test_send_transaction_from_daap, id: 5309
Device sessions

38. test_send_two_transactions_one_after_another_in_dapp, id: 5744
Device sessions

39. test_image_in_one_to_one_send_save_reply, id: 6305
Device sessions

40. test_copy_and_paste_messages, id: 5317
Device sessions

41. test_back_forward_buttons_browsing_website, id: 5321
Device sessions

42. test_password_in_logcat_creating_account, id: 5414
Device sessions

43. test_sign_message_from_daap, id: 5342
Device sessions

44. test_request_public_key_status_test_daap, id: 5397
Device sessions

45. test_reactions_to_message_in_chats, id: 6315
Device sessions

46. test_add_and_delete_watch_only_account_to_multiaccount_instance, id: 6244
Device sessions

47. test_send_transaction_with_custom_token, id: 6208
Device sessions

48. test_send_two_transactions_in_batch_in_dapp, id: 5743
Device sessions

49. test_fetching_balance_after_offline, id: 6237
Device sessions

50. test_offline_status, id: 5326
Device sessions

51. test_wallet_set_up, id: 5335
Device sessions

52. test_manage_assets, id: 5341
Device sessions

53. test_offline_messaging_1_1_chat, id: 5310
Device sessions

54. test_account_recovery_with_uppercase_recovery_phrase, id: 5394
Device sessions

55. test_send_token_with_7_decimals, id: 5350
Device sessions

56. test_pass_phrase_validation, id: 5363
Device sessions

57. test_keycard_can_see_all_transactions_in_history, id: 6291
Device sessions

58. test_keycard_send_two_transactions_in_batch_in_dapp, id: 6287
Device sessions

59. test_send_emoji, id: 5328
Device sessions

60. test_filters_from_daap, id: 5353
Device sessions

61. test_redirect_to_public_chat_tapping_tag_message, id: 5675
Device sessions

62. test_send_eth_from_wallet_to_address, id: 5308
Device sessions

63. test_insufficient_funds_wallet_positive_balance, id: 5412
Device sessions

@qoqobolo
Copy link
Contributor

@vkjr could you rebase it again please? :) The last rebase was done before #11260 was merged, and this caused the tests to fail.

@vkjr
Copy link
Contributor Author

vkjr commented Oct 29, 2020

@qoqobolo - done :)

@status-im-auto
Copy link
Member

90% of end-end tests have passed

Total executed tests: 99
Failed tests: 10
Passed tests: 89
IDs of failed tests: 6293, 6295, 6289, 6290, 6249, 5309, 6237, 5332, 6279, 6263 

Failed tests (10)

Click to expand
1. test_keycard_send_eth_in_1_1_chat, id: 6293

Device 1: Wait for MultiaccountMoreOptions
Device 1: MultiaccountMoreOptions element not found

Device 1: 'AccountElementButton' is not found on the screen

Device sessions

2. test_keycard_send_eth_to_ens, id: 6295

Transaction #5, amount is 0.0029115327
{'blockNumber': '8973756', 'timeStamp': '1603972451', 'hash': '0x73f4418766b49fe65e69e5958964f2e6fd33fd1ad64f0af81c7d2a386b838e63', 'nonce': '3909', 'blockHash': '0xe873e59edd49a4781e97c9c617da92eb577a29b3d10f455e3894782d428622d3', 'transactionIndex': '3', 'from': '0xf7cb60839c0de25e37be0391c33bb34a8f0f8414', 'to': '0x58d8c3d70ce4fa4b9fb10a665c8712238746f2ff', 'value': '2911532700000000', 'gas': '21000', 'gasPrice': '41000000000', 'isError': '0', 'txreceipt_status': '1', 'input': '0x', 'contractAddress': '', 'cumulativeGasUsed': '132372', 'gasUsed': '21000', 'confirmations': '1914'}

Transaction with amount 0.003091953 is not found in list of transactions, address is f7cb60839c0de25e37be0391c33bb34a8f0f8414

Device sessions

3. test_keycard_send_eth_from_wallet_to_address, id: 6289

Transaction #5, amount is 0.00294105
{'blockNumber': '8968413', 'timeStamp': '1603944708', 'hash': '0xa63bfd00c135b6f8a906b1a365d1a55b5755de2a8a0c01d1e2087ea592071ca5', 'nonce': '4121', 'blockHash': '0x7b695f11af936d8586dcaa73828fda195490bd0b31c125237aefd56fa222c42b', 'transactionIndex': '7', 'from': '0x9164f86170290ba3080e37d19d1953d3c5945913', 'to': '0xf184747445c3b85ceb147dfb136067cb93d95f1d', 'value': '2941050000000000', 'gas': '21000', 'gasPrice': '32000000000', 'isError': '0', 'txreceipt_status': '1', 'input': '0x', 'contractAddress': '', 'cumulativeGasUsed': '261822', 'gasUsed': '21000', 'confirmations': '7284'}

Transaction with amount 0.00309312 is not found in list of transactions, address is 9164f86170290ba3080e37d19d1953d3c5945913

Device sessions

4. test_keycard_fetching_balance_after_offline, id: 6290

Device 1: Wait for TwoPinKeyboardButton
Device 1: TwoPinKeyboardButton element not found

Device 1: 'OnePinKeyboardButton' is not found on the screen

Device sessions

5. test_keycard_send_transaction_from_daap, id: 6249

Balance is 37932509852657327590 Gwei
Waiting 360 seconds for for changing account balance from 37932509852657327590

Balance is not changed during 360 seconds

Device sessions

6. test_send_transaction_from_daap, id: 5309

Balance is 37932509852657327590 Gwei
Waiting 360 seconds for for changing account balance from 37932509852657327590

Balance is not changed during 360 seconds

Device sessions

7. test_fetching_balance_after_offline, id: 6237

Device 1: Wait for EnterPasswordInput
Device 1: EnterPasswordInput element not found

Device 1: 'EnterPasswordInput' is not found on the screen

Device sessions

8. test_add_and_remove_mention_contact_with_nickname_from_public_chat, id: 5332

Device 1: Looking for message with text 'Slushy Clueless Antelopegroundsquirrel'
Device 1: Tap on ChatElementByText

Device 1: 'ProfileSendMessageButton' is not found on the screen

Device sessions

9. test_send_eth_to_ens_in_chat, id: 6279

Transaction #5, amount is 0.0029115327
{'blockNumber': '8973756', 'timeStamp': '1603972451', 'hash': '0x73f4418766b49fe65e69e5958964f2e6fd33fd1ad64f0af81c7d2a386b838e63', 'nonce': '3909', 'blockHash': '0xe873e59edd49a4781e97c9c617da92eb577a29b3d10f455e3894782d428622d3', 'transactionIndex': '3', 'from': '0xf7cb60839c0de25e37be0391c33bb34a8f0f8414', 'to': '0x58d8c3d70ce4fa4b9fb10a665c8712238746f2ff', 'value': '2911532700000000', 'gas': '21000', 'gasPrice': '41000000000', 'isError': '0', 'txreceipt_status': '1', 'input': '0x', 'contractAddress': '', 'cumulativeGasUsed': '132372', 'gasUsed': '21000', 'confirmations': '1894'}

Transaction with amount 0.003091057 is not found in list of transactions, address is f7cb60839c0de25e37be0391c33bb34a8f0f8414

Device sessions

10. test_request_and_receive_stt_in_1_1_chat_offline, id: 6263

Device 2: Wait for EnterPasswordInput
Device 2: EnterPasswordInput element not found

Device 2: 'EnterPasswordInput' is not found on the screen

Device sessions

Passed tests (89)

Click to expand
1. test_delete_chats_via_delete_button, id: 5387
Device sessions

2. test_can_see_all_transactions_in_history, id: 5314
Device sessions

3. test_install_pack_and_send_sticker, id: 5782
Device sessions

4. test_login_with_new_account, id: 5312
Device sessions

5. test_timestamp_in_chats, id: 5385
Device sessions

6. test_password_in_logcat_sign_in, id: 5415
Device sessions

7. test_logcat_recovering_account, id: 5366
Device sessions

8. test_public_chat_clear_history, id: 5386
Device sessions

9. test_need_help_section, id: 5391
Device sessions

10. test_send_and_open_links, id: 5373
Device sessions

11. test_mobile_data_usage_popup_stop_syncing, id: 6228
Device sessions

12. test_mobile_data_usage_settings, id: 6229
Device sessions

13. test_create_new_group_chat, id: 3994
Device sessions

14. test_user_can_switch_network, id: 5299
Device sessions

15. test_mobile_data_usage_popup_continue_syncing, id: 5741
Device sessions

16. test_home_view, id: 5379
Device sessions

17. test_open_google_com_via_open_dapp, id: 5320
Device sessions

18. test_share_contact_code_and_wallet_address, id: 5323
Device sessions

19. test_connection_is_secure, id: 5402
Device sessions

20. test_add_to_contacts, id: 5316
Device sessions

21. test_add_account_to_multiaccount_instance_private_key, id: 6272
Device sessions

22. test_refresh_button_browsing_app_webview, id: 5354
Device sessions

23. test_ens_mentions_and_nickname_in_public_and_1_1_chats, id: 6226
Device sessions

24. test_push_notification_1_1_chat, id: 6283
Device sessions

25. test_keycard_send_two_transactions_one_after_another_in_dapp, id: 6288
Device sessions

26. test_can_add_existing_ens, id: 5502
Device sessions

27. test_transaction_wrong_password_wallet, id: 5408
Device sessions

28. test_public_chat_messaging, id: 5313
Device sessions

29. test_unread_messages_counter_public_chat, id: 5360
Device sessions

30. test_text_message_1_1_chat, id: 5305
Device sessions

31. test_decline_transactions_in_1_1_chat_push_notification_changing_state, id: 6265
Device sessions

32. test_can_use_purchased_stickers_on_recovered_account, id: 5783
Device sessions

33. test_open_transaction_on_etherscan, id: 5384
Device sessions

34. test_send_audio_message_with_push_notification_check, id: 6316
Device sessions

35. test_onboarding_screen_when_requesting_tokens_for_recovered_account, id: 5677
Device sessions

36. test_contact_profile_view, id: 5382
Device sessions

37. test_offline_add_new_group_chat_member, id: 3998
Device sessions

38. test_logcat_backup_recovery_phrase, id: 5419
Device sessions

39. test_can_recover_keycard_account_card_pairing, id: 5758
Device sessions

40. test_start_chat_with_ens, id: 5403
Device sessions

41. test_add_account_to_multiaccount_instance_seed_phrase, id: 6271
Device sessions

42. test_open_blocked_site, id: 6210
Device sessions

43. test_open_chat_by_pasting_public_key, id: 5304
Device sessions

44. test_pair_devices_sync_one_to_one_contacts_public_chat, id: 5762
Device sessions

45. test_keycard_sign_message_from_daap, id: 6251
Device sessions

46. test_send_non_english_message_to_newly_added_contact, id: 5315
Device sessions

47. test_ens_username_recipient, id: 5406
Device sessions

48. test_fetch_more_history_in_empty_chat, id: 6205
Device sessions

49. test_open_public_chat_using_deep_link, id: 5396
Device sessions

50. test_switch_users_and_add_new_account, id: 5356
Device sessions

51. test_add_account_to_multiaccount_instance_generate_new, id: 6224
Device sessions

52. test_copy_contact_code_and_wallet_address, id: 5375
Device sessions

53. test_send_two_transactions_one_after_another_in_dapp, id: 5744
Device sessions

54. test_image_in_one_to_one_send_save_reply, id: 6305
Device sessions

55. test_add_new_keycard_account_and_login, id: 5689
Device sessions

56. test_long_press_delete_clear_all_dapps, id: 5390
Device sessions

57. test_copy_and_paste_messages, id: 5317
Device sessions

58. test_back_forward_buttons_browsing_website, id: 5321
Device sessions

59. test_password_in_logcat_creating_account, id: 5414
Device sessions

60. test_sign_message_from_daap, id: 5342
Device sessions

61. test_dapps_permissions, id: 5738
Device sessions

62. test_request_public_key_status_test_daap, id: 5397
Device sessions

63. test_long_press_to_delete_chat, id: 5319
Device sessions

64. test_collectible_from_wallet, id: 5346
Device sessions

65. test_log_level_and_fleet, id: 5368
Device sessions

66. test_reactions_to_message_in_chats, id: 6315
Device sessions

67. test_add_and_delete_watch_only_account_to_multiaccount_instance, id: 6244
Device sessions

68. test_recover_account_from_new_user_seedphrase, id: 6296
Device sessions

69. test_send_transaction_with_custom_token, id: 6208
Device sessions

70. test_send_eth_in_1_1_chat, id: 6253
Device sessions

71. test_send_two_transactions_in_batch_in_dapp, id: 5743
Device sessions

72. test_block_user_from_public_chat, id: 5786
Device sessions

73. test_offline_status, id: 5326
Device sessions

74. test_wallet_set_up, id: 5335
Device sessions

75. test_manage_assets, id: 5341
Device sessions

76. test_offline_messaging_1_1_chat, id: 5310
Device sessions

77. test_account_recovery_with_uppercase_recovery_phrase, id: 5394
Device sessions

78. test_send_token_with_7_decimals, id: 5350
Device sessions

79. test_user_can_see_all_own_assets_after_account_recovering, id: 5381
Device sessions

80. test_pass_phrase_validation, id: 5363
Device sessions

81. test_keycard_can_see_all_transactions_in_history, id: 6291
Device sessions

82. test_keycard_send_two_transactions_in_batch_in_dapp, id: 6287
Device sessions

83. test_send_emoji, id: 5328
Device sessions

84. test_filters_from_daap, id: 5353
Device sessions

85. test_redirect_to_public_chat_tapping_tag_message, id: 5675
Device sessions

86. test_restore_account_from_mnemonic_to_keycard, id: 6240
Device sessions

87. test_send_eth_from_wallet_to_address, id: 5308
Device sessions

88. test_messaging_in_different_networks, id: 5338
Device sessions

89. test_insufficient_funds_wallet_positive_balance, id: 5412
Device sessions

@churik
Copy link
Member

churik commented Oct 30, 2020

All failed e2e are not related to PR (ropsten network issues)

@churik
Copy link
Member

churik commented Oct 30, 2020

@vkjr
looks awesome! question - is it expected that long-press on preview is not working?
So to see the menu for reactions I need to long-tap on the main message with link.

@vkjr
Copy link
Contributor Author

vkjr commented Oct 30, 2020

@churik, hmm, it was never discussed if reaction should work on the link-preview, so I can say it is expected since it wasn't implemented :))
@errorists, wdyt on this?

Anyway I'd be happy to merge this and add improvements as a separate prs :)

@churik
Copy link
Member

churik commented Oct 30, 2020

also not sure about transparency of preview, it can cause such behavior:
IMAGE 2020-10-30 16:11:40

cc @errorists is it OK to merge like this from your POV?

@errorists
Copy link
Contributor

errorists commented Oct 30, 2020

whoa, I didn't know we had a PR for this already. cool 😅 the fix for transparency looks simple enough, just place a white background for the container. I think yes, long press and reactions should be possible for the unfurled message alone with actions: Open and Copy, without replies.

oh and yes it's ok to merge if we follow up with the long press menu fixes

@vkjr
Copy link
Contributor Author

vkjr commented Oct 30, 2020

Would be happy implement long press menu fixes immediately after this one)

@churik
Copy link
Member

churik commented Oct 30, 2020

@vkjr dark mode is affected
IMAGE 2020-10-30 17:01:33

@vkjr
Copy link
Contributor Author

vkjr commented Nov 1, 2020

@churik, fixed :)

@churik
Copy link
Member

churik commented Nov 2, 2020

Thanks @vkjr !
All good now.

@vkjr
Copy link
Contributor Author

vkjr commented Nov 2, 2020

@cammellos, @flexsurfer, needs your approval :)

@@ -393,6 +393,17 @@
(log/debug "[native-module] deactivateKeepAwake")
(.deactivateKeepAwake ^js (status)))

(defn link-preview-whitelist
Copy link
Member

Choose a reason for hiding this comment

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

leftover?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yes, thanks for catching!

Signed-off-by: Volodymyr Kozieiev <[email protected]>
@vkjr vkjr merged commit f99b2aa into develop Nov 2, 2020
@vkjr vkjr deleted the url_unfurling branch November 2, 2020 13:28
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.

Add unfurling of URLs in chats
7 participants