coins.cpp raw
1 // Copyright (c) 2023-present 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 <test/util/coins.h>
6
7 #include <coins.h>
8 #include <primitives/transaction.h>
9 #include <script/script.h>
10 #include <test/util/random.h>
11 #include <uint256.h>
12
13 #include <cstdint>
14 #include <utility>
15
16 COutPoint AddTestCoin(FastRandomContext& rng, CCoinsViewCache& coins_view)
17 {
18 Coin new_coin;
19 COutPoint outpoint{Txid::FromUint256(rng.rand256()), /*nIn=*/0};
20 new_coin.nHeight = 1;
21 new_coin.out.nValue = RandMoney(rng);
22 new_coin.out.scriptPubKey.assign(uint32_t{56}, 1);
23 coins_view.AddCoin(outpoint, std::move(new_coin), /*possible_overwrite=*/false);
24
25 return outpoint;
26 };
27