Commit Graph

1238 Commits

Author SHA1 Message Date
Churikova Tetiana 1caec28d03
review TODO
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2020-01-03 23:20:59 +01:00
Serhy 1956671e7d
Seedphrase validation in e2e and fixes
Signed-off-by: Serhy <sergii@status.im>
2020-01-03 19:36:42 +02:00
yenda bf16116acd
move multiaccount settings to a table
integrate status-go changes to move multiaccount settings to a table
that can be migrated

Signed-off-by: yenda <eric@status.im>
2020-01-02 18:07:10 +01:00
Serhy 4096487637
Test reply to messages in chats
Signed-off-by: Serhy <sergii@status.im>
2019-12-27 18:20:55 +02:00
Churikova Tetiana ff268dd5c0
extend e2e about mailservers
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-27 16:05:55 +01:00
Serhy d8db958319
Fix alert dismiss if it appears
Signed-off-by: Serhy <sergii@status.im>
2019-12-26 14:20:35 +02:00
Churikova Tetiana 4fe49568f7
added checks for contact list
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-26 13:06:10 +01:00
Serhy 0fa6ae589b
v1 Copy Changes - Key Generation, Storage
Signed-off-by: Serhy <sergii@status.im>
2019-12-21 18:06:29 +02:00
Churikova Tetiana 1d0ab4052d
Watch-only test and additional waiting when signing transaction
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-20 18:53:31 +01:00
Churikova Tetiana 8578c317d6
removed show_ens_in_chats toggle from e2e
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-19 13:49:37 +01:00
Serhy 1a61ae4b73
Fix e2e update Dapps tp Browser
Signed-off-by: Serhy <sergii@status.im>
2019-12-19 12:32:27 +02:00
Churikova Tetiana 3b6c6972d3
additional check for stateous user without domain
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-18 17:50:19 +01:00
Serhy df232889f4
Update e2e
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-18 16:18:08 +01:00
yenda a21454039b
do not store mnemonic on recovered accounts
Signed-off-by: yenda <eric@status.im>
2019-12-17 18:33:42 +01:00
Churikova Tetiana bdbbcbb1da
modified switch_network
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-17 11:03:45 +01:00
Andrey Shovkoplyas c84c44fe3b
[#9636] Remove chat menu item and toggle app switching privacy on by default
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-13 14:46:54 +01:00
Churikova Tetiana 5da40ca412
removed web allow permissions test
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-11 16:34:37 +01:00
Andrey Shovkoplyas e7122dc86a
[#9575] Make sure status supports EIP 1102 and EIP 1193 2019-12-11 16:17:52 +01:00
Roman Volosovskyi beed1a60ee
[#9573] Fix some password saving bugs 2019-12-11 12:15:25 +02:00
Churikova Tetiana 4a40b6f033
add junitxml report back
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-12-10 19:48:36 +01:00
Andrea Maria Piana 54cf783d5b
Move group chats to status-go
This commit completely remove transit for group chats. All the
processing is now done in status-go.
Also introuduces parsing and handling of mentions, needed so that system
messages can be easily built in status-go.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-12-10 16:18:26 +01:00
Churikova Tetiana 53523430cc
Formatted text in 'From' field
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-09 17:19:32 +01:00
Roman Volosovskyi 91b931c3b4
Replace address with keyUid in accounts db
Account's address was used as a primary key in accounts db and as a
deterministic id of an account in some API calls. Also it was used as a
part of the name of the account specific database. This revealed some
extra information about the account and wasn't necessary.
At first the hash of the address was planned to be used as a
deterministic id, but we already have a keyUid which is calculated as
sha256 hash of account's public key and has similar properties:
- it is deterministic
- doesn't reveal accounts public key or address in plain
2019-12-09 11:57:44 +02:00
Churikova Tetiana 9abb1ef488
another tiny fixes to e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-06 16:50:17 +01:00
Churikova Tetiana 21d24e7eef
waiting for allow_button until checking absense
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-06 10:57:38 +01:00
Andrea Maria Piana 78d694f52f
Move message processing to status-go and introduce protobuf
This commit moves all the processing of messages to status-go.

Messages are going arrive to status-react already saved an processed.

Receiving/sending/retrieving from db is now using the same identical
structure. The only processing left in status-react is to mark the
messages as seen and update the unviewed count locally (only
status-react knows whether the count should be updated).

Partially remove commands as well as won't be used anymore.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-12-05 17:30:30 +01:00
Serhy 0b2490d20e
Fix wallet tests
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-12-05 11:14:46 +01:00
acolytec3 2fda266f07
Add ENS name resolution to EIP681 support
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-05 10:48:05 +01:00
yenda 94c7953f30
remove commands before replacement by gui commands
Signed-off-by: yenda <eric@status.im>
2019-12-03 15:07:56 +01:00
Serhy 0b802ec456
Update e2e test to expect changes
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-12-03 13:10:56 +01:00
Serhy 577e699405
Upgrade to pytest 5.3.1
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-12-02 12:55:50 +02:00
Serhy 13a619502c
Fixing wallet send tx tests
Signed-off-by: Serhy <sergii@status.im>
2019-11-29 19:43:59 +02:00
Churikova Tetiana 34b356866b
fixed several e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-29 11:30:40 +01:00
yenda 572e028f32
fix 9394 select mailserver based on ping
- if not mailserver was actively selected by user,
use rpc call to get latency for known mailservers
and use the best one
- this happens when `set-current-mailserver` is called which happens
in `change-mailserver` when user unpins his preferred mailserver and when
there's been too many failed attemps to fetch messages or to connect to
then current mailserverm as well as when user logs in.

Signed-off-by: yenda <eric@status.im>
2019-11-28 23:31:39 +01:00
Churikova Tetiana eecf53d11f
more wait for lets_go_button
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-25 17:46:33 +01:00
Andrey Shovkoplyas bf5416b629
remove statusbar and add safeview for android
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-11-25 14:42:09 +01:00
Churikova Tetiana 47d22305db
test_set_primary_ens_custom_domain
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-25 11:36:49 +01:00
acolytec3 76296870d1
Truncate decimal values beyond 6 decimal places in signing sheet
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-11-21 19:05:36 +01:00
Churikova Tetiana 0b1da0e118
markdown support test + waits
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-21 12:01:57 +01:00
Serhy 84325fc528
Fix invite friends test
Signed-off-by: Serhy <sergii@status.im>
2019-11-21 12:47:34 +02:00
Andrea Maria Piana ddbfc78e08
[Fixes: #9492] Consider system messages always in their own group
System messages should always display the user picture, and should never
be grouped.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-20 12:25:50 +01:00
Churikova Tetiana 40ca4af6a6
align e2e with accessibility-ids
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-18 13:11:52 +01:00
Serhy 6aa225192f
Test can cancel quote message
Signed-off-by: Serhy <sergii@status.im>
2019-11-18 12:25:28 +02:00
Andrea Maria Piana 9a9c0ce526
Render markdown
Fixes: https://github.com/status-im/trailofbits-audit/issues/47
Fixes: https://github.com/status-im/trailofbits-audit/issues/46
Fixes: https://github.com/status-im/trailofbits-audit/issues/44
Fixes: https://github.com/status-im/security-reports/issues/13
Fixes: https://github.com/status-im/security-reports/issues/5
Fixes: https://github.com/status-im/status-react/issues/8995

This commits re-introduce rendering of markdown text and implent a few
changes:

1) Parsing of the message content is now in status-go, this includes
markdown, line-count, and rtl. Parsing is not nested, as there's some
rendering degradation involved as we nest components, unclear exactly if
it's react-native or clojure, haven't looked too deeply into it.
2) Emojii type messages are not parsed on the sending side, not the
receiving one, using the appropriate content-type
3) Fixes a few issues with chat input rendering, currrently we use
`chats/current-chat` subscription which is very heavy and should not be
used unless necessary, and means that
any change to chat will trigger a re-render, which caused re-rendering
of input container on each received message. Also to note that
input-container is fairly heavy to render, and it's rendered twice at
each keypress on input.

The inline markdow supported is:

*italic* or _italic_
**bold** or __bold__
`inline code`
http://test.com links
\#status-tag

The block markdown supported is:

\# Headers
```
code blocks
```
> Quotereply

The styling is very basic at the moment, but can be improved.
Adding other markdown (photo,mentions) is straightforward and should
come at little performance cost (unless the component to render is
heavy, i.e a photo for example).

There are some behavioral changes with this commit:

1) Links are only parsed if starting with http:// or https://, meaning that
blah.com won't be parsed, nor www.test.com. This behavior is consistent
with discord for example and allows faster parsing at little expense to
ser experience imo. Fixes a few security issues as well.

2) Content is not anymore capped (regression), that's due to the fact that
before we only rendered text and react-native allowed us easily to limit
the number of lines, but adding markdown support means that this
strategy is not viable anymore. Performance of rendering don't see to be
very much impacted by this, I would re-introduce it if necessary, but
I'd rather do that in a separate PR.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-15 10:23:25 +01:00
Churikova Tetiana 3127f2fcb2
Reworked test_ens
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-11-14 12:04:26 +01:00
Churikova Tetiana 2ed62e53eb
added waits
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-12 12:44:51 +01:00
Andrea Maria Piana 13b01ce879
Fix replies, clear-history, logout bug
Fixes #9433 : this was due to the fact that `.-response-to` was
returning nil, because of the dash in the name, instead in this cases
`(aget .. "response-to")` should be used.

Fixes #9431 : This was a left-over from the move from message-groups to
message-list, and the code was not updated.

Fixes #9430 #9429 Both of these were due to the same issue, cofx were
wrongly passed to the function resulting in the db being updated but the
fxs being discarded.

There's still a separate issue that might result in messages not being
saved on logout, because of a race condition (if you logout while is
fetching messages, some of the message might not be saved). I will
address that separately as we might be able to just save messages as
they come in status-go, rather then having to pass them to status-react
and back to status-go for saving.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-12 11:27:26 +01:00
Andrea Maria Piana 2bb7c70216
[Fixes: #1520] Enable ens
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-08 13:03:42 +01:00
Churikova Tetiana 9205a147a2
tiny fix to test_send_funds_between_accounts_in_multiaccount_instance
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-07 16:26:37 +01:00
Churikova Tetiana 9311fee2ae
wallet update balance and fix failures
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-07 14:40:12 +01:00
Andrea Maria Piana 5fe385c225
Parse messages in status-go
This commit enables parsing of messages in status-go.
Currently only a few messages are supported in status-protocol-go.
For now we only enable Message types.
Status-react will conditionally use the parsed version if present.
Eventually this can be moved to a separate signal/different structure,
but for the time being is best to validate with the minimum amount of
changes.

The next step would be handle validation and processing of the field in
status-go, so we can skip saving the message from status-react.

This commit should improve performance of receiving messages from a
chat, although haven't had time to validate that.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-06 19:30:47 +01:00
Andrea Maria Piana 9a2e1e97db
[Fixes: #9400] Fix last-group
The from parameter was left out, tests did not pick it up as they were
not running, probably I have wrongly rebased the code and did not
include the new namespace in runner.cljs

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-06 17:47:28 +01:00
Churikova Tetiana 2e8e1a35ad
adjust tests to eth.fleet
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-11-05 12:17:47 +01:00
Andrea Maria Piana 1c63c782a4
Dont use network info but only rely on peers count for mailservers
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-05 11:50:54 +01:00
Andrea Maria Piana 5eb314db58
Use staging fleet and upgrade status-go
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-04 15:07:12 +01:00
Andrea Maria Piana c69863cda2
Fix message ordering and improve performance rec. messages
This commit does a few things:

==== Ordering of messages ====

Change the ordering of messages from a mixture of timestamp/clock-value to use
only clock-value.

Datemarks are now not used for sorting anymore, which means that the
order of messages is always causally related (not the case before, as we
were breaking this property by sorting by datemark), but datemark
calculation is unreliable (a reply to a message might have a timestamp <
then the message that is replied to).
So for timestamp calculation we
naively group them ignoring "out-of-order timestamp" messages, although
there's much to improve.
It fixes an issue whereby the user would change their time and the
message will be displayed in the past, although it is still possible to
craft a message with a lower clock value and order it in the past
(there's no way we can prevent this to some extent, but there are ways
to mitigate, but outside the scope of this PR).

==== Performance of receiving messages ====

The app would freeze on pulling messages from a mailserver (100 or so).
This is due to the JS Thread being hogged by CPU calculation, coupled
with the fact that we always tried to process messages all in one go.

This strategy can't scale, and given x is big enough (200,300,1000) the
UI will freeze.

Instead, each message is now processed separately, and we leave a gap
between processing each message for the UI to respond to user input
(otherwise the app freezes again).
Pulling messages will be longer overall, but the app will be usuable
while this happen (albeit it might slow down).
Other strategies are possible (calculate off-db and do a big swap,
avoiding many re-renders etc), but this is the reccommended strategy by
re-frame author (Solving the CPU Hog problem), so sounds like a safe
base point.

The underlying data structure for holding messages was also changed, we
used an immutable Red and Black Tree, same as a sorted map for clojure, but we use
a js library as is twice as performing then clojure sorted map.

We also don't sort messages again each time we receive them O(nlogn), but we
insert them in order O(logn).

Other data structures considered but discarded:
1) Plain vector, but performance prepending/insertion in the middle
(both O(n)) were not great, as not really suited for these operations.

2) Linked list, appealing as append/prepend is O(1), while insertion is
O(n). This is probably acceptable as messages tend to come in order
(from the db, so adding N messages is O(n)), or the network (most of
them prepends, or close to the head), while mailserver would not follow this path.
An implementation of a linked list was built, which performed roughtly the
same as a clojure sorted-map (although faster append/prepend), but not
worth the complexity of having our own implementation.

3) Clojure sorted-map, probably the most versatile, performance were
acceptable, but nowhere near the javascript implementation we decided on

4) Priority map, much slower than a sorted map (twice as slow)

5) Mutable sorted map, js implementation, (bintrees), not explored this very much, but from
just a quick benchmark, performance were much worse that clojure
immutable sorted map

Given that each message is now processed separately, saving the chat /
messages is also debounced to avoid spamming status-go with network
requests. This is a temporary measure for now until that's done directly
in status-go, without having to ping-pong with status-react.

Next steps performance wise is to move stuff to status-go, parsing of
transit, validation, which is heavy, at which point we can re-consider
performance and how to handle messages.

Fixes also an issue with the last message in the chat, we were using the
last message in the chat list, which might not necessarely be the last
message the chat has seen, in case messages were not loaded and a more
recent message is the database (say you fetch historical messages for
1-to-1 A, you don't have any messages in 1-to-1 chat B loaded, you receive an
historical message for chat B, it sets it as last message).

Also use clj beans instead of js->clj for type conversion

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-11-01 23:59:26 +01:00
Serhy e579412334
E2e check if seedphrase in new acc is true
Signed-off-by: Serhy <sergii@status.im>
2019-11-01 19:04:11 +02:00
yenda 3528dd809a
fix fleet settings not being saved to node config
Signed-off-by: yenda <eric@status.im>
2019-11-01 11:56:11 +01:00
Serhy c7cc80bc60
Followup e2e fix after PN remove
Signed-off-by: Serhy <sergii@status.im>
2019-10-30 21:34:53 +02:00
Churikova Tetiana bba6d735c3
Remove Myabe later after deleting PN
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-30 09:19:07 +01:00
Churikova Tetiana bada7c4dd4
added more waiting to some elements
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-29 18:23:38 +01:00
Serhy 5b742155d0
Soft errors handing separated per test
Signed-off-by: Serhy <sergii@status.im>
2019-10-29 16:07:27 +02:00
yenda 7bb45fdd8f
remove firebase
Signed-off-by: yenda <eric@status.im>
2019-10-29 15:03:58 +01:00
Serhy eb00df147d
E2E transaction appears in history
Signed-off-by: Serhy <sergii@status.im>
2019-10-28 10:04:45 +02:00
Churikova Tetiana 5561aff955
e2e account settings
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-28 09:02:20 +01:00
Serhy 8ac531ed9c
Add unblock user test
Signed-off-by: Serhy <sergii@status.im>
2019-10-24 19:29:02 +03:00
Churikova Tetiana 39b32707e2
2 mailserver e2e and small fix
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-24 18:20:49 +02:00
Andrea Maria Piana 9cd891365a
Use payload & avoid transforming in clojure objects.
This commit includes a few performance fixes:
1) Pass a string payload instead of an hex encoded string, to avoid
unecessary conversion
2) Don't js->clj on messages, as that's fairly expensive and we can get
away without
3) Don't use `pr-str` `read-string`, rather convert to json

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-10-23 15:52:32 +02:00
Andrea Maria Piana 57b1722863
Verify ens names on messages and contact requests
This commits verifies ens names when new messages or contact requests
come through.
A batch of ens names is sent to status-go which will then verifying them
and the result will be passed back in a callback to status-react.

Also temporary skipped test_ens_in_public_chat until we merge the ENS
code (blocked currently by 1.9 upgrade)

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-10-23 12:32:28 +02:00
Roman Volosovskyi 474ff00c7f
[#8650] Tappable "backup seed" notification in wallet
- notification is tappable
- appears only if user has nonzero balance and hasn't backed up seed yet
- Fix e2e test for this change
2019-10-22 18:14:13 +03:00
Churikova Tetiana dbb4dfa61b
e2e about dapp popup, fix e2e for switching mailserver, skipped low-prio blocked e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-21 14:51:59 +02:00
Serhy c0945c41d6
New e2e tests and fix
Signed-off-by: Serhy <sergii@status.im>
2019-10-21 11:53:50 +03:00
Churikova Tetiana 8fc823f94b
e2e about switching accounts in DApp
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-18 15:49:14 +02:00
Andrey Shovkoplyas 1c51731aea
[#8446] [Multi-Account] Build account settings for individual wallet
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-10-18 12:09:47 +02:00
yenda 7b6dfad702
[fix 8853] fix change of whisper id in ens registration
A user can type in their existing name in the registration flow. Status can
confirm if they own it. After signing a transaction, the user can update the
Whisper ID to their new one.

Instead of using a hardcoded contract for stateofus, the standard `owner`
method is called to find the resolver contract of a ens name.
This allows users to set the pubkey even for ens names that are not
subdomains of stateofus

Signed-off-by: yenda <eric@status.im>
2019-10-16 17:32:07 +02:00
Churikova Tetiana 1f24722db0
resolve ENS in wallet
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-16 15:35:35 +02:00
Andrey Shovkoplyas da4d95d85c
drop les
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-10-15 13:55:39 +02:00
Churikova Tetiana e88472a0e0
fix some testrail links and add new test for checking log_level and fleet
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-15 11:54:04 +02:00
Churikova Tetiana 114b4da2d9
fix deleteing dapps
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-14 14:22:56 +02:00
Serhy c872c5c487
Enable high priority tests in PRs
Also:
- add ci/tests/Jenkinsfile.e2e-prs
- remove maybe_later_button click after new onboarding
- update job name for e2e tests
- Fix testrail checklist creationg for nightly builds

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-10-14 13:52:49 +02:00
Vitaliy Vlasov 5fd269fde8
Onboarding UI fixes
Signed-off-by: yenda <eric@status.im>
2019-10-10 21:00:29 +02:00
Churikova Tetiana 2d1fff479a
Fix stickers \ collectibles
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-10 15:51:21 +02:00
Serhy 5a02ecf2b4
Test seedphrase not active after backup
Signed-off-by: Serhy <sergii@status.im>
2019-10-10 10:40:25 +03:00
Churikova Tetiana d063d94d31
fix for 2 high e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-09 17:53:59 +02:00
Churikova Tetiana e30a547039
Return boolean
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-08 13:29:35 +02:00
Serhy 58c64608d0
Test to check cryptokitty in wallet collectibles
Signed-off-by: Serhy <sergii@status.im>
2019-10-04 19:29:16 +03:00
Churikova Tetiana 4eac209b9b
4 e2e fix
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-04 15:53:43 +02:00
Andrey Shovkoplyas b3d04bb68c
[#8966] biometric
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-10-04 12:43:32 +02:00
Churikova Tetiana da4fb01700
mobile_data_tests
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-10-04 12:13:21 +02:00
Serhy 6037add156
Fix api request to etherscan
Signed-off-by: Serhy <sergii@status.im>
2019-10-02 11:13:27 +03:00
Andrea Maria Piana acd7e56d1d
Add gfycat/identicon from status-go
Signed-off-by: yenda <eric@status.im>
2019-09-26 14:12:43 +02:00
Serhy 42a65a7a1e
Fix multipleaccount test
Signed-off-by: Serhy <sergii@status.im>
2019-09-26 12:39:35 +03:00
yenda c047b588ed
throw errors on dangerous behaviours
- if multiaccount settings are saved on top of an empty map or nil,
this means something went wrong, the state of the app is unstable,
and actually saving will result in loss of data. It should never
happen, but if it does, throw and error and abort.
- sometimes two fxs are merged when they shouldn't, this is caused by
bugs and should never happen, but if it does, throw an error with arguments
for both effects to help localize the error

Signed-off-by: yenda <eric@status.im>
2019-09-25 19:33:43 +02:00
Churikova Tetiana 9d0de73c1e
Another fix for false failures
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-25 17:17:02 +02:00
Churikova Tetiana 4239ae5686
Mobile popup
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-25 16:57:22 +02:00
Serhy 0a5acfb0f7
Update logcat tests
Signed-off-by: Serhy <sergii@status.im>
2019-09-25 11:21:09 +03:00
Dmitry Novotochinov 18ce3b0129
[#8968] custom seed phrase popover
Signed-off-by: yenda <eric@status.im>
2019-09-25 09:39:25 +02:00
Churikova Tetiana ebc2ff04cd
Modified e2e for deleting-clear all dapps
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-09-24 12:07:51 +02:00
Serhy 2c56de0872
Fix app version and deeplink tests
Signed-off-by: Serhy <sergii@status.im>
2019-09-24 10:45:18 +03:00
tbenr f7076016d8
fixes #8071
Signed-off-by: yenda <eric@status.im>
2019-09-20 17:54:23 +02:00
Churikova Tetiana da120feef8
fix for menu item
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-20 16:11:06 +02:00
Churikova Tetiana c3d59db47a
Fix picture for e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-20 14:37:21 +02:00
Churikova Tetiana f7c7a10258
Small fix for new user profile
Signed-off-by: yenda <eric@status.im>
2019-09-20 14:09:34 +02:00
yenda 8ccc858d41
fix #9003 Recover deleted translations
replace i18n/message-status-label by regular label to avoid repeating
this issue in the future

recover the following labels:
- status-not-sent-click
- status-not-sent-tap
- status-sent

Signed-off-by: yenda <eric@status.im>
2019-09-20 13:07:11 +02:00
yenda 47bae76c73
remove group-chat-local-version 2019-09-17 17:09:22 +02:00
Dmitry Novotochinov 1df30f7447
handle initialized cards
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-09-16 11:14:35 +03:00
Churikova Tetiana d3e6414c89
e2e fixes for false failures
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-13 17:36:32 +02:00
acolytec3 7ba83bde74
All strings removed from translations
Signed-off-by: yenda <eric@status.im>
2019-09-13 16:20:49 +02:00
Pedro Pombeiro 9feb31bd3b
Upgrade react-native to 0.60.5
- Use community net-info, react-native-webview instead of deprecated react-native classes
- Remove react-native-tcp
- Upgrade react-native libs (react-native-camera, react-native-firebase, react-native-mail, react-native-udp, react-native-webview-bridge)
- Do not include `:react-native-android` module explicitly
- Take advantage of RN AutoLinking
- nix: Update Gradle dependencies
2019-09-12 16:13:42 +02:00
yenda 5db0a58ab8
remove unused deps and document the others
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-09-12 16:12:46 +02:00
yenda f538cfe848
remove web3 dependency 2019-09-12 15:51:57 +02:00
yenda c3dd950286
remove realm
Signed-off-by: yenda <eric@status.im>
2019-09-09 18:40:15 +02:00
yenda 172038b70d
integrate mailserver-ranges api 2019-09-09 18:39:49 +02:00
yevh-berdnyk 758cdf6cc2
Fixed e2e tests
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-09 11:50:41 +02:00
yevh-berdnyk afe345cb02
Updated profile picture templates and fixed ENS username test
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-06 00:53:47 +02:00
yenda 6be85f46a5
[fix 8702] hash passwords before sending them to status-go
fix #8702

- use ethereum.utils sha3 function to hash passwords before sending them
to status-go
- some native calls take password as one of their params: they now take
hashed-password (still a string, only relevant for status-react caller)
- some native calls take password within a map of rpc params: it now
needs to be hashed with `ethereum.core/sha3`

Signed-off-by: yenda <eric@status.im>
2019-09-05 18:13:10 +02:00
yenda dbf8d60f8b
integrate status-go mailserver-topics api
Signed-off-by: yenda <eric@status.im>
2019-09-05 18:08:03 +02:00
yenda 1147466362
integrate status-go mailserver api 2019-09-05 18:07:17 +02:00
Pedro Pombeiro 66b982c3fb
Use react-native net-info community package
Signed-off-by: yenda <eric@status.im>
2019-09-05 14:16:28 +02:00
yevh-berdnyk e02b7489cc
Updated and added e2e tests
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-05 12:58:56 +02:00
Churikova Tetiana b186676c67
Fix some selectors
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-09-05 12:40:59 +02:00
Andrea Maria Piana e7fa010088
Move gaps to status-go
This commit moves gaps to status-go.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-09-04 15:53:48 +02:00
Pedro Pombeiro 58d310ffce
Remove RAM bundle support 2019-08-30 17:13:35 +02:00
Churikova Tetiana 081b90ff4e
Fix high/critical e2e for profile
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-30 09:54:38 +02:00
Andrey Shovkoplyas 0288d617cb
[#8849] Use node-qrcode instead of react-native-qrcode 2019-08-29 15:53:44 +02:00
Andrea Maria Piana 3b52a61bdf
validate links before opening
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-29 15:14:06 +02:00
Churikova Tetiana fe6f7999bd
Fix critical e2e for new profile
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-29 12:26:06 +02:00
yenda b28c521b2b
remove semaphores 2019-08-28 11:11:41 +02:00
yenda d4a396bedf
move networks out of multiaccount 2019-08-28 11:11:40 +02:00
yevh-berdnyk b9c7dbd5d2
Fixed e2e tests (high/medium)
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-27 09:59:22 +02:00
Andrea Maria Piana 564090d7e6
upgrade status-protocol-go
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-26 12:18:03 +02:00
yevh-berdnyk 59000d5698
False failed tests fix
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-23 14:14:44 +02:00
yenda 41cf68b6a7
[fix 8786] fix multiaccount recovery and add account
fix #8786

- multiaccount recovery wasn't saving the root key properly
- this resulted in the impossibility to add new accounts in the wallet

Signed-off-by: yenda <eric@status.im>
2019-08-23 13:15:28 +02:00
Andrey Shovkoplyas 2e06dd36da
remove unused resources
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-08-22 18:27:06 +03:00
yenda ff2b24b1c6
cleanup shh/post
Signed-off-by: yenda <eric@status.im>
2019-08-22 14:56:10 +02:00
yenda 75ce7da50c
remove realm chat-transport usages 2019-08-22 14:55:50 +02:00
yenda c75d5b24f6
[fix 8795] remove mainnet is default alert
Signed-off-by: yenda <eric@status.im>
2019-08-21 17:40:50 +02:00
yenda 5cafef6702
remove contact-recovery
contact recovery is now handled by status-go

Signed-off-by: yenda <eric@status.im>
2019-08-21 10:37:46 +02:00
Andrea Maria Piana 79ab816497
Fix serialization of group-chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-21 09:50:27 +02:00
yevh-berdnyk da7a69bc02
Fixed tests with profile picture editing verifications
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-21 09:26:24 +02:00
yenda 1c475e5b1e
replace last remains of web3.js by json-rpc 2019-08-20 17:42:02 +02:00
yenda d61fffb021
remove dev-server and extensions for v1 2019-08-20 17:42:02 +02:00
yenda d7cd2b8a74
integrate status-go accounts 2019-08-20 17:42:02 +02:00
Andrea Maria Piana dcb7415208
Move messages to status-go
This commit does a few things:

1) Move messages to status-go
2) Use message-id computed from status-go
3) Remove old replies

Old message id was used for compatibility of replies with older clients.
Given that v1 is breaking, this is not needed anymore and simplifies
moving messages to status-go. No protocol/data-store change is made, to minimize
changes.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-20 13:25:05 +02:00
yevh-berdnyk 5db9080990
Added tests for multiaccount
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-20 10:58:27 +02:00
yevh-berdnyk d2a9cb355a
Updated test users public keys and usernames
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-20 10:57:51 +02:00
Andrea Maria Piana be9cd1b050
Revert "Added tests for multiaccount"
This reverts commit 5fc358469a.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-19 12:19:50 +02:00
yevh-berdnyk 2b3ef5b985
Fixed false failed tests
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-19 10:26:14 +02:00
yevh-berdnyk 5fc358469a
Added tests for multiaccount
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-19 10:24:56 +02:00
Churikova Tetiana ebefb0c9e3
fixed actions for profile
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-19 10:16:59 +02:00
yevh-berdnyk 9a0bb7d137
Updated tests 5441, 5453, created 6221
Signed-off-by: Serhy <sergii@status.im>
2019-08-15 19:10:10 +03:00
Dmitry Novotochinov b635691c25
recovery flow v1
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-08-14 19:42:26 +03:00
Andrey Shovkoplyas ba112a765b
[#8666] Add account via BIP 44
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-08-14 17:58:24 +02:00
yevh-berdnyk fde55b80d0
Added test for searching not used translation strings
Signed-off-by: Serhy <sergii@status.im>
2019-08-13 14:00:54 +03:00
Churikova Tetiana fc999c2462
Check version format
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-12 09:42:26 +02:00
Andrea Maria Piana fe9d4e9cd8
Move contacts to status-go
Contacts are now in status-go, no migration of contacts is provided so
all contacts will be lost upon installing this build.

I have left the initialization of filters a bit sketchy (we wait that
load-filters is called twice), as the next step will be to avoid calling
load-filters altogether, as now that both contacts & chats are in
status-go, there's no reason to call it from status-react, and can be
called directly from status-go on loading.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-07 13:39:59 +02:00
Churikova Tetiana 68da6159ed
skipped some steps in e2e due to deleteing commands
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-07 11:19:20 +02:00
yevh-berdnyk df66f9ddbe
Added new tests
Signed-off-by: Serhy <sergii@status.im>
2019-08-06 16:54:29 +03:00
Churikova Tetiana c8a4c2ac21
restore 7 accounts
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-06 10:53:46 +02:00
Andrea Maria Piana 6fa482a776
Move chats to status-go
This commit moves chats to status-go.

I have changed the logic to load all chats in one go for simplicity and
while that might have a performance impact, I think it's premature to
  optimize this flow as there will be more changes to the login flow.

Also currently this is likely to be slower as we need to wait for the
 status-service to be initialized, as well as realm.

No migration is provided as we are past the point of no return, so by
installing this version you will lose your chats.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-08-05 16:08:24 +02:00
Churikova Tetiana 5b08d129d4
skipped e2e due to missing commands in chat
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-02 13:57:18 +02:00
Churikova Tetiana 7f05c09632
ens e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-08-02 11:37:05 +02:00
Churikova Tetiana 90ec7768e6
disable 1 more e2e due to disable send to contacts from wallet 2019-07-30 20:35:58 +02:00
Churikova Tetiana ca97cb53fe
skipped e2e for commands 2019-07-30 20:35:58 +02:00
Andrey Shovkoplyas 6d337bc69a
multiaccounts 2019-07-30 20:35:58 +02:00
Andrea Maria Piana 1e655540da
Fix loading of filters
Currently on some devices there are still some legacy chats(?) that are
one-to-one but don't have a public key as an id (transactor,demo-bot).
We were wrongly sending those to status-go to create filters.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-07-30 20:25:59 +02:00
Andrey Shovkoplyas 447d37e5ca
[#8673] Temporay hide commands from chat and extensions
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-07-30 19:13:30 +02:00
yevh-berdnyk 6091517110
E2E tests false failures fixes
Signed-off-by: Serhy <sergii@status.im>
2019-07-30 16:07:27 +03:00
yevh-berdnyk ce84f81741
Re-enabled and updated e2e tests
Signed-off-by: Serhy <sergii@status.im>
2019-07-29 14:54:25 +03:00
Andrey Shovkoplyas f3bb555d52
[#8626] Term 'Recovery phrase' should be used instead of 'seed phrase'
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-07-26 12:33:41 +02:00
yenda 3ea8538377
integrate status-go permissions api
Signed-off-by: yenda <eric@status.im>
2019-07-26 12:16:52 +02:00
yevh-berdnyk 7e061e9cd1
False failed tests fixed - chat, browsing, deeps links, transactions
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com>
2019-07-26 00:54:48 +03:00
yevh-berdnyk f7bb0d3648
Fixed false failed tests
Signed-off-by: Serhy <sergii@status.im>
2019-07-24 19:10:33 +03:00
yevh-berdnyk f0269bc732
Updated test_home_view with new onboarding flow
Signed-off-by: Serhy <sergii@status.im>
2019-07-24 11:53:33 +03:00
yenda 562773fa1b
[wallet] use status-go wallet service
- remove use of etherscan and subscriptions
- replace by status-go
2019-07-22 11:16:00 +02:00
yenda c3c4a5170a
[multiaccount] rename multiaccount to account
Signed-off-by: yenda <eric@status.im>
2019-07-22 11:14:44 +02:00
Serhy 0c6c185394
Fixing e2e tests
Signed-off-by: Serhy <sergii@status.im>
2019-07-18 19:28:50 +03:00
Vitaliy Vlasov 3a903fbaa2
Revert "Hide key storage selection screen temporarily"
This reverts commit 8764fafc42.
2019-07-18 13:14:37 +03:00
Vitaliy Vlasov 8764fafc42
Hide key storage selection screen temporarily
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-07-18 12:59:01 +03:00
Serhy 840fbfd2d7
E2e nightly fixes
Signed-off-by: Serhy <sergii@status.im>
2019-07-16 11:28:27 +03:00
Serhy 3c0a24f429
fix e2e wallet setup
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-07-12 12:36:45 +02:00
Serhy d92eb8374f
e2e fix after new onboarding
Signed-off-by: Serhy <sergii@status.im>
2019-07-12 13:02:10 +03:00
Julien Eluard 28f7ea0408
Enable stickers on all envs. Use contenthash to identify stickers
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-07-11 15:06:32 +02:00
Vitaliy Vlasov 433f840f76
Onboarding sign-in
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-07-11 15:46:24 +03:00
Anton Danchenko 253c8c8e7a
Test time to load for login screen
Signed-off-by: Serhy <sergii@status.im>
2019-07-10 10:45:14 +03:00
Vitaliy Vlasov e9fd6e1a6b
Onboarding setup wizard
New onboarding e2e tests updates

New onboarding e2e fix 2

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-07-08 18:17:50 +03:00
Volodymyr Kozieiev ea8bf402d7
Two pane ui on large screens
Signed-off-by: Volodymyr Kozieiev <vkjr.sp@gmail.com>
2019-07-05 13:03:21 +03:00
Andrea Maria Piana de0d98da20
Use a signal for messages
This commits changes the behavior to read from a signal instead of
polling each filter.

We receive a signal from status-go every 0.3 seconds, only if new
messages are received. We receive a single signal for all the chats, and
we don't dispatch anymore on every message.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-07-04 15:07:59 +02:00
Serhy f2135c019f
Disable e2e until 8234 merged
Signed-off-by: Serhy <sergii@status.im>
2019-07-04 12:54:15 +03:00
Jakub Sokołowski 119c5303a4
don't raise exception on testrail api errors
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-03 12:32:42 -04:00
Andrea Maria Piana 138ade3b8d
Move installations to status-go
This commit moves the management of installations to status-go, and
migrates the data from realm.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-07-03 12:50:23 +02:00
Churikova Tetiana d4aac3c423
fix for 4 e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-07-02 09:59:01 +02:00
Jakub Sokołowski 37dc51a93d
add a Jenkinsfile for nightly end-to-end tests
also add error handling for TestRail

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-01 11:22:26 -04:00
Churikova Tetiana 0c644705b3
fixed 19 e2e and skipped 3 e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-07-01 09:11:50 +02:00
Anton Danchenko adb90e35de
Chatbot fix
Signed-off-by: Serhy <sergii@status.im>
2019-06-27 09:50:27 +03:00
Churikova Tetiana eef777175e
Fix e2e with default usernames instead of custom
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-06-26 17:17:08 +02:00
Serhy 7a7bafd5ef
Fix critical e2e
Signed-off-by: Serhy <sergii@status.im>
2019-06-26 12:08:27 +03:00
Serhy 7237dd510d
Multiaccount critical e2e fixed
Signed-off-by: Serhy <sergii@status.im>
2019-06-25 13:42:27 +03:00
Julien Eluard 3b7e92230b
[Fix #8067] Added screens for ENS preferred name selection
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-06-25 08:50:39 +02:00
Igor Mandrigin 79454938bc
[android, ios] render markdown-ish formatting in chat messages natively.
use patched RN to make sure that heavily-formatted messages don't slow
our chats down.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-06-24 16:50:09 +02:00
Andrea Maria Piana 532664ab84
Adds topic negotiation and partitioned topic
All the code has been implemented in statusgo: status-im/status-go#1466

Basically all the whisper filter management is done at that level.

Technical description
On startup we load all chats and send a list of them to status go:
For a public chat: {:chatId "status"}, we create a single filter, based on the name of the chat.

For each contact added by us, each user in a group chat and each one to one chat open, we send:
{:chatId "0x", :oneToOne true}. This will create a chats, to listen to their contact code.

Any previously negotiated topic is also returned.

Once loaded, we create our filters, and upsert the mailserver topics, both of which are solely based on the filters loaded.
In order to remove a chat, we delete/stopwatching first the the filter in status-react and then ask status-go to remove the filter. For a public chat we always remove, for a one-to-one we remove only if the user is not in our contacts, or in a group chat or we have a chat open. Negotiated topics are never removed, as otherwise the other user won't be able to contact us anymore.

On stopping whisper we don't have to ask status-go to remove filters as they are removed automatically.

Some more logic can be pushed in status-go, but that will be in subsequent PRs.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-06-24 13:54:43 +02:00
Serhy 3973ebd607
Tx in Dapp multiaccount followup e2e fix
Signed-off-by: Serhy <sergii@status.im>
2019-06-20 16:23:46 +03:00
Vitaliy Vlasov b6163b8ae5
Check tribute if contact was added (but not otherwise)
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-06-19 15:19:09 +03:00
Serhy c9048f2e35
Fix stickers and wallet e2e tests
Signed-off-by: Serhy <sergii@status.im>
2019-06-19 09:32:22 +03:00
Julien Eluard 8aa16520c6
[Fixes #8066] Added native ENS registration
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-18 13:25:56 +02:00
Roman Volosovskyi 908f730b1d
[perf] network module 2019-06-13 09:33:18 +03:00
Serhy f3aa376d16
More e2e fixes
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-06-12 16:02:23 +02:00
Anton Danchenko d1b991f656
e2e fixes 2019-06-12 13:20:02 +02:00
Andrey Shovkoplyas 7de2941f26
[#8026] [Wallet] Sign transaction module 2019-06-12 13:20:01 +02:00
Roman Volosovskyi 3bd0947b4c
[perf] move goog.i18n deps to a module 2019-06-10 21:10:42 +03:00
Churikova Tetiana 3e8b02616b
Requirement for Faucet request received is removed
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-06-07 16:18:22 +02:00
yenda 04de022eae
[refactor] replace web3-prototype
- replace web3-prototype wherever possible
- currently only the money namespace is left
for future refactoring, the ideal solution
would be to use strings for big numbers all
the time and only convert for arithmetic operations
- use json-rpc call to replace trivial web3 calls

Signed-off-by: yenda <eric@status.im>
2019-06-06 15:57:34 +02:00
Churikova Tetiana 6c76cc866c
fetch_message and e2e fix
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-06-05 18:17:33 +02:00
Roman Volosovskyi 632bbf3bc1
[perf] Move translation to node_modules in release build 2019-06-05 18:40:53 +03:00
yenda 1ae42ea424
[perf] upgrade realm and improve schemas/queries
- upgrade to realm 2.28 to benefit from perf improvements
- remove user-statuses and replace by seen and outgoing-status fields
to get rid of a lot of bloat queries and computations
- remove unused seen message, bottom-infos
- remove unused fields in transport schema
- use objectForPrimaryKey whenever possible instead of get by field

Signed-off-by: yenda <eric@status.im>
2019-06-04 23:36:35 +02:00
yenda 1cb7f3b83f
[perf] remove unused schemas and properties
Signed-off-by: yenda <eric@status.im>
2019-06-03 18:24:34 +02:00
Vitaliy Vlasov 04ccd0e7d8
Add TtT chat flow
Signed-off-by: yenda <eric@status.im>
2019-06-03 15:31:30 +02:00
yenda 75e20a0bbd
remove useless field in message subs
Signed-off-by: yenda <eric@status.im>
2019-06-03 11:06:34 +02:00
Igor Mandrigin 34300cc0c0
Remove unused fields in chats dictionary.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-05-31 16:11:05 +02:00
Churikova Tetiana 9fe656705e
e2e for sync chats and profile
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-05-31 10:33:53 +02:00
tbenr 090a4e7c76
fixes #6573
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-31 10:25:24 +02:00
Roman Volosovskyi daacccb512
[Android, iOS] Advanced ClojureScript compilation 2019-05-30 21:23:31 +03:00
yenda f03225c03d
[fix] destructuring in events for fx/defn macro
Signed-off-by: yenda <eric@status.im>
2019-05-30 18:17:28 +02:00
yenda 4b6e5763e1
[feature] add basic decoding support for swarm
Signed-off-by: yenda <eric@status.im>
2019-05-30 18:15:32 +02:00
Serhy 6a74c3a1ef
Add scroll on wallet
Signed-off-by: Serhy <sergii@status.im>
2019-05-30 11:51:39 +03:00
Igor Mandrigin af6c784ab4
Prepare to use status-go based protocol: 1-1 and public chat management APIs.
Connect to stubs of status-go protocol API, behind the flag. Since status-go isn't updated yet, setting this flag will break the app.
What needs to be tested is no regressions in a normal mode.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-05-29 16:34:37 +02:00
Churikova Tetiana 590ba7c874
e2e pairing 1-1 and contacts
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-05-29 12:56:37 +02:00
Dmitry Novotochinov fd061833f5
save keycard key-uid to account and use it to login
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-29 12:55:32 +03:00
Serhy 092860f38a
Enable asset in Wallet before usage
Signed-off-by: Serhy <sergii@status.im>
2019-05-28 17:44:33 +03:00
Roman Volosovskyi c7c7b50281
RAM bundle basic setup 2019-05-27 17:34:17 +03:00
yenda 9b04dc6530
[dev feature] extend the defn macro
the defn macro knows register the function as an events under the
keywords provided in the :events key of the attributes map. It also
adds the interceptors provided in the :interceptors map

exemple:

```clojure
(fx/defn hello4
  {:doc "this function is useless as well"
   :events [:test/valid1 :test/valid2]}
  [{:keys [db]} b]
  {:db (assoc db :a b) :b (:a db)})
```

Signed-off-by: yenda <eric@status.im>
2019-05-27 13:50:46 +02:00
yenda b13864d052
[refactor] move utils.ethereum to ethereum
move utils.ethereum.tokens to ethereum.tokens
move utils.ethereum.abi-spec to ethereum.abi-spec
move utils.ethereum.core to ethereum.core
move utils.ethereum.eip165 to ethereum.eip165
move utils.ethereum.eip55 to ethereum.eip55
move utils.ethereum.eip681 to ethereum.eip681
move utils.ethereum.ens to ethereum.ens
move utils.ethereum.erc721 to ethereum.erc721
move utils.ethereum.mnemonics to ethereum.mnemonics
move utils.ethereum.resolver to ethereum.resolver
move utils.ethereum.macros to ethereum.macros

Signed-off-by: yenda <eric@status.im>
2019-05-23 15:11:48 +02:00
Anton Danchenko c08e370aa3
added test_open_blocked_site
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-05-23 12:13:16 +03:00
yenda b6fecd4e1c
[refactor] remove ethereum `call` and `call-params`
- use `json-rpc/eth-call` and `json-rpc/eth-transaction-call`
everywhere
- move all conversions to abi-spec
2019-05-23 10:44:15 +02:00
yenda fc4c772c0b
[refactoring] remove web3, clean up wallet effects
- introduce json-rpc namespace, which provides `call` and `eth-call`,
a generic way of calling a json-rpc method taking care of conversions
and error handling
- remove web3 usage from wallet
- clean up effects, reducing the amount of computations when login in
2019-05-23 10:44:15 +02:00
yenda 89680f4861
[performance] improve wallet update performances
`wallet-autoconfig-token` is a very expensive call on mainnet
because it checks the balance of every known token.

it is called:
- when wallet is refreshed by pulling
- when user goes on any wallet screen

this PR changes that by:
- calling it only when the wallet is initialized and there is no
visible-token configuration

it only calls update-wallet when a new transaction arrives
2019-05-23 10:44:15 +02:00
yenda 2cd26c585d
[refactor] transaction history and filters 2019-05-23 10:30:33 +02:00
yenda b274ed9fa9
[feature] use new block signal to get new transactions
- remove the transaction fetching loop entirely to rely only on subscription
for live transactions and token transfer updates
- fetch token transfers history via etherscan API to lift the 100000 blocks
limit on token transfers history

- inbound token transfers are catched via a filter on ethlogs
- outbound token transfers and other transactions are catched by filtering
transaction in current block that have the wallet address as to or from field
2019-05-23 10:30:32 +02:00
yenda f5c18ae7a9
[feature] use subscriptions for tokens
- removes fetching of last 100000 blocks of token transfers from
the wallet pull loop
- fetches the last 100000 blocks of token transfers at startup
- replaces pulling by subscriptions to ethlogs for token transfers
2019-05-23 10:30:32 +02:00
bitsikka d640b4c87c
[7947] Feature: Blank out app preview screen when switching apps on mobile
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-22 15:31:50 +02:00
Churikova Tetiana d49a8dd5e5
align e2e with 8210
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-05-20 17:21:05 +02:00
Serhy aa7292d757
Fix deep links tests
Signed-off-by: Serhy <sergii@status.im>
2019-05-20 15:38:53 +03:00
yenda b0449f3416
[fix] ipfs CID
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-14 13:44:08 +02:00
Churikova Tetiana 17c163ce48
Reworked test_purchase_pack_and_send_sticker
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-05-13 15:57:20 +02:00
yenda 9b18f1d261
[feature] add varint encoding/decoding
Signed-off-by: yenda <eric@status.im>
2019-05-13 13:53:06 +02:00
Dmitry Novotochinov 5762967a44
[#7887] handle tag lost errors
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-05-11 23:05:33 +03:00
Churikova Tetiana 5ce43b75f3
Fixed failed e2e
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-05-10 11:20:41 +02:00
Serhy 3a0c0a8557
Add faucet.ropsten.be in tests
Signed-off-by: Serhy <sergii@status.im>
2019-05-08 20:23:05 +03:00
Julien Eluard 99172607d5
[Fixes #7325] Add EIP681 deeplink support
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-08 14:44:24 +02:00
Serhy abeaaa4218
Enable TX history view test on PR level
Signed-off-by: Serhy <sergii@status.im>
2019-05-08 09:54:31 +03:00
Julien Eluard 7b0ebf75e9
Fixed broken EIP15777 support
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-05-07 15:38:55 +02:00
Roman Volosovskyi 148d43fdab
[#7871] Handle multiple opened screens with qr code readers 2019-05-06 17:25:02 +03:00
Serhy 71852bf111
Adopt e2e to new Status.im design
Signed-off-by: Serhy <sergii@status.im>
2019-05-03 09:43:47 +03:00
Andrey Shovkoplyas 428464df07
re-frame subscriptions optimization
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-05-01 12:49:31 +02:00
Vitaliy Vlasov 1ca9294af7
[MVP TTT] Contract support for settings
- settings are stored in a manifest that is pointed at by the contract
- during login the contract is checked to fetch the settings

Signed-off-by: yenda <eric@status.im>
2019-04-30 14:52:33 +02:00
Roman Volosovskyi 9b9eefbf0e
Allow to fetch more history in public chats (up to 30 days) 2019-04-26 15:53:26 +03:00
Anton Danchenko 43ac92b9b0
enable stickers in e2e builds and added accessibility labels
Signed-off-by: Serhy <sergii@status.im>
2019-04-26 14:32:33 +03:00
Roman Volosovskyi 3a2d70273e
Maintain scroll postion after fetching gap
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-04-25 16:01:03 +02:00
Jakub Sokołowski e55cbc4c1f
upgrade urllib3: 1.24 > 1.24.2
Details: https://nvd.nist.gov/vuln/detail/CVE-2019-11324

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-04-25 15:28:52 +02:00
Roman Volosovskyi c98f547349
Multiple messages gaps per chat 2019-04-24 22:33:08 +03:00
Serhy c49a2269c5
Fix connection is secure test
Signed-off-by: Serhy <sergii@status.im>
2019-04-24 13:06:33 +03:00
Churikova Tetiana e9fa601e7a
Add tests for block user from public chat and 1-1 header
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-04-22 14:49:24 +02:00
Andrey Shovkoplyas 6f16ccf416
[#6457] Implement extension data persistence
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-04-18 15:53:22 +02:00
Andrey Shovkoplyas 159199a1b3
removed dapps list and introduced simple Dapp store dapp
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-04-18 15:49:06 +02:00
Serhy d5f8853b81
Update SimplDapp in e2e to use github url
Signed-off-by: Serhy <sergii@status.im>
2019-04-18 10:39:12 +03:00
Andrey Shovkoplyas b721f4810f
fixes and improvements for chat command
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-04-15 16:44:42 +02:00
Roman Volosovskyi a4d8f57b09
Fetch missed range of messages 2019-04-12 16:22:44 +03:00
Anton Danchenko b16c224fd5
add daaps view, remove start_chat view; desktop and wallet modal
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-04-11 04:14:20 +03:00
Anton Danchenko 0944cedc80
added test sign_typed_message
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-04-11 01:51:46 +03:00
Churikova Tetiana e26844547d
Clear group chat history
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-04-10 12:38:07 +02:00
Jakub Sokołowski 1d00e9bb3d
change App ID for PRs on Android to avoid replacing release
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-04-10 11:49:40 +02:00
Andrea Maria Piana f8674c0ee1
Add reading nodes from contract
This PR is part of network incentivisation. It adds a way for a client
to pull nodes from a contract.

This is done by selecting the `eth.contract` fleet. If that is selected
on login it will fetch nodes from a contract and pass them to status-go.
If these can't be fetched, it will default to `eth.beta`.

Currently contract information are hard-coded, but eventually the user
will be able to add their own (probably).

Toggled off in release.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-04-05 14:32:15 +02:00
yenda 9b47275249
[fix] don't lose big number precision above 53 bits in abi-spec
- convert to string instead of numbers in hex-to-number
- remove usage of full web3 lib

Signed-off-by: yenda <eric@status.im>
2019-04-04 13:53:15 +02:00
bitsikka 6aae0b76b9
[#7454] fix add basic copy to public chat empty screen state + related issues/feature regarding chat message-views intro screens for all chats types
[#7454] fix add basic copy to public chat empty screen state + chat messages-views intro screens for all chats

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-04-04 12:34:37 +02:00
Serhy 25c24bf716
Test opening app from deep links
Signed-off-by: Serhy <sergii@status.im>
2019-04-03 14:42:57 +03:00
tbenr 38fc712f07
fixes #7667
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-04-03 11:50:56 +02:00
Roman Volosovskyi 24a978d442
Migrate to RN 0.59.2 2019-04-01 17:42:57 +03:00
yenda 89902947b6
[feature] contenthash utility namespace
- support for ipfs only
- provides fns to encode and decode contenthashes as defined in EIP1577
- provides cat fx to retrieve contenthash

Signed-off-by: yenda <eric@status.im>
2019-03-28 17:23:00 +01:00
yenda a6616033f4
[refactor] add check in abi-spec decode and expect a hex string
Signed-off-by: yenda <eric@status.im>
2019-03-28 15:38:20 +01:00
Churikova Tetiana 7cb1919f99
make_admin and remove_user group chat tests
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2019-03-26 14:02:23 +01:00
yenda 26b97ddf43
introduce system-tags
Signed-off-by: yenda <eric@status.im>
2019-03-25 16:55:09 +01:00
Anton Danchenko fe76457609
confirm network connect
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-03-22 14:42:19 +02:00
Anton Danchenko 4150fbfe77
new faucet url and locators
Signed-off-by: Serhy <sergii@status.im>
2019-03-22 13:18:55 +02:00
Serhy dd6f659809
Fix e2e tests adding custom network
Signed-off-by: Serhy <sergii@status.im>
2019-03-22 13:17:03 +02:00
Pedro Pombeiro 3af25381e1
Change shebang in bash scripts 2019-03-21 13:57:00 +01:00
yenda 5e7186ed52
[fix 5695] remove close icon in add to contacts bar
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-21 13:44:00 +01:00
Andrea Maria Piana 25ea0192e5
Fix qr code and bootnode
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-21 13:40:45 +01:00
Anton Danchenko cf21763a97
false failures fixes
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-03-21 13:47:20 +02:00
yenda 496f3f1cc7
[design] use Inter font on Android
- implement typography component
- replace InterUI font by Inter font (renaming)

Signed-off-by: yenda <eric@status.im>
2019-03-20 18:42:31 +01:00
Roman Volosovskyi f25cf1a0f9
Reduce overdraw on main tabs
Fix e2e when swip-to-delete item
2019-03-20 14:59:22 +02:00
Anton Danchenko e87d93c820
open dapp fix
Signed-off-by: Serhy <sergii@status.im>
2019-03-20 13:45:10 +02:00
Serhy 10cc181335
Remove Dapps from search on chat test
Signed-off-by: Serhy <sergii@status.im>
2019-03-20 12:20:43 +02:00
Anton Danchenko 3c5502075a
added chat search test
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-03-19 15:02:42 +02:00
Serhy 036692f8ba
Fix autotests for new welcome screen
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-03-19 13:11:26 +01:00
decanus 8d9664581f
changed translations
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-03-19 12:57:42 +01:00
Churikova Tetiana f8dfc82dd4
Decline group invites
Signed-off-by: Serhy <sergii@status.im>
2019-03-18 16:59:16 +02:00
Serhy 8e1da91ea0
Update e2e test to scroll more for TestDapp
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-03-14 11:10:37 +01:00
Serhy ac718de425
Update critical autotests 2019-03-14 09:45:55 +01:00
yenda 7cad165a66
fix missing toolbar separator
Signed-off-by: yenda <eric@status.im>
2019-03-13 17:24:24 +01:00
Anton Danchenko cf0afbca14
removed link to jenkins job in a PR
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-03-12 11:24:21 +02:00
tbenr b1331378d5
fixes #6597
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-03-06 17:09:58 +01:00
Serhy 54a364a78f
Update set of critical tests #7658
Signed-off-by: Serhy <sergii@status.im>
2019-03-06 10:50:46 +02:00
Serhy aa0c457382
Disable wallet modal tests
Signed-off-by: Serhy <sergii@status.im>
2019-03-05 11:19:25 +02:00
Andrea Maria Piana b26b6ee5e0
Add unpinning of mailservers
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-04 14:06:09 +01:00
Serhy a98264014f
Fix switch to home view from Wallet
Signed-off-by: Serhy <sergii@status.im>
2019-03-04 11:33:58 +02:00
Andrey Shovkoplyas c491654eec
[#7262] Remove shortcut creation when following universal links inside status
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-03-01 17:00:54 +01:00
Andrea Maria Piana edf810444d
Fix concurrent retry-request
Sometimes it happens that the expired signal is received while the
there's a new request in flight.
This happens in cases such as:

1) We send a request (A)
2) We get disconnected from the mailserver
3) We connect to a new mailserver
4) We send a request (B)
5) We receive an expired signal for A

In such cases the request should not be retried or counted as a failure.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-28 15:28:59 +01:00
Serhy 8aaafa3102
Add tests create acc with special chars pass
Signed-off-by: Serhy <sergii@status.im>
2019-02-28 11:07:05 +02:00
yenda 6b6847a1ba
[feature] search chats
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-26 18:01:25 +01:00
Andrea Maria Piana 6a42580fc2
Remove separate topic from group chats
Currently the separate topic was not used, as it's a bit tricky to
coordinate when multiple devices from different versions are present,
with the partitioned topic, probably this optimisation is not necessary
anymore, so removing this for now.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-26 17:18:26 +01:00
Andrea Maria Piana 71654a6829
Confirm pairing messages
Partially addresses https://github.com/status-im/status-react/issues/7513
This commit adds confirmation to pairing messages, which previously were
not confirmed.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-26 17:12:05 +01:00
Andrea Maria Piana 229f5ae108
Dont change mailserver if no network
When we are offline, we don't try to change mailserver, and we don't
show a pop up to the user, as it is not that the mailserver is not
working, we are just offline.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-26 15:32:54 +01:00
Serhy e55f8c95e2
Not expect messages after join gh
Signed-off-by: Serhy <sergii@status.im>
2019-02-22 12:33:49 +02:00
Andrea Maria Piana c9994b5d0f
Dont override last-clock-value on messages
The denormalized-clock-value was erroneously set to the one of the last
message received. This meant that on chats were the clock-value raced
ahead of the timestamp (#status), a message from the mailserver or a
message from someone with an old clock-value would basically make those
messages be sorted in the past.

The correct behavior is that last-clock-value for a given chat should be
the maximum last clock value ever seen for that chat.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-21 13:41:06 +01:00
Roman Volosovskyi b8d4f2911b
new bottom tab (react-navigation) 2019-02-20 19:14:17 +02:00
Serhy 8def565664
Add tests for send tx in Dapp
Signed-off-by: Serhy <sergii@status.im>
2019-02-18 16:23:42 +02:00
Serhy 9a5707583e
Custom network and seen status autotests fix
Signed-off-by: Serhy <sergii@status.im>
2019-02-18 16:21:53 +02:00
Andrea Maria Piana 9c6cce7d4d
Allow to send transactions to non-contacts
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-18 11:33:39 +01:00
Serhy 8812c0f8bc
Selecting users when creating group chat
Signed-off-by: Serhy <sergii@status.im>
2019-02-15 15:21:12 +02:00
Andrea Maria Piana bddae03ab2
Allow multiple push notifications
We keep tokens synchronized across devices, so that the user can notify
us on any paired device.
Currently we record the installation id associated to the fcm-token even
though is not necessary, but it will be once we send device-to-device
messages, in which case we want to notify only those devices.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-14 16:33:50 +01:00
Anton Danchenko fd46113ab3
run all tests on android 8
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-02-13 23:30:14 +02:00
yenda 1002051074
[fix] ios checkbox
- remove usage of native checkboxes on android and desktop to ensure proper
design
- rename plain-checkbox to radio button and make sure it is only used where
radio button should be used (one possible choice beyond many)
- update autotest

Signed-off-by: yenda <eric@status.im>
2019-02-13 16:31:52 +01:00
yenda 77b792a37a
[#6850] related refactoring
- remove unecessary subscriptions related to add-contact-bar

Signed-off-by: yenda <eric@status.im>
2019-02-13 12:38:31 +01:00
Andrea Maria Piana 7960fdef85
Publish contact updates periodically
Currently it's very easy for contact details to get out of sync, the
simplest example is:
A & B are contacts.
A changes name.
B receives the updated name.
B re-install the app.
Until A changes name again, B will not see their name, picture and won't
be able to send push notifications.

This PR changes the behavior to publish account informations to contacts
every 24 hrs, to add some redundancy in this cases.

It also publishes a contact code every 12hrs.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-12 14:20:45 +01:00
Serhy 48affbc918
Fix autotest
Signed-off-by: Serhy <sergii@status.im>
2019-02-11 19:10:36 +02:00
mestorlx 0471d5fd72
Added utility function to test addresses according to EIP55.
Added pop-up message when addres checksum fails in wallet/send/enter recipient address.

Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-02-11 11:06:24 +01:00
kn 6988950ea8
[#6973] Replace react-native-i18n with react-native-languages 2019-02-09 23:27:46 -08:00
Andrea Maria Piana 14e887160a
Dont setup topic as it resets the discovery filter
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-08 10:57:21 +01:00
Andrey Shovkoplyas 4c4fb6bbe9
[#5584] Implement Manage permissions screen and option for web3 provider Opt-in access
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-02-06 10:38:20 +01:00
Dmitry Novotochinov 1b836bf7ec
[#7006] login with keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-02-06 00:20:07 +03:00
yenda b80e02d8cf
[feature] add block user feature in user profile
- add block/unblock action to user profile
- blocking deletes all messages from user and ignores future messages
- unblocking stops ignoring new messages from user but doesn't recover past ones

[feature] add contact list

[tests] added scroll to BackupRecoveryPhraseButton

[tests] added scroll to public key

Signed-off-by: yenda <eric@status.im>
2019-02-05 16:29:56 +01:00
yenda 444c6af319
[refactor] contact model: remove unused fields and add `blocked?`
- dapp related fields are removed since it is not used anymore
- blocked? field is added for futur block user feature
2019-02-05 16:28:50 +01:00
Igor Mandrigin e2f53418f3
Revert "don't auto-generate contact address from whisper pub key"
This reverts commit b3416f5ad5.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-04 16:08:49 +01:00
Andrea Franz b3416f5ad5
don't auto-generate contact address from whisper pub key
Signed-off-by: Andrea Franz <andrea@gravityblast.com>
2019-02-04 13:58:21 +01:00
Roman Volosovskyi fe7c7088db
Use partitioned topic for discovery
Currently we use a single topic for discovery.
This provides the best obscurity at the cost of bandwidth, as a message
sent on the discovery topic will be received by any peer.
This PR changes this behavior and start listening on a partitioned
topic.
Each pk will be hashed to a limited number of topics.

Everytime someone is in a conversation with someone from another topic
they will have to listen as well to avoid loosing obscurity, because we
only forward messages that we also advertise in the bloom filter.

The choice for the number of partitions depends on 2 factors:

1) The expected number of users using the network
2) The average number of contacts each user

Any change to the discovery topic will need to be split across 3
releases, to avoid breaking compatibility:

1) Listen to the new and old topic, publish to the old topic
2) Listen to the new and old topic, publish to the new topic
3) Listen to the new topic, publish to the new topic

This is step 1.
2019-02-01 14:40:54 +02:00
Serhy 305bc8e1cf
Add accessibility-id for create group chat button
Signed-off-by: Serhy <sergii@status.im>
2019-01-31 20:38:15 +02:00
Andrea Maria Piana 89725d693a
Add pairing docs link, disable pfs toggle in release
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-31 07:49:37 +01:00
Anton Danchenko d093b5f6be
fix for 502 response from sauce
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-01-30 15:27:37 +02:00
Andrea Maria Piana 13b04f17eb
Enable pairing & contact recovery
This PR enables pairing outside of dev-mode and contact-recovery, which
is useful in the case a new device is added or re-installed.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-29 18:25:25 +01:00
Andrea Maria Piana 52ae2c2bfe
Style header group-chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-29 10:31:59 +01:00
Roman Volosovskyi 9daef17f11
Stop sending seen messages
Currently, these messages are not used and should be properly revisited
later. It only generates extra traffic on discovery topic.
2019-01-25 09:23:00 +02:00
Pedro Pombeiro d3f1b37c12
Use new status-go and rename NotifyUsers
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-24 15:41:32 +01:00
Andrea Maria Piana 2b2c44c9a5
Add device name to pairing
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-24 11:29:24 +01:00
Julien Eluard a825175aea
Fixed incorrect parameters provided to Command#yield-control
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-01-23 19:35:50 +01:00
Dmitry Novotochinov cee18d23b8
[#7132] add keycard settings
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-01-23 20:11:23 +03:00
Igor Mandrigin 94022523a1
Use new Infura API.
As per announcement, we need to switch our Infura project IDs.

> As previously announced, accessing Infura will begin requiring a Project ID generated from the new Infura Dashboard. If you are using Infura and have not yet migrated your project, please take the time to do so now. The first milestone in this transition will be activated next week on January 23, 2019 at 20:00 UTC.

https://blog.infura.io/infura-dashboard-transition-update-c670945a922a

The new project is created with ID `f315575765b14720b32382a61a89341a`
and the API keys are updated.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-22 12:34:16 +01:00
Anton Danchenko 69209107ca
added upgrade test, changed apk name on sauce
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-01-21 12:52:12 +02:00
Pedro Pombeiro 5a69b4198e
Update PNs to use data-only messaging, and only encode/decode data values. Fixes #6772
Fix navigation to chat when PN is tapped while signed off. Fixes #3488

Anonymize PN pubkeys. Part of #6772
2019-01-17 19:23:55 +02:00
Igor Mandrigin 4af2073388
Revert "Fixed incorrect parameters provided to Command#yield-control"
This reverts commit ac1de8c690.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-17 15:15:43 +01:00
Julien Eluard ac1de8c690
Fixed incorrect parameters provided to Command#yield-control
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-01-17 12:46:27 +01:00
Roman Volosovskyi 664cbf6bbe
Sign-in flow docs and tests 2019-01-15 17:00:58 +02:00
Anton Danchenko 471d26c6d1
fix group chat tests
Signed-off-by: Serhy <sergii@status.im>
2019-01-15 16:01:46 +02:00
Igor Mandrigin e8de37f5ef
Report messages as "processed" to status-go only after they were successfully stored in the DB.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-14 19:12:26 +01:00
Anton Danchenko df7590f48b
fix group and browser tests
Signed-off-by: Anton Danchenko <ant.danchenko@gmail.com>
2019-01-09 17:15:28 +02:00
Andrea Maria Piana b56fd2e29f
Show popup when device is not targeted.
When someone is sending a pfs message to us but did not include our own
device, a pop up is shown propmting the user to connect with the user.

The reason for receiving messages that are not targeting our devices are
various:

1) The account was just recovered (which means it is a new installation
id)
2) More than 3 devices are in use (we only keep max 3 devices in sync)
3) The sender has used an old bundle which does not include the current
device

Eventually we will reduce the likelihood of this scenario happening, but
we can't dismiss it completely.

It's only enabled when PFS is enabled.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-09 09:36:36 +01:00
Igor Mandrigin 744abb3984
Merge pull request #7206 from status-im/pyyaml-vuln-update
upgrade pyyaml to 4.1 for vuln mitigation
2019-01-08 16:38:37 +01:00
Andrea Maria Piana 3e761c3b85
Extend message hash confirmation for group chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-08 13:59:30 +01:00
Andrea Maria Piana e8069f523d
Move group chats to their own topic
This commit moves group chats to their own topic, based on the randomly
generated chat-id. It falls back on the discovery topic for those peers
who we can't fingerprint the version, for backward compatibility.
2019-01-08 13:58:41 +01:00
Andrea Maria Piana 881691fbc3
Add joining of group chats
Members will now have to explicitly join a group chat to start receiving
messages from it.

Messages are still sent to users who have not joined for backward
compatibility.
Group updates are unaffected.
2019-01-08 13:58:40 +01:00
tbenr 469556a04b
Fixes #6594
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-01-07 14:33:38 +01:00
Corey 5e87026576
upgrade pyyaml to 4.1 for vuln mitigation 2019-01-04 13:44:24 -05:00
Vitaliy Vlasov c8e5fd6a9c
Add desktop keyboard shortcuts
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-01-04 00:30:19 +02:00
Anton Danchenko 2e7d89e690
added clicks on allow button
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-01-03 11:20:52 +01:00
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