aboutsummaryrefslogtreecommitdiff
path: root/tests/functional_tests
Commit message (Collapse)AuthorAgeFilesLines
* fix: TypeError: 'method' object is not subscriptableSNeedlewoods2026-06-031-3/+3
|
* daemon: remove miniupnptobtoht2026-04-261-1/+1
|
* wallet: identify spends in pool when scanningj-berman2025-10-072-32/+117
| | | | | | | | | | | | | | | | - Make sure to mark identified spends in the pool as spends. The wallet might not know these have been spent if it wasn't the wallet that relayed the tx to the daemon, or the wallet was cleared via rescan_bc. - Make sure to add spends to m_unconfirmed_txs if not present. - Make sure to process the entire pool again if refreshing for the first time. The wallet fetches pool and blocks at the same time. The wallet scans blocks first, then pool. If the wallet identifies received outputs in the chain, then it may have spent those received outputs in the pool. So we make sure to re-process the entire pool again after scanning the chain for the first time. - Multisig wallets that know about spent key images can now detect spend txs in the pool. Update tests for that.
* wallet: refactor subaddress expansion & add to transfer testjeffro2562025-07-071-0/+43
|
* wallet: create set_subaddress_lookahead wallet rpc endpointbenevanoff2025-07-071-0/+15
|
* Merge pull request #9740tobtoht2025-03-101-2/+105
|\ | | | | | | 008ba966d blockchain sync: reduce disk writes from 2 to 1 per tx (jeffro256)
| * blockchain sync: reduce disk writes from 2 to 1 per txjeffro2562025-03-101-2/+105
| |
* | Merge pull request #9775tobtoht2025-02-141-1/+1
|\ \ | | | | | | | | | | | | 13ff355cf Set response limits on http server connections (Lee *!* Clagett) 89fa3ed68 epee: update 'http_server_handlers_map2.h' macros to use fully qualified names (Jeffrey Ryan)
| * | Set response limits on http server connectionsLee *!* Clagett2025-02-141-1/+1
| | |
* | | tests: Improve p2p tx propagation functional testiamamyth2025-02-131-10/+29
|/ / | | | | | | | | | | | | | | | | Reduce the likelihood of false positive failures in the p2p transaction propagation functional test by waiting up to a maximum timeout for a transaction to propagate, rather than using a fixed timeout, to reflect the random delay of Dandelion++ transaction propagation. This strategy also speeds test execution in cases where propagation occurs faster than the previously expected fixed delay.
* | Merge pull request #8617tobtoht2025-02-133-35/+433
|\ \ | |/ |/| | | e44e8b164 wallet: background sync with just the view key (j-berman)
| * wallet: background sync with just the view keyj-berman2024-05-243-35/+433
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - When background syncing, the wallet wipes the spend key from memory and processes all new transactions. The wallet saves all receives, spends, and "plausible" spends of receives the wallet does not know key images for. - When background sync disabled, the wallet processes all background synced txs and then clears the background sync cache. - Adding "plausible" spends to the background sync cache ensures that the wallet does not need to query the daemon to see if any received outputs were spent while background sync was enabled. This would harm privacy especially for users of 3rd party daemons. - To enable the feature in the CLI wallet, the user can set background-sync to reuse-wallet-password or custom-background-password and the wallet automatically syncs in the background when the wallet locks, then processes all background synced txs when the wallet is unlocked. - The custom-background-password option enables the user to open a distinct background wallet that only has a view key saved and can be opened/closed/synced separately from the main wallet. When the main wallet opens, it processes the background wallet's cache. - To enable the feature in the RPC wallet, there is a new `/setup_background_sync` endpoint. - HW, multsig and view-only wallets cannot background sync.
* | build: fix build with Boost 1.85 and remove instances of viewkey logging ↵jeffro2562024-09-101-1/+1
|/ | | | | | | | | | | [RELEASE] 1. Use std::is_standard_layout and std::is_trivially_copyable instead of std::is_pod for KV byte-wise serialization, which fixes compile issue for Boost UUIDs 2. Removed reimplementation of std::hash for boost::uuids::uuid 3. Removed << operator overload for crypto::secret_key 4. Removed instances in code where private view key was dumped to the log in plaintext Release version of #9450, containing C++14 modified assertions
* Enforce Tx unlock_time is Zero by Relay Rule [RELEASE]jeffro2562024-04-291-1/+1
| | | | | | | | | | | | | | | | Related to https://github.com/monero-project/research-lab/issues/78 Added a relay rule that enforces the `unlock_time` field is equal to 0 for non-coinbase transactions. UIs changed: * Removed `locked_transfer` and `locked_sweep_all` commands from `monero-wallet-cli` APIs changed: * Removed `unlock_time` parameters from `wallet2` transfer methods * Wallet RPC transfer endpoints send error codes when requested unlock time is not 0 * Removed `unlock_time` parameters from `construct_tx*` cryptonote core functions @tobtoht: undo rebase changes tx.dsts -> tx_dsts
* wallet: feature: transfer amount with fee includedjeffro2562024-02-201-0/+81
| | | | | | | | | | | | | | | | | To transfer ~5 XMR to an address such that your balance drops by exactly 5 XMR, provide a `subtractfeefrom` flag to the `transfer` command. For example: transfer 76bDHojqFYiFCCYYtzTveJ8oFtmpNp3X1TgV2oKP7rHmZyFK1RvyE4r8vsJzf7SyNohMnbKT9wbcD3XUTgsZLX8LU5JBCfm 5 subtractfeefrom=all If my walet balance was exactly 30 XMR before this transaction, it will be exactly 25 XMR afterwards and the destination address will receive slightly less than 5 XMR. You can manually select which destinations fund the transaction fee and which ones do not by providing the destination index. For example: transfer 75sr8AAr... 3 74M7W4eg... 4 7AbWqDZ6... 5 subtractfeefrom=0,2 This will drop your balance by exactly 12 XMR including fees and will spread the fee cost proportionally (3:5 ratio) over destinations with addresses `75sr8AAr...` and `7AbWqDZ6...`, respectively. Disclaimer: This feature was paid for by @LocalMonero.
* functional_tests: fix multisig tests noutputs assertionjeffro2562023-08-191-84/+45
| | | | The changes to the multisig tests in #8914 and #8904 affected each other, this PR cleans up the code and fixes that issue.
* Merge pull request #8942luigi11112023-08-171-9/+146
|\ | | | | | | 78348bc wallet-rpc: restore from multisig seed (jeffro256)
| * wallet-rpc: restore from multisig seedjeffro2562023-08-101-9/+146
| |
* | Merge pull request #8891luigi11112023-08-171-0/+10
|\ \ | |/ |/| | | 842478c core_rpc_server: return ID of submitted block (jeffro256)
| * core_rpc_server: return ID of submitted blockjeffro2562023-06-301-0/+10
| |
* | Merge pull request #8905luigi11112023-07-061-0/+101
|\ \ | | | | | | | | | dc24312 wallet: respect frozen key images in multisig wallets [RELEASE] (jeffro256)
| * | wallet: respect frozen key images in multisig wallets [RELEASE]jeffro2562023-06-121-0/+101
| |/ | | | | | | | | | | | | Before this change, if a multisig peer asked you to sign a transaction with a frozen enote, the wallet will do it without any error or warning. This change makes it so that wallets will refuse to sign multisig transactions with frozen enotes. Disclaimer: This PR was generously funded by @LocalMonero.
* / wallet2: fix rescanning tx via scan_txj-berman2023-03-132-7/+223
|/ | | | | | | | | | | | | | | | | - Detach & re-process txs >= lowest scan height - ensures that if a user calls scan_tx(tx1) after scanning tx2, the wallet correctly processes tx1 and tx2 - if a user provides a tx with a height higher than the wallet's last scanned height, the wallet will scan starting from that tx's height - scan_tx requires trusted daemon iff need to re-process existing txs: in addition to querying a daemon for txids, if a user provides a txid of a tx with height *lower* than any *already* scanned txs in the wallet, then the wallet will also query the daemon for all the *higher* txs as well. This is likely unexpected behavior to a caller, and so to protect a caller from revealing txid's to an untrusted daemon in an unexpected way, require the daemon be trusted.
* wallet2: check wallet compatibility with daemon's hard fork versionj-berman2022-09-121-1/+1
|
* wallet2: better test on whether to allow output importmoneromooo-monero2022-09-071-0/+9
| | | | | | | | Being offline is not a good enough heuristic, so we keep track of whether the wallet ever refreshed from a daemon, which is a lot better, and probably the best we can do without manual user designation (which would break existing cold wallet setups till the user designates those wallets)
* allow exporting outputs in chunksmoneromooo-monero2022-09-071-14/+40
| | | | | this will make it easier huge wallets to do so without hitting random limits (eg, max string size in node).
* wallet2: fixes for export/import output flowj-berman2022-09-062-18/+67
| | | | | | - only allow offline wallets to import outputs - don't import empty outputs - export subaddress indexes when exporting outputs
* Publish submitted txs via zmqj-berman2022-07-213-4/+24
|
* disable multisig by defaultmoneromooo-monero2022-05-171-5/+5
| | | | | | | | | There are vulnerabilities in multisig protocol if the parties do not trust each other, and while there is a patch for it, it has not been throroughly reviewed yet, so it is felt safer to disable multisig by default for now. If all parties in a multisig setup trust each other, then it is safe to enable multisig.
* Merge pull request #8220luigi11112022-05-101-32/+51
|\ | | | | | | 0d6ecb1 multisig: add post-kex verification round to check that all participants have completed the multisig address (koe)
| * multisig: add post-kex verification round to check that all participants ↵koe2022-04-291-32/+51
| | | | | | | | have completed the multisig address
* | Bump ring size to 16 for v15 & remove set default in wallet clij-berman2022-04-184-13/+13
| |
* | Fee changes from ArticMinemoneromooo-monero2022-04-101-4/+4
| | | | | | | | | | | | https://github.com/ArticMine/Monero-Documents/blob/master/MoneroScaling2021-02.pdf with a change to use 1.7 instead of 2.0 for the max long term increase rate
* | tests: integrated_address: remove missing payment id assertionreemuru2022-04-061-3/+1
| | | | | | | | | | | | | | | | The integrated address functional test fails in the workflows due to an assertion for missing payment id that is no longer needed. Remove the assertion and update the assertion count. Fixes 7dcfccb: ("wallet_rpc_server: fix make_integrated_address with no payment id")
* | Merge pull request #8197luigi11112022-04-0628-28/+34
|\ \ | | | | | | | | | da9aa1f Copyright: Update to 2022 (mj-xmr)
| * | Copyright: Update to 2022mj-xmr2022-03-0428-28/+34
| |/
* | Merge pull request #8158luigi11112022-03-181-5/+2
|\ \ | |/ |/| | | e5000a9 Balance includes unconfirmed transfers to self (woodser)
| * Balance includes unconfirmed transfers to selfwoodser2022-01-311-5/+2
| |
* | Merge pull request #7877luigi11112022-03-021-19/+10
|\ \ | |/ |/| | | e08abaa multisig key exchange update and refactor (koe)
| * multisig key exchange update and refactorkoe2022-02-221-19/+10
| |
* | functional_tests: update uri test with external pidselsta2021-12-141-9/+5
|/
* Tests: Mining test uses a parametric path for finding the calculation appmj-xmr2021-04-273-41/+66
| | | | MINING_SILENT and MINING_NO_MEASUREMENT env vars
* Split epee/string_tools.h and encapsulate boost::lexical_castmj-xmr2021-04-161-0/+1
|
* [CI] Adaptive mining timeout, depending on available CPU powermj-xmr2021-03-304-10/+249
| | | | Printing also available RAM. Add comprehensive description.
* [CI] Use Python3 for funcional tests, instead of Python2mj-xmr2021-03-201-4/+6
|
* functional_tests: hide check_missing_rpc_methods behind requests checkmoneromooo-monero2021-02-231-6/+5
|
* Merge pull request #7371luigi11112021-02-181-1/+1
|\ | | | | | | 1aecdcf Increase timeout for the mining test 4 times (to 240s) (mj-xmr)
| * Increase timeout for the mining test 4 times (to 240s)mj-xmr2021-02-111-1/+1
| |
* | Remove unused variables in monero codebaseKevin Barbour2021-02-091-1/+0
|/ | | | | | | | | | | There are quite a few variables in the code that are no longer (or perhaps never were) in use. These were discovered by enabling compiler warnings for unused variables and cleaning them up. In most cases where the unused variables were the result of a function call the call was left but the variable assignment removed, unless it was obvious that it was a simple getter with no side effects.
* Merge pull request #6937luigi11112020-11-291-2/+2
|\ | | | | | | 8a282f6 Add RELINK_TARGETS, monero_add_target_no_relink and use monero_add_executable/monero_add_library where possible (mj-xmr) Add monero_add_minimal_executable and use in tests (mj-xmr)