Commit Graph

230 Commits

Author SHA1 Message Date
Jack Grigg 48ba891366 Add a warning modal for zcashd deprecation
Closes zcash/zcash#6982.
2025-04-07 19:19:36 +00:00
Daira-Emma Hopwood 8b436e8f1f Repair the RPC tests.
Co-authored-by: Jack Grigg <jack@electriccoin.co>
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-10-02 03:53:11 +01:00
Kris Nuttycombe 646ab61713 Disable macos CI runners.
At this point, we are not going to take the time to enable tier-3
platforms. Users desiring to use these platforms should migrate to
zebrad instead.
2024-08-27 09:30:00 -06:00
Daira-Emma Hopwood 9f7ee08af0 Ensure that `create_coinbase` can work on regtest after various
network upgrades:
* after Blossom, there is an extra halving of the block reward;
* after NU5, `nExpiryHeight` must be equal to the block height;
* after NU6, we need to take into account the lockbox value.

Also we rename `hashFinalSaplingRoot` to `hashBlockCommitments`,
and make `CBlock.rehash` implicitly recalculate the `hashMerkleRoot`
and `hashAuthDataRoot` fields.

Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-08-21 11:28:36 +01:00
Daira-Emma Hopwood e612ca0858 Add `test_framework.mininode.uint256_from_reversed_hex`.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-08-21 11:28:36 +01:00
Daira-Emma Hopwood 6141a56ba2 Make use of the 'filter' option to `tarfile.extractall` conditional on
the version of Python that added it (3.11.4).

Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-08-21 02:12:35 +01:00
Daira-Emma Hopwood a4bf3b1eda Update Python code to work, and avoid deprecation warnings, on Python 3.12.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-08-20 13:21:46 +01:00
Kris Nuttycombe 623bf72d3b
Merge pull request #6927 from daira/inv-buffer
Backport fix for INV buffer blowup
2024-08-19 09:08:59 -06:00
Kris Nuttycombe 1f610d06a9 Add tests for lockbox funding streams. 2024-08-08 17:21:01 -06:00
Kris Nuttycombe de8805448a Add constants & configuration for NU6.
This also updates to zcash/librustzcash@5a4a3e06dc
in order to ensure consistency between constants defined in librustzcash
and the constants defined here.
2024-08-07 15:15:56 -06:00
mrbandrews bc74173f8c [qa] Make comptool push blocks instead of relying on inv-fetch
(cherry picked from commit bitcoin/bitcoin@d768f151f6)
2024-07-23 01:56:24 +00:00
jimmycathy b27eae1120 chore: remove repetitive words
Signed-off-by: jimmycathy <clonecode@outlook.com>
2024-05-16 14:00:48 -06:00
Kris Nuttycombe 01b44bb837 Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-05-29 18:33:29 -06:00
Kris Nuttycombe ff02805e99 Add golden tests for Orchard wallet state at the zcashd v5.6.0 boundary.
This commit adds the test without persisting the results of the test,
to demonstrate that the test passes starting from the pre-caching state.
2023-05-27 14:41:24 -06:00
Daira Emma Hopwood d438b79184 Rename DEFAULT_FEE to LEGACY_DEFAULT_FEE in C++ code and RPC tests.
Also remove DEFAULT_FEE_ZATS in RPC tests which was unused.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-26 02:09:16 +01:00
Daira Emma Hopwood ff121bc8a7 Remove fee estimation.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-26 02:09:16 +01:00
Daira Emma Hopwood 11dc0d7277 Add a `-blockunpaidactionlimit` config option to configure the per-block
limit on unpaid actions for ZIP 317 block template construction.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-20 00:48:38 +01:00
Daira Emma Hopwood eb74c8e8b0 Repair some RPC tests.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-19 22:48:46 +01:00
Daira Emma Hopwood ea9fa3f06e Fix tests that failed due to the minimum relay fee being enforced.
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-17 18:49:45 +01:00
Daira Emma Hopwood d20a52faaa Fix some messages, comments, and documentation that:
* used "fee" to mean "fee rate", "kB" to mean 1000 bytes, "satoshis"
  to mean zatoshis, or that incorrectly used "BTC" in place of "ZEC";
* used obsolete concepts such as "zero fee" or "free transaction"; or
* did not accurately document their applicability.

Uses of "satoshis" as a JSON key are not altered.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-17 18:49:45 +01:00
Alex Morcos 3972c7e6b6 [test] Remove priority from tests
Remove all coin age priority functionality from unit tests and RPC tests.

(cherry picked from commit bitcoin/bitcoin@0315888d0d)

Zcash:
* We cannot remove the `pool` parameter from the `CTxMemPool` constructor
  because we do not have bitcoin/bitcoin#9138. (Backporting that PR is
  unnecessary and would be a distraction from the purpose of this one;
  the changes made by it are orthgonal.)
* We don't have `prioritise_transaction.py`, `MempoolAncestorIndexingTest`,
  `MempoolSizeLimitTest`, or the `estimateSmartFee` functionality, so omit
  the changes for those.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2023-04-17 18:49:45 +01:00
Greg Pfeil 2e80bd74cf
Use null as the ZIP 317 fee sentinel instead of -1
Fixes #6556
2023-04-15 16:12:42 -06:00
Greg Pfeil 0b9b5c8dc1
Address review feedback for ZIP 317 fees in wallet 2023-04-13 19:20:10 -06:00
Greg Pfeil c54c4ee987
Adjust wallet absurd fee check for ZIP 317
It now happens async (in `PrepareTransaction`) and ensures that the fee doesn’t
exceed the maximum useful value for a transaction.
2023-04-13 19:16:09 -06:00
Greg Pfeil c6001268c5
Address review feedback re: ZIP 317 in wallet 2023-04-11 13:21:48 -06:00
Greg Pfeil fc6eca86e2
Support ZIP 317 fees in the zcashd wallet
- still support explicit fixed fees everywhere – if a caller provides a fee, we
  don’t adjust it
- treat negative fees as signifier for use of ZIP 317 fees when a fee needs to
  be provided because of additional positional arguments
2023-04-10 00:20:29 -06:00
Greg Pfeil f6a4f68115
Merge pull request #6122 from nuttycom/wallet/listunspent_as_of
Add `asOfHeight` argument across the RPC API
2022-11-23 21:20:20 -07:00
str4d c267c3ee26
Merge pull request #6192 from daira/reduce-equihash-solution-memory
Reduce memory usage of CBlockIndex
2022-11-21 22:25:30 +00:00
Kris Nuttycombe 2c487c9430 Add RPC test for wallet_listunspent changes 2022-11-18 01:20:00 -07:00
Daira Hopwood 3529097153 Fix a dependency of the `show_help` RPC test on the number of cores,
and an incompatibility with Python 3.9 in the test framework that
affected the `receivedby` extended RPC test.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-11-15 13:58:26 +00:00
Daira Hopwood 2ee172fe15 Error reporting improvements.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-11-13 18:46:30 +00:00
Greg Pfeil 87aa33ecc4 `zcash --help` test improvements
Applying suggestions from @daira’s review of #6204.

Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-10-21 19:03:13 -06:00
Greg Pfeil 5c19487991 Add test for `zcashd --help`
Currently failing.
2022-10-18 13:42:02 -06:00
Daira Hopwood 774fa691aa Always use a tuple as right argument of % in new Python code.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-10-18 13:42:02 -06:00
Greg Pfeil 1e480d2b4d Address review feedback and fixed test failures
Some tests were checking error message strings, but the check was still
hardcoded to “bitcoind”.
2022-10-18 13:42:02 -06:00
Greg Pfeil 8cb655c3ff Fix display of binary name in error messages.
Ensures that test failures report the name of the actual binary that was run.
2022-10-18 13:42:02 -06:00
DeckerSU 225c8b8a03
test_framework: fix AttributeError in sapling_spends_compact_digest
Without this fix we will get:
AttributeError: 'SpendDescriptionV5' object has no attribute 'anchor'
On certain V5 transactions rehash / calc_sha256, for example:
ca6abd8ef7d6ef158a4a35ea2c2c0cf122f2f664a88f8fa5b6fd79e48c5bed59
2022-10-04 01:54:34 +02:00
Kris Nuttycombe afea5c386d Add RPC test initialization using the persisted Sprout chains. 2022-07-15 08:23:57 -06:00
Kris Nuttycombe e7922af588 Add a clock for testing with an offset from the system clock.
This change improves clock management for zcashd by ensuring
that all clock methods (obtaining seconds, milliseconds, and
microseconds since the epoch) agree under testing conditions
using `-mocktime`, and also adds a feature that allows tests
to specify an offset to the system clock; this is useful to
allow comprehensive testing of the "timejacking attack mitigation"
consensus rules.
2022-07-14 16:33:54 -06:00
Kris Nuttycombe 15d1bb6ce9 scripted-diff: Add 2020-2022 copyright headers for files added/modified in 2020
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM 6a08c225674df23f1c7f214bcb94732dba688d39..a960e896dd4c0b6d96db3d5ebbb1caa6c92a9f39 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2020-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:32:39 -06:00
Kris Nuttycombe 940dd0d426 scripted-diff: Add 2019-2022 copyright headers for files added/modified in 2019
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM 8df7a073ce13ec057b94b5a813bb5534cdfa6809..6a08c225674df23f1c7f214bcb94732dba688d39 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2019-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:29:59 -06:00
Kris Nuttycombe d9aeefc54a scripted-diff: Add 2017-2022 copyright headers for files added/modified in 2017
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM 94f427a211bb337200c29a1e19be0f5ad2f171b0..b2a114a8c99947b66d1fbdc70278f13e7a415d2a -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2017-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:25:51 -06:00
Kris Nuttycombe 28040f9ce4 scripted-diff: Add 2016-2022 copyright headers for files added/modified in 2016
-BEGIN VERIFY SCRIPT-
grep -l "Copyright" $(grep -L "The Zcash developers" $(git diff --name-only --diff-filter=ACM bitcoin-v0.11.2..94f427a211bb337200c29a1e19be0f5ad2f171b0 -- src/ test/ zcutil/ qa/)) | xargs -I {} sed -i"" -e "s#\(\(.*\)Copyright (c) .* The Bitcoin Core developers\)#\1\n\2Copyright (c) 2016-2022 The Zcash developers#" {}
-END VERIFY SCRIPT-
2022-05-11 17:23:09 -06:00
Kris Nuttycombe 1b8a9af946 Add tests to check auth data commitments committing to Orchard actions.
In the process of adding these tests, I also found and fixed a number
of type errors in Orchard auth data root computation.

Fixes #5223
2022-05-09 21:01:11 -06:00
Larry Ruane c5752c7ea2 Allow rpc python tests to be run standalone
That is, without having to launch with test_runner.py. There are
several places where the BITCOIND environment variable determines the
executable, but the default is "bitcoind"; change the default to
"src/zcashd". This does require running the test from the top-level
directory.

Also change the environment variable from BITCOIND to ZCASHD. This could
conceivable break someone, but it just makes too much sense not to do.
2022-04-26 15:06:31 -06:00
Kris Nuttycombe 9ca0a41cf7 Update protocol version to 170050 for v4.7.0 release. 2022-04-13 08:22:56 -06:00
Jack Grigg 165901c654 qa: Remove hard-coded consensus branch IDs from RPC tests
Also fixes a bug in the `nuparams` helper, which would have caused MSB
zeroes in consensus branch IDs to not be rendered in the `-nuparams`
option. This hadn't been encountered because we haven't yet generated a
consensus branch ID with a zero MSB.
2022-03-23 20:28:31 +00:00
Jack Grigg e5210d50c9 Set NU5 protocol version for regtest to 170040, bump protocol version
We need to bump the `zcashd` protocol version because the new rules are
not compatible with existing rules followed by 170015 nodes, but we
_also_ need to ensure we can still bump it again once we set the testnet
reactivation height (changing node network behaviour again). This commit
also enables RPC tests to run (because previously the nodes considered
each other to be too old for NU5 to be active, and were disconnecting).
2022-03-23 18:37:56 +00:00
Jack Grigg 9e9f58b26f Merge branch 'master' into unify-nu5-consensus-changes 2022-03-23 02:57:16 +00:00
Jack Grigg 77a971fbc1 Migrate to latest `zcash/librustzcash` revision
This includes:
- `orchard =0.1.0-beta.3` which includes the final circuit changes.
- The new NU5 consensus branch ID.
- Updated ZIP 244 test vectors (which use the NU5 consensus branch ID).
2022-03-23 02:05:06 +00:00