Commit Graph

575 Commits

Author SHA1 Message Date
Roman Volosovskyi 15747558fa
[#7179] Fix command message preview in the list of chats
The bug was introduced in #7055.

`message-type` was stored and used instead of `content-type` which
caused incorrect displaying of the last message preview if the one was a
command.
2018-12-27 16:35:45 +02:00
Roman Volosovskyi 768da1a5f0
[slow sign in] Fetch generic password only once
Previously it was fetched each time when any realm db was opened,
but it should happen only once. Saves up to 300ms on sign in.
2018-12-27 12:37:29 +02:00
Roman Volosovskyi e3cc50c7d7
[slow sign in] Adding symkeys and filters in batch
This commit changes the way how keys are restored:
1. batch of `ssh.addSymKey` requests for all sym keys is sent at once
2. `:status-im.transport.core/sym-keys-added` event is dispatched with
   results of all successful `ssh.addSymKey` calls
3. filter is created via `ssh.newMessageFilter`
4. `:shh.callback/filters-added` event is dispatched with all added
   filters as a parameter
5. profit

In ideal case only 2 `re-frame` events are dispatched.
2018-12-27 11:49:50 +02:00
yevh-berdnyk 62c7d645b7
Commit status change depending on e2e tests results
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-12-24 16:27:00 +02:00
Andrea Maria Piana 5f910a0bec
Sync public chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-12-24 14:35:17 +01:00
Roman Volosovskyi 9a9cd0d8d0
[slow sign in] Denormalize last-clock-value
In order to get `:last-clock-value` one extra query was executed for
each chat during initialization.

Implementation:
- `:last-clock-value` field was added to `chat` entity
- this field is updated when the message is sent/received
- extra query was removed
2018-12-24 14:18:42 +02:00
Anton Danchenko 923509b9a0
added an ability to run tests by testrail case ids
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-12-23 17:15:50 +02:00
Julien Eluard 5db9aa9ac7
Reintroduced broken PR #7092 with fix
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-12-21 14:55:32 +01:00
Dmitry Novotochinov 962c49e345
add keycard installation
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-12-20 15:43:37 +03:00
Anton Danchenko 67a47fac56
workaround on wrong transition to home instead of chat
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-12-19 13:02:02 +02:00
Roman Volosovskyi c440b7a3a7
[slow sign in] Denorlmalize last message
The last messages of the chats are necessary to properly show the chat
list, which is shown right after signing in. Before this commit, the
last message was retrieved as one of 20 last messages fetched for each
chat.

Implementation:
- `:last-message-content` and `:last-message-type` fields were added to
  `chat` entity
- both fields are updated when messages are received/sent
- loading of the last 20 messages for each chat was removed as
  initialization step
2018-12-17 13:29:10 +02:00
Roman Volosovskyi 07e8f6908d
[#6952] Fix odd app behavior after quick logout
This commit changes the way how/when the node is started/stopped:
1. `node` is not started on the app startup
2. When the user presses "Sign in" button the node is started
   with user specific configs (`InstallationID`, custom bootnodes, etc),
   and only after that `Login` call is performed.
3. When the user creates a new account, at first the node is started
   with default params (the same as would be used when user signs into
   the app after account creation whithout changing any setting), then
   `CreateAccount` call happens, then `Login`.
4. When the user restores their account, the flow is the same as `3`
   but with `RecoverAccount` instead of `CreateAccount`
5. When the user logs out the node is stopped. That's it.
2018-12-17 13:27:17 +02:00
Anton Danchenko 88c06c53d4
urllib upgrade
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-12-14 15:50:49 +02:00
Andrea Maria Piana d760f1696c
Add mailservers confirmations & use peer count for online status
We now check that we are only connected to some `peers` instead of using `NetInfo` from `react-native`.

This is because it has been reported to be quite flaky at times, not reporting online status after sleeping, and for privacy concerns (on ios it pings `apple.com`, on desktop `google.com`).

Adds a new banner `Wallet Offline` and change `Connecting to peers` to  `Chat offline`.

A message will be marked as `Sent` only if it made it to the mailserver you are connected to, which will increase the guarantees that we can make about a message (if you see it as sent, it has reached at least a mailserver), this has the consequence that:

- If you are not connected to any mailserver or the mailserver is non responsive/down, and you send a message, it will be marked as `Not sent`, although it might have been actually made it in the network.

Probably this is something that we would like to communicate to the user through UX (i.e. tick if made it to at least a peer, double tick if it made to a mailserver )

Currently I have only enabled this feature in nightlies & devs, I would give it a run and see how we feel about it.
2018-12-12 19:53:01 +01:00
Anton Danchenko f6777edbdc
migration to latest appium version
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-12-12 17:33:00 +02:00
Rob Culliton 88d3e78454
change 9+ to actual count of unread messages
unread-messages-count fn, based off Maciej's comment on #6749

adding test, some difficulty running the test suite locally via clj

actually use the new functionality for displaying on desktop

first pass at updated styling for unread count chat icons

styling pass 2: finer attention to detail for the purple/blue icons

a bit more padding bloat to accomodate for the number 1, which occurs
frequently :)

remove counter from "home" icon on desktop

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-12-12 15:55:13 +02:00
Lukasz Fryc 45aa302637
Add group chats appium tests
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-12-11 12:55:25 +02:00
Igor Mandrigin afc368b1b0
Upgrade status-go to 0.17.6-beta (Constantinople).
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-12-10 12:59:44 +01:00
yevh-berdnyk d299713037
Added new desktop e2e tests
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-12-10 00:54:51 +01:00
Corey 9e75b89d58
Upgrade requests for vuln report 2018-12-05 16:42:08 +02:00
Roman Volosovskyi b6e515618b
[#6956] upgradable `message-id`
Implementation:
1. `transport.utils/message-id` function is called only in three places now
   and accepts `from` and  `raw_payload` as parameters.
   ID is calculated as `sha3(from + raw_payload)`.
2. This means that for wrapped private group chat message
   the raw payload of `GroupMembershipUpdate` is used.
2018-12-05 11:22:43 +02:00
Oleksii Lymarenko e80200f260
tests added: check wallet modal in 1*1/group chats
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-12-04 13:39:02 +02:00
Andrea Maria Piana dfbc27c5d7
Allow admin to leave chat
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-12-04 10:17:50 +01:00
Anton Danchenko 73cbfd4cd9
new separator in public usernames and medium priority for test_user_can_interact_with_public_chat
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-12-03 11:44:32 +01:00
Vitaliy Vlasov dc4841f041
Add react-native-desktop-menu native module
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-12-01 02:03:06 +02:00
Anton Danchenko c91e51459f
fix pytest internal error if no response from saucelabs
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-11-30 21:37:35 +02:00
Andrea Maria Piana 5795ca8d1a
Enable group chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-30 11:12:34 +01:00
Julien Eluard e3e75e0498
[Fixes #6874] Added transaction-receipt, schedule and balance events
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-29 23:09:45 +01:00
Andrea Maria Piana 08291a8396
Keep username/photo-path synced across devices
We add syncing of account fields in pairing messages (only photo-path &
name for now). Also a sync message is sent each time we send a
contact-update, to keep other devices in sync. The change is compatible
with previous clients as it's just an accretion of transit.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-29 11:37:14 +01:00
Oleksii Lymarenko 6cf9e6136b
fix for key dict; skip mark removed
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-29 12:04:30 +02:00
Oleksii Lymarenko 79e542e1d5
new test added: redirect to public chat upon tap on the #tag in message
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-28 16:04:30 +02:00
Lukasz Fryc 5b95872a28
Do not save device stats in InfluxDB if database not provided 2018-11-28 10:57:18 +01:00
Oleksii Lymarenko 602a33fdaa
added tests: not enough eth for gas validation from DApp/wallet/chat
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-28 10:03:33 +02:00
yevh-berdnyk 1d0c00d4bc
Fixed test_user_can_interact_with_public_chat
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-11-26 20:17:06 +01:00
tbenr 2d5c4e3892
fixes #6601
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-25 21:02:58 +01:00
Roman Volosovskyi 5d5847e4b9
[slow sign in] Add unviewed messages counter to chat entity.
Before we fetched ALL user-statuses with `status=received` (which means that
a message hasn't been seen), iterated them, grouped by chat and then stored
`message-ids` of these `user-statuses` in chat's `:unviewed-messages` key.

This commit introduces :unviewed-messages-count field in chat entity.
That means that there is no need to iterate `user-statuses` in order to count
a total number of unviewed messages, it is always stored along with chat.
In the rest of it, the difference is only that chat's db record should be
updated each time when unviewed messages are seen.
2018-11-23 17:08:48 +02:00
Andrey Shovkoplyas 5dd345fe49
[#6643] Allow chat command suggestions to select parameter
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-22 15:57:39 +01:00
Oleksii Lymarenko f1b457677c
new test added: user can send/read messages in public chat
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-22 15:28:37 +02:00
Oleksii Lymarenko ad922f4c60
new test added: check currency fiat value is correct
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-22 15:26:12 +02:00
Bruce Hauman a5c5e1831f
better protect transaction history polling from errors
Go blocks parse try catch blocks and turn them into event
dispatches. This captures the original intent of the code to catch
errors and terminate the current async worker execution.

Signed-off-by: yenda <eric@status.im>
2018-11-21 17:25:36 +01:00
Julien Eluard ee4cafbbe3
[Fixes #6784] Fixed some ABI codec issues
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-21 11:12:19 +01:00
Bruce Hauman d5dde69af9
[#6718] restyle wallet onboarding flow
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-20 17:21:26 +01:00
Goran Jovic 72e7ae2fff
feature #6509 - validating token config against their contracts; moved token info from compile time list to app-db; fixed any discrepancies in existing info
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-20 17:18:08 +01:00
Oleksii Lymarenko 58dc06267c
fix faq element locator on help view
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-20 17:26:52 +02:00
Anton Danchenko 1e241b5a90
removed sign in after the network switch
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-11-20 14:48:08 +02:00
Oleksii Lymarenko 9b198e4352
new test added: user can see own assets after account recovering
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-20 09:11:47 +02:00
Oleksii Lymarenko bc44df32cb
new test added: check that system replaces capital letters when typing passphrase
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-19 19:02:00 +02:00
Anton Danchenko cf15789e2a
skip tests in order not to false fail in PR
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-11-19 16:45:03 +02:00
yenda 1ba7feb439
[refactor] move contact.subs and utils.contacts to contact.db
functions defined in subs need to be reusable and testable independently
from re-frame framework. they are moved into db namespace for that purpose

Signed-off-by: yenda <eric@status.im>
2018-11-19 14:30:25 +01:00
Lukasz Fryc eed610c46e
Allow to measure battery and network consumption on real device 2018-11-19 14:16:10 +01:00
yenda 77e9aea755
[refactor] move chat.subs fns to chat.db
Signed-off-by: yenda <eric@status.im>
2018-11-19 12:30:58 +01:00
Anton Danchenko 4ad021691f
added runner and testrail report
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-11-16 11:53:40 +02:00
Bruce Hauman 1716643c46
[#5749] transaction history fixes
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-16 10:03:54 +01:00
yevh-berdnyk e08b496c38
Fixed transactions history test
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-11-15 18:11:58 +01:00
Anton Danchenko 510961e333
swipe to delete fix
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-11-15 12:22:28 +02:00
Oleksii Lymarenko 89e0ea0bd2
new test added: check fiat value is correct for token transactions
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-14 22:43:50 +02:00
yevh-berdnyk 68d6255d44
Fixed chat element locator
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-11-14 18:17:16 +01:00
Andrea Maria Piana 1104becfba
Enable syncing of contacts & style pairing section
Everytime a contact request is sent/confirmed a sync message is also
sent to other devices so the contact is kept in sync.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-14 13:21:14 +01:00
Serhy 5e2c192524
Add automated tests according to #6649
Signed-off-by: Serhy <sergii@status.im>
2018-11-09 12:56:18 +02:00
Eric Dvorsak 548162f733
[refactor] remove current-public-key 2018-11-09 11:16:27 +01:00
Eric Dvorsak f8f499d9b0
[refactor] rename whisper-id and whisper-identity to public-key 2018-11-09 11:16:27 +01:00
Eric Dvorsak a6da75f8e9
[refactor] remove email field in account 2018-11-09 11:16:27 +01:00
Eric Dvorsak 4804d11b0f
[refactor] remove jail-loaded? and jail-loaded-events 2018-11-09 11:16:23 +01:00
yevh-berdnyk 9a088ffc54
Fixed onboarding from DApp and openning links tests
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-11-07 17:32:21 +01:00
yenda a3b2bc1b87
[fix #3913] do not logout when changing mailserver
- do not logout and remove previous mailserver
from peers when changing mailserver
- rename wnode mailserver
- move transport.inbox to mailserver.core
- fix all subs and db keys

Signed-off-by: yenda <eric@status.im>
2018-11-07 17:10:18 +01:00
Oleksii Lymarenko ed16d9f191
new test added: can complete txn to dapp after onboarding called from dapp is completed
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-07 17:40:16 +02:00
Dmitry Novotochinov 737d44931f
[#4433] update mac os dock badge label on new messages
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-11-07 18:18:35 +03:00
Serhy 6063134202
ix request ETH in simple dapp
Signed-off-by: Serhy <sergii@status.im>
2018-11-07 16:17:21 +02:00
Andrea Maria Piana 693eae9cf9
Send your own messages
Adds a `chat-id` field in `content` map.

The reason it has been added to the map instead of augmenting transit is
that it would simplify the calculation of `message-id`, which in this
case is consistent for both old & new clients.

`chat-id` also represents the `chat-id` with respect of the sender, as
in 1-to-1 chats that is asymmetric.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-06 21:19:50 +01:00
janherich ff97345f07
Plug-in new text parsing engine 2018-11-06 19:59:24 +01:00
Oleksii Lymarenko 9248db8dfb
changed element locator
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-06 16:33:04 +02:00
Andrea Maria Piana 7aa597517e
Add system messages to group chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-05 14:54:43 +01:00
Oleksii Lymarenko a8481ab3e1
got rid of set_network_connection() usage in test due to permanent failing
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-05 15:06:44 +02:00
Oleksii Lymarenko 70388b9113
refreshed saucelabs image templates
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-11-05 15:04:49 +02:00
Serhy b0b2e5013b
Fix help section test
Signed-off-by: Serhy <sergii@status.im>
2018-10-31 11:41:41 +02:00
Oleksii Lymarenko 092da7ab9d
added test: can proceed using dapp after transacting tokens
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-10-29 10:33:33 +02:00
Oleksii Lymarenko aa18cdc20e
functional test added: user can remove profile picture
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-10-29 10:19:34 +02:00
yevh-berdnyk c348342590
Added TestRail link for test results in PRs
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-10-28 15:03:40 +01:00
Andrea Maria Piana 073dddcee0
Add pairing
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-27 20:43:53 +02:00
yevh-berdnyk f8343cc377
Fixed logging
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-10-25 15:16:16 +03:00
Andrey Shovkoplyas f8ef431373
[extensions] ethereum call decode params
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-10-25 09:22:29 +02:00
yenda e020f19da0
[fix 6500] search doesn't find name for contact that added user
- chat name is not updated with contact name
- when a contact adds the user and is added back by user, the name
of the chat is still the random name of the contact
- in active-chats subscriptions, replace the name of the chat by the current
name of the contact
2018-10-24 18:18:50 +02:00
yevh-berdnyk af360cbda6
Added new tests for desktop
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-10-24 17:16:56 +03:00
Goran Jovic 3da2cd9b9e
feature #6250 - added xdai and poa sidechains
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-10-24 10:00:04 +02:00
yenda 82c3997f07
[desktop] Add search feature for chat list
Signed-off-by: yenda <eric@status.im>
2018-10-23 17:27:27 +02:00
Oleksii Lymarenko 96fe193daa
switching airplane toggle method added
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-10-23 16:30:54 +03:00
yevh-berdnyk 927038a1d7
dockerfile for running e2e tests against desktop app
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-10-23 14:41:23 +03:00
Oleksii Lymarenko 0ef2b68f69
changed element locator for a test
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-10-23 11:32:06 +03:00
yenda 6b1c6c7d0a
[fix 6410] error when fetching history on certain accounts
- 1-1 chats don't have a topic anymore because they only use the
discovery topic so topic is nil for these chat
- this was causing an error when initializing whisper because the app
was trying to start a filter for each of the chat including the 1-1 with
no topic
- we now filter the transport/chats to only recover sym-key and start filter
for those with a topic
2018-10-22 19:10:34 +02:00
Anton Danchenko 7d0c655441
fix for ETHro selection
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-10-19 12:43:08 +03:00
Andrea Maria Piana 9629983f7f
Remove instabug 2018-10-19 09:18:22 +03:00
Roman Volosovskyi 4c426d9c2b
remove the rest of testfairy's mentions from the project 2018-10-18 20:54:59 +03:00
Aleksandr Pantiukhov 76a724a2e7
[#6228]: API: requesting to connect to a node that is not available crashes the application
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-18 16:43:42 +02:00
Oleksii Lymarenko df9a59e255
removed critical mark from transaction history test
Signed-off-by: Oleksii Lymarenko <alexey.lymarenko@gmail.com>
2018-10-18 17:38:13 +03:00
Dmitry Novotochinov 248e60e1d3
[#5038] desktop deep links
Add support for status-im://chat/public/status type of links

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-10-18 16:02:14 +03:00
yevh-berdnyk 75ade1673b
False failures fix
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-10-18 12:04:12 +03:00
Lukasz Fryc 8e9f0143ad
Remove TestFairy from E2E tests
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-10-17 22:37:05 +03:00
janherich acd05e2687
Implementation of text content parsing 2018-10-16 23:13:11 +02:00
yevh-berdnyk 55d72b534a
Desktop automation PoC
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2018-10-16 17:52:26 +03:00
Oleksii Lymarenko dd7132f7d2
cast rerun count to int
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2018-10-16 12:35:54 +03:00