|
27 | 27 | )
|
28 | 28 |
|
29 | 29 | import collections
|
| 30 | +from decimal import Decimal |
30 | 31 | import enum
|
31 | 32 | import itertools
|
| 33 | +import random |
32 | 34 |
|
33 | 35 | Call = enum.Enum("Call", "single multiaddress multiscript")
|
34 | 36 | Data = enum.Enum("Data", "address pub priv")
|
@@ -117,6 +119,13 @@ def check(self, txid=None, amount=None, confirmation_height=None):
|
117 | 119 | # Rescans start at the earliest block up to 2 hours before the key timestamp.
|
118 | 120 | TIMESTAMP_WINDOW = 2 * 60 * 60
|
119 | 121 |
|
| 122 | +AMOUNT_DUST = 0.00000546 |
| 123 | + |
| 124 | + |
| 125 | +def get_rand_amount(): |
| 126 | + r = random.uniform(AMOUNT_DUST, 1) |
| 127 | + return Decimal(str(round(r, 8))) |
| 128 | + |
120 | 129 |
|
121 | 130 | class ImportRescanTest(BitcoinTestFramework):
|
122 | 131 | def set_test_params(self):
|
@@ -150,7 +159,7 @@ def run_test(self):
|
150 | 159 | variant.label = "label {} {}".format(i, variant)
|
151 | 160 | variant.address = self.nodes[1].getaddressinfo(self.nodes[1].getnewaddress(variant.label))
|
152 | 161 | variant.key = self.nodes[1].dumpprivkey(variant.address["address"])
|
153 |
| - variant.initial_amount = 1 - (i + 1) / 64 |
| 162 | + variant.initial_amount = get_rand_amount() |
154 | 163 | variant.initial_txid = self.nodes[0].sendtoaddress(variant.address["address"], variant.initial_amount)
|
155 | 164 | self.nodes[0].generate(1) # Generate one block for each send
|
156 | 165 | variant.confirmation_height = self.nodes[0].getblockcount()
|
@@ -183,7 +192,7 @@ def run_test(self):
|
183 | 192 |
|
184 | 193 | # Create new transactions sending to each address.
|
185 | 194 | for i, variant in enumerate(IMPORT_VARIANTS):
|
186 |
| - variant.sent_amount = 1 - (2 * i + 1) / 128 |
| 195 | + variant.sent_amount = get_rand_amount() |
187 | 196 | variant.sent_txid = self.nodes[0].sendtoaddress(variant.address["address"], variant.sent_amount)
|
188 | 197 | self.nodes[0].generate(1) # Generate one block for each send
|
189 | 198 | variant.confirmation_height = self.nodes[0].getblockcount()
|
|
0 commit comments