LCOV - code coverage report
Current view: top level - src/node - coin.cpp (source / functions) Hit Total Coverage
Test: coverage.lcov Lines: 13 13 100.0 %
Date: 2021-06-29 14:35:33 Functions: 1 1 100.0 %
Legend: Modified by patch:
Lines: hit not hit | Branches: + taken - not taken # not executed

Not modified by patch:
Lines: hit not hit | Branches: + taken - not taken # not executed
Branches: 4 4 100.0 %

           Branch data     Line data    Source code
#       1                 :            : // Copyright (c) 2019 The Bitcoin Core developers
#       2                 :            : // Distributed under the MIT software license, see the accompanying
#       3                 :            : // file COPYING or http://www.opensource.org/licenses/mit-license.php.
#       4                 :            : 
#       5                 :            : #include <node/coin.h>
#       6                 :            : 
#       7                 :            : #include <node/context.h>
#       8                 :            : #include <txmempool.h>
#       9                 :            : #include <validation.h>
#      10                 :            : 
#      11                 :            : void FindCoins(const NodeContext& node, std::map<COutPoint, Coin>& coins)
#      12                 :       1496 : {
#      13                 :       1496 :     assert(node.mempool);
#      14                 :       1496 :     assert(node.chainman);
#      15                 :       1496 :     LOCK2(cs_main, node.mempool->cs);
#      16                 :       1496 :     assert(std::addressof(::ChainstateActive()) == std::addressof(node.chainman->ActiveChainstate()));
#      17                 :       1496 :     CCoinsViewCache& chain_view = node.chainman->ActiveChainstate().CoinsTip();
#      18                 :       1496 :     CCoinsViewMemPool mempool_view(&chain_view, *node.mempool);
#      19         [ +  + ]:       8864 :     for (auto& coin : coins) {
#      20         [ +  + ]:       8864 :         if (!mempool_view.GetCoin(coin.first, coin.second)) {
#      21                 :            :             // Either the coin is not in the CCoinsViewCache or is spent. Clear it.
#      22                 :        172 :             coin.second.Clear();
#      23                 :        172 :         }
#      24                 :       8864 :     }
#      25                 :       1496 : }

Generated by: LCOV version 1.14