Commit Graph

815 Commits

Author SHA1 Message Date
Homu 9bf8443c16 Auto merge of #4504 - str4d:disconnectblock-fixes, r=str4d
Use the cached consensusBranchId in DisconnectBlock

If a node is started with a set of network upgrades that don't match the
serialized chain (such as when we implement NU rollbacks on testnet),
RewindBlockIndex will disconnect each block in the chain until it
reaches the most recent block that agrees with the node's set of network
upgrades. However, the blocks themselves should be disconnected using
the consensus branch ID that they were connected with, which is
persisted alongside the chain and reconstructed in LoadBlockIndex.
2020-05-28 02:51:34 +00:00
Homu 4907a31302 Auto merge of #4242 - oxarbitrage:issue3726, r=str4d
Add estimatedheight to rpc getblockchaininfo response

Fixes https://github.com/zcash/zcash/issues/3726

Ported from https://github.com/zcash/zcash/pull/3727 with comments addressed.
2020-05-28 00:49:49 +00:00
therealyingtong 06ddf659a7 Add RPC tests for post-Heartwood rollback 2020-05-28 09:54:42 +12:00
Alfredo Garcia d42e0a433c remove additional not needed casts from py tests 2020-05-18 18:09:07 -03:00
Alfredo Garcia 26e4889f87 Fix casting in listtransactions.py 2020-05-18 16:53:01 -03:00
Alfredo Garcia 24d3516e35 Fix casting in wallet.py
Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2020-05-18 16:53:01 -03:00
Alfredo Garcia 25bccb4814 replace with AssertionError assert_equal in receivedby.py
Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2020-05-18 16:53:01 -03:00
Alfredo Garcia 25f48c21dd add amountZat field to z_listreceivedbyaddress 2020-05-18 16:53:01 -03:00
Alfredo Garcia 76e7f21d4a add amountZat field to listunspent 2020-05-18 16:52:04 -03:00
Alfredo Garcia 9a55c8b238 add amountZat field to listtransactions, gettransaction and listsinceblock 2020-05-18 16:51:24 -03:00
Alfredo Garcia 2ec9ac3c81 add amountZat field to listreceivedbyaddress and listreceivedbyaccount 2020-05-18 16:49:39 -03:00
Alfredo Garcia 306270911e add boolean inZat to z_getbalance 2020-05-18 16:47:17 -03:00
Alfredo Garcia 50372cab62 add boolean inZat to getbalance 2020-05-18 16:47:17 -03:00
Alfredo Garcia d2c26b33e0 add boolean inZat to getreceivedbyaccount 2020-05-18 16:47:17 -03:00
Alfredo Garcia 4b61aede28 add bool argument to get balance in satoshis to rpc getreceivedbyaddress 2020-05-18 16:47:17 -03:00
Kris Nuttycombe 04d82fa30f Remove unused imports. 2020-05-18 10:38:37 -06:00
Sean Bowe 43ffa3bf43 Add NU4 activation to golden test. 2020-05-14 12:24:56 -06:00
Kris Nuttycombe 9061f8251e Merge remote-tracking branch 'upstream/master' into hotfix-v2.1.2-2-golden 2020-05-14 12:24:44 -06:00
Kris Nuttycombe a2898a84f4 Fully remove the regtest tree from restored nodes. 2020-05-08 10:36:04 -06:00
Kris Nuttycombe 76a88dab52 Update golden test for heartwood network upgrade. 2020-05-07 19:12:24 -06:00
Kris Nuttycombe 8542522732 Merge branch 'release/v2.1.1-1' into release/v2.1.2 2020-05-07 19:02:45 -06:00
Kris Nuttycombe a546caffc9 Add baseline for golden testing across network upgrade boundaries. 2020-05-07 16:34:44 -06:00
Kris Nuttycombe 35ff8d9bf2 Remove unused imports. 2020-05-05 11:41:06 -06:00
Kris Nuttycombe 45dab9adc0 Revert "Update qa/rpc-tests/sapling_rewind_check.py"
This reverts commit e09f052570.
2020-05-04 16:57:48 -06:00
Kris Nuttycombe ae86386648 Update test description and clarify internal comments. 2020-05-04 10:55:32 -06:00
Kris Nuttycombe 6742ba021f
Add Zcash copyright to sapling_rewind_check.py 2020-05-02 18:33:58 -06:00
Kris Nuttycombe e09f052570
Update qa/rpc-tests/sapling_rewind_check.py
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2020-05-02 18:33:01 -06:00
Kris Nuttycombe e7eff424c1
Update qa/rpc-tests/test_framework/mininode.py
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2020-05-02 18:31:26 -06:00
Kris Nuttycombe 2de5a2cb2d
Use `%x` formatter for branch id hex string in test_framework/util.py
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2020-05-02 18:31:13 -06:00
Kris Nuttycombe c2e3454e0a
Clean up imports in sapling_rewind_check.py
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2020-05-02 18:30:09 -06:00
Kris Nuttycombe 1508345a20 Merge remote-tracking branch 'upstream/master' into bug/4119-rewind_detection 2020-05-01 17:33:53 -06:00
Jack Grigg 7e684120d3 Add NU4 test helpers 2020-05-01 11:38:32 +12:00
Alfredo Garcia 4c40f9f514 implement z_getnotescount api call 2020-04-25 11:17:20 -03:00
Homu 0ad52ca9b1 Auto merge of #4249 - oxarbitrage:issue_3724, r=str4d
Add confirmations, blockheight, blockindex and blocktime to z_listreceivedbyaddress

Fixes https://github.com/zcash/zcash/issues/3724

1- There was a PR to add confirmations to this call at https://github.com/zcash/zcash/pull/3836
I ported the commit from there and fixed test case by incrementing the confirmations as suggested at: https://github.com/zcash/zcash/pull/3836#issuecomment-499927807

2- Then added `blockheight`, `blockindex` and `blocktime`. To avoid some duplicated code (Sprout/Sapling) created a structure `trxblock`.

3- Original issue requests only time and blockindex however i think height is also important; if `blockindex` is the position of the transaction in the block then you are going to need also `height` to find it.
2020-04-25 05:28:16 +00:00
Kris Nuttycombe 5a8f6f8058 Merge remote-tracking branch 'upstream/master' into bug/4119-rewind_detection 2020-04-22 14:58:11 -06:00
Kris Nuttycombe 7629560a26 Trivial comment. 2020-04-15 16:09:19 -06:00
Kris Nuttycombe a4e80ae1ab Restart node in a chain split state to allow the test to complete. 2020-04-15 15:58:48 -06:00
Kris Nuttycombe 5030e73afc Make the test reproduce the actual off-by-one error in rewind length. 2020-04-15 14:19:05 -06:00
Alfredo Garcia a1c37b7b79
Fix typo
Co-Authored-By: Dimitris Apostolou <dimitris.apostolou@icloud.com>
2020-04-15 15:46:49 -03:00
Dimitris Apostolou 5f2e015aa3
Fix typos 2020-04-15 13:24:00 +03:00
Kris Nuttycombe 59d2a6458d Narrow down the test case. 2020-04-14 17:47:29 -06:00
Alfredo Garcia 8a40b8518a fix wallet nullifiers test 2020-04-14 17:11:20 -03:00
Homu 084303d8c2 Auto merge of #4264 - NikVolf:mmr, r=str4d
[ZIP 221] FlyClient - Consensus-Layer Changes

Implements https://zips.z.cash/zip-0221
2020-04-14 20:09:34 +00:00
Kris Nuttycombe a4e8945cfa Check network reunification. 2020-04-14 13:52:50 -06:00
Kris Nuttycombe f432ceff31 Add a test reproducing the off-by-one error. 2020-04-14 13:37:40 -06:00
Jack Grigg e85fac5167 test: Ignore timestamps in addressindex checks
The mempool timestamps are local to each node, and if the testing
machine is under load, they can potentially differ by a second.

Closes zcash/zcash#4439.

Co-authored-by: Ying Tong <yingtong@ethereum.org>
2020-04-14 20:56:37 +12:00
Jack Grigg 21d8e5be15 Comment clarifications and fixes 2020-04-11 11:39:00 +12:00
Jack Grigg 9cfd574eac test: Add an extra assertion to feature_zip221.py 2020-04-10 19:47:45 +12:00
Homu 3033b8a0ec Auto merge of #4402 - oxarbitrage:issue4326, r=str4d
Add -lightwalletd experimental option

Similar to `-insightexplorer` but loading less indexes.

After testing and code review this should be able to close https://github.com/zcash/zcash/issues/4326
2020-04-10 03:42:54 +00:00
Jack Grigg 2ad84e8564 Comment tweaks and cleanups
Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2020-04-10 09:53:30 +12:00
Alfredo Garcia a43f5daff8 add -lightwalletd experimental option 2020-04-09 11:05:21 -03:00
Jack Grigg cb57c17eb6 test: Verify ZIP 221 logic against reference implementation 2020-04-08 08:49:01 +12:00
Alfredo Garcia de5b69f160 add expected address check to tests 2020-04-07 10:39:33 -03:00
Alfredo Garcia 0a6ab8a5ab return address info in z_importviewingkey 2020-04-07 08:38:12 -03:00
Homu 1be7250db9 Auto merge of #4411 - str4d:2074-rpc-test-harness-1, r=mdr0id
Backport RPC test harness PRs

Cherry-picked from the following upstream PRs:
- https://github.com/bitcoin/bitcoin/pull/6548
- https://github.com/bitcoin/bitcoin/pull/6804
  - Just the coverage backend, not the flag to enable it for all RPC tests.
- https://github.com/bitcoin/bitcoin/pull/7744
- https://github.com/bitcoin/bitcoin/pull/9832
  - Excludes `wallet-hd.py` change (missing bitcoin/bitcoin#8309).

Part of #2074.
2020-04-03 03:14:04 +00:00
Homu b5f179d207 Auto merge of #4370 - str4d:3060-sapling-viewing-keys, r=str4d
Add support for Sapling full viewing keys

This PR adds Sapling support to `z_exportviewingkey` and `z_importviewingkey`, and stores imported Sapling viewing keys in the wallet.

Closes #3060.
2020-03-28 02:41:26 +00:00
NicolasDorier b0d81be4cd [qa] assert_start_raises_init_error
Zcash: Excludes wallet-hd.py change (missing bitcoin/bitcoin#8309)
2020-03-24 21:55:08 +13:00
Wladimir J. van der Laan 11240d0928 test_framework: detect failure of bitcoind startup
Replace the `bitcoin-cli -rpcwait` after spawning bitcoind
with our own loop that detects when bitcoind exits prematurely.

And if one node fails to start, stop the others.

This prevents a hang in such a case (see #7463).
2020-03-24 21:55:08 +13:00
James O'Beirne d38a012970 Add basic coverage reporting for RPC tests
Thanks to @MarcoFalke @dexX7 @laanwj for review.

Zcash: Includes all the backend changes, but excludes the --coverage flag
added to rpc-tests.py as we have not yet migrated away from rpc-tests.sh.
2020-03-24 21:51:51 +13:00
ptschip 8f863b2817 Enable python tests for Native Windows
1) Multiplatorm support for devnull
2) Fixed a bug in the handling of cache files
3) Deleted run-bitcoin-cli as no longer needed
2020-03-24 18:05:30 +13:00
Homu c3df71a8e9 Auto merge of #4386 - oxarbitrage:issue4385, r=daira
add check_node_log utility function

Closes https://github.com/zcash/zcash/issues/4385
2020-03-19 13:26:42 +00:00
Alfredo Garcia 77219bdc6c remove unused import 2020-03-19 08:46:33 -03:00
Alfredo Garcia 2707e6ff6c preserve test semantics
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2020-03-18 22:49:44 -03:00
mdr0id e5e639ae22 Update RPCs to support cross platform paths and libs 2020-03-12 10:27:12 -07:00
Alfredo Garcia b7c8ee64d7 minor cleanup style, var names 2020-03-11 13:43:47 -03:00
Alfredo Garcia 1485c596e7 add stop_node argument to check_node_log, use it in shieldingcoinbase 2020-03-10 14:21:05 -03:00
Alfredo Garcia 1aae365438 use check_node_log in turnstile.py 2020-03-10 11:06:56 -03:00
Alfredo Garcia 461047ac99 move check_node_log framework test to a new file 2020-03-10 11:05:49 -03:00
Alfredo Garcia 9f71fbecca remove space after new line 2020-03-07 09:26:25 -03:00
Alfredo Garcia aa89d3c342 add check_node_log utility function 2020-03-06 19:17:18 -03:00
Homu 35bff6ac7c Auto merge of #4256 - str4d:zip-213-shielded-coinbase, r=daira
[NU3 Heartwood] Shielded Coinbase

Implements [ZIP 213](https://github.com/zcash/zips/pull/217).
2020-03-06 10:19:13 +00:00
Jack Grigg 6fd1b7c2e4 test: Check that shielded coinbase can be spent to a t-address 2020-03-06 13:10:39 +13:00
Jack Grigg 675a9b5fd3 test: RPC test for shielded coinbase 2020-03-06 10:41:27 +13:00
Homu 6c00a8ccf9 Auto merge of #4280 - oxarbitrage:issue2197, r=daira
Allow negative heights in RPC calls

For issue https://github.com/zcash/zcash/issues/2197

Currently adding the feature to `getblock` and `getblockhash`. There is another candidate: `getblocksubsidy` however i want to have some review about these 2 first before repeating what could be a bad approach.
2020-03-05 16:36:32 +00:00
Jack Grigg a62405f44f Store imported Sapling ExtFVKs in wallet database 2020-02-21 01:32:15 +00:00
Jack Grigg 1bcbe4e21d Add in-memory Sapling ExtFVK support to z_importviewingkey 2020-02-21 01:30:02 +00:00
Homu 27c04c8f9c Auto merge of #4146 - str4d:z_viewtransaction, r=str4d
z_viewtransaction

This RPC method returns all decryptable information for any transaction in the wallet.

Several values are conditionally included in the output for convenience:
- `recovered`: True if an output is not for a Sapling address in the wallet.
- `memoStr`: The text form of an output's memo, if it is valid UTF-8.
- Values are provided both in decimal currency units, and integer zatoshis.
2020-02-19 20:52:47 +00:00
Jack Grigg ef5fb6a93c test: Fix pyflakes warnings 2020-02-13 20:04:33 +00:00
Jack Grigg 0d5d329312 test: Hard-code hex memo in wallet_listreceived for Python3 compatibility 2020-02-13 20:04:33 +00:00
Alfredo Garcia 70d5682e31
Merge branch 'master' into issue4004 2020-02-11 10:58:33 -03:00
Alfredo Garcia ebd9d0c562
remove unused imports 2020-02-11 10:56:45 -03:00
mdr0id 7300db81ed Updating remaining python3 conventions 2020-02-10 13:15:26 -08:00
mdr0id 4cb368a8d9 Update remaining Python3 conventions 2020-02-10 12:46:41 -08:00
mdr0id 826135d5ed Fix remaining python3 conventions 2020-02-10 12:38:46 -08:00
mdr0id fdac835b13 update comment regarding prior py2 exception 2020-02-09 12:38:01 -08:00
mdr0id 9592ded3cc clean up conventions and whitespace 2020-02-09 08:44:23 -08:00
mdr0id 8f859cbf85 fix pyflakes errors 2020-02-09 08:18:00 -08:00
mdr0id 93c625397f Update py3 division 2020-02-09 08:18:00 -08:00
mdr0id c7113bd6f1 Update json to simplejson to remove unicode and str issue from py2 to py3 2020-02-09 08:18:00 -08:00
mdr0id 3eb6512b78 cleanups and fixing odd casting 2020-02-09 08:18:00 -08:00
mdr0id b2752948c0 fix url and port issue 2020-02-09 08:18:00 -08:00
mdr0id 08cfd935d6 clean up 2020-02-09 08:17:32 -08:00
mdr0id 4801c316fc clean up 2020-02-09 08:17:32 -08:00
mdr0id ff5a47acfa clean up 2020-02-09 08:17:32 -08:00
mdr0id 44834ed01c Clean up import calls 2020-02-09 08:17:32 -08:00
mdr0id 3ae42f1e75 Fix decimal 0 issues 2020-02-09 08:17:32 -08:00
mdr0id 0b1a644d54 remove u encoding 2020-02-09 08:17:32 -08:00
mdr0id f26269c512 clean up to minimize diff 2020-02-09 08:17:32 -08:00
mdr0id 2d4f4f0b13 remove debug lines from prior commits 2020-02-09 08:17:32 -08:00
mdr0id 89307b131a update type for decimal 0 2020-02-09 08:15:43 -08:00