aboutsummaryrefslogtreecommitdiff
path: root/test/functional/mempool_limit.py
AgeCommit message (Collapse)Author
2024-04-09Move fill_mempool to util functionGreg Sanders
2024-04-08fill_mempool: remove subtest-specific commentGreg Sanders
2023-11-29RPC submitpackage: change return format to allow partial errorsGreg Sanders
Behavior prior to this commit allows some transactions to enter into the local mempool but not be reported to the user when encountering a PackageValidationResult::PCKG_TX result. This is further compounded with the fact that any transactions submitted to the mempool during this call would also not be relayed to peers, resulting in unexpected behavior. Fix this by, if encountering a package error, reporting all wtxids, along with a new error field, and broadcasting every transaction that was found in the mempool after submission. Note that this also changes fees and vsize to optional, which should also remove an issue with other-wtxid cases.
2023-09-19Add regression test for m_limit mutationGreg Sanders
2023-09-13[test] mempool coins disappearing mid-package evaluationglozow
Test for scenario(s) outlined in PR 28251. Test what happens when a package transaction spends a mempool coin which is fetched and then disappears mid-package evaluation due to eviction or replacement.
2023-09-13[refactor] split setup in mempool_limit testglozow
We want to be able to re-use fill_mempool so that none of the tests affect each other. Change the logs from info to debug because they are otherwise repeated many times in the test output.
2023-04-17[test] mempool full in package acceptglozow
2023-04-17[test] package cpfp bumps parents <mempoolminfee but >=minrelaytxfeeglozow
2023-01-13test: remove `-spendzeroconfchange` setting from mempool_limit.pySebastian Falbesoner
Since this test was changed to use MiniWallet instead of the Bitcoin Core wallet (see commit d447ded6babebe7c7948e585c9e78bf34dbef226), the setting doesn't have any effect and hence can be removed.
2022-12-24scripted-diff: Bump copyright headersHennadii Stepanov
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./ -END VERIFY SCRIPT- Commits of previous years: - 2021: f47dda2c58b5d8d623e0e7ff4e74bc352dfa83d7 - 2020: fa0074e2d82928016a43ca408717154a1c70a4db - 2019: aaaaad6ac95b402fe18d019d67897ced6b316ee0
2022-06-29test: pass `datacarriersize` option for tests using large outputs (instead ↵Sebastian Falbesoner
of `acceptnonstdtxn`) By specifying the `datacarriersize` option instead of the more generic `acceptnonstdtxn`, we can be more specific about what part of the transaction is non-standard and can be sure that all other aspects follow the standard policy.
2022-06-15Merge bitcoin/bitcoin#25358: test: passing a value below 5 MB to -maxmempool ↵MacroFake
should throw an error 216c9b00ec6f8dca815fa5a308abaf4c34674b41 test: passing a value below 5 MB to -maxmempool should throw an error (brunoerg) Pull request description: This PR adds test coverage for the following init error: https://github.com/bitcoin/bitcoin/blob/5174a139c92c1238f9700d06e362dc628d81a0a9/src/init.cpp#L931-L935 By default, the minimum value is 5 MB. See: https://github.com/bitcoin/bitcoin/blob/master/doc/reduce-memory.md#memory-pool ACKs for top commit: laanwj: Code review ACK 216c9b00ec6f8dca815fa5a308abaf4c34674b41 furszy: Code review ACK 216c9b00 Tree-SHA512: 0c8fdcefb85e3dabb986a6294ad18503168a04246926614cbfa2d09d9e997312c937b01994f2999b1dc583e2eac5cdb8058bd58577baeb3eb23fdc690400cab9
2022-06-13test: Remove MiniWallet mempool_valid optionMacroFake
2022-06-13test: passing a value below 5 MB to -maxmempool should throw an errorbrunoerg
2022-04-16test: refactor: use `create_lots_of_big_transactions` to dedup where possibleSebastian Falbesoner
2021-11-10scripted-diff: Bump copyright headersMarcoFalke
The previous diff touched most files in ./test/, so bump the headers to avoid having to touch them again for a bump later. -BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./test/ -END VERIFY SCRIPT-
2021-09-14test: fix misleading fee unit in mempool_limit.pySebastian Falbesoner
The helper `send_large_txs` in its current interface has a fee_rate parameter, implying that it would create a transaction with exactly that rate. Unfortunately, this fee rate is only passed to MiniWallet's `create_self_transfer` method, which can't know that we append several tx outputs after, increasing the tx's vsize and decreasing it's fee rate accordingly. In our case, the fee rate is off by several orders of magnitude, as the tx's vsize changes changes from 96 to 67552 vbytes (>700x), i.e. the value passed to this function is neither really a fee rate nor an absolute fee, but something in-between, which is very confusing. Clarify the interface by passing an absolute fee that is deducted in the end (and verified, via testmempoolaccept) and also describe how we come up with the value passed.
2021-09-14fix typos in logging messagesShubhamPalriwala
2021-09-14replace: self.nodes[0] with nodeShubhamPalriwala
2021-09-14test: use MiniWallet in mempool_limit.pyShubhamPalriwala
Co-authored-by: ShubhamPalriwala <spalriwalau@gmail.com> Co-authored-by: stackman27 <sishirg27@gmail.com> Signed-off-by: ShubhamPalriwala <spalriwalau@gmail.com>
2021-08-19Use generate* from TestFrameworkMarcoFalke
The changes in feature_rbf can be reviewed with --color-moved=dimmed-zebra --color-moved-ws=ignore-all-space
2019-12-06tests: Mark functional tests not supporting bitcoin-cli (--usecli) as suchpracticalswift
2019-06-21test: Require standard txs in regtestMarcoFalke
2019-03-02scripted-diff: Update copyright in ./testMarcoFalke
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./test/ -END VERIFY SCRIPT-
2019-03-02scripted-diff: test: Remove brackets after assertMarcoFalke
-BEGIN VERIFY SCRIPT- sed -i --regexp-extended -e 's/assert ?\((.+)\)(( )*)?(#.*)?$/assert \1\3\3\4/g' $(git grep -l --extended-regexp 'assert ?\(' test) -END VERIFY SCRIPT-
2018-09-10qa: Run all tests even if wallet is not compiledMarcoFalke
2018-08-13tests: Use explicit importspracticalswift
2018-07-27Update copyright headers to 2018DrahtBot
2018-02-22Don't test against the mempool min fee information in mempool_limit.pyBen Woosley
Because the right-hand side of this comparison can be influenced externally, e.g. via the -maxmempool argument, the existing mempool state, host memory usage, etc.
2018-02-17scripted-diff: change signrawtransaction to signrawtransactionwithwallet in ↵Andrew Chow
tests -BEGIN VERIFY SCRIPT- sed -i 's/\<signrawtransaction\>/signrawtransactionwithwallet/g' test/functional/*.py sed -i 's/\<signrawtransaction\>/signrawtransactionwithwallet/g' test/functional/test_framework/*.py -END VERIFY SCRIPT-
2018-02-08Consistently use FormatStateMessage in RPC error outputBen Woosley
This will include the error code and debug output as well as the reason string. See #11955 for the motivation.
2018-02-08Add test for 'mempool min fee not met' rpc errorBen Woosley
2018-01-04Merge #12001: [RPC] Adding ::minRelayTxFee amount to getmempoolinfo and ↵Wladimir J. van der Laan
updating help aad3090 [rpc] Adding ::minRelayTxFee amount to getmempoolinfo and updating mempoolminfee help description (Jeff Rade) Pull request description: These are RPC document changes from #11475 which is now merged. Took into consideration comments from #11475 and #6941 for this PR. Biggest change here is when calling `getmempoolinfo`, will now show the `minrelaytxfee` in the JSON reponse (see below): ``` $ bitcoin-cli getmempoolinfo { "size": 50, "bytes": 13102, "usage": 70480, "maxmempool": 300000000, "mempoolminfee": 0.00001000, "minrelaytxfee": 0.00001000 } ``` Fixes #8953 Tree-SHA512: 5ca583961365ee1cfe6e0d19afb0b41d542e179efee3b3c5f3fcf7d3ebca9cc3eedfd1434a0da40c5eed84fba98b35646fda201e6e61c689b58bee9cbea44b9e
2018-01-03Increment MIT Licence copyright header year on files modified in 2017Akira Takizawa
2017-12-29[rpc] Adding ::minRelayTxFee amount to getmempoolinfo and updating ↵Jeff Rade
mempoolminfee help description
2017-09-01[tests] don't override __init__() in individual testsJohn Newbery
Almost all test scripts currently need to override the __init__() method. When they do that they need to call into super().__init__() as the base class does some generic initialization. This commit makes the base class __init__() call into set_test_params() method. Individual test cases can override set_test_params() to setup their test parameters.
2017-05-02[tests] Remove is_network_split from funtional test casesJohn Newbery
2017-03-20Rename rpc-tests directory to functionalJohn Newbery