Skip to content
Bitcoin Roots

v31.1-roots.1 · Commit 3: [PATCH 03/17] feat(policy): preserve cluster accounting and repair dynamic dust

test/functional/wallet_avoid_mixing_output_types.py

Before: test/functional/wallet_avoid_mixing_output_types.py · After: test/functional/wallet_avoid_mixing_output_types.py

File metadata
index 0d0629890d48746ffa24407fd2b95d407a8d4fe4..d705e1c0b11b7e0d17ffdd144cf6b5f9ea5bb921 100755

Download original patch · Release notes

Diff rows 1–25 of 25. Line numbers refer to the original before/after files.

+ Added− RemovedUnmarked lines are context.

Scroll the code area horizontally to read long lines. The two line-number columns refer to before and after.

test/functional/wallet_avoid_mixing_output_types.py CHANGED
@@ -114,12 +114,16 @@ class AddressInputTypeGrouping(BitcoinTestFramework):
114
114
  self.extra_args = [
115
115
  [
116
116
  "-addresstype=bech32",
117
+ "-rejectparasites=0",
117
118
  ],
118
119
  [
119
120
  "-addresstype=p2sh-segwit",
120
121
  "-txindex",
122
+ "-rejectparasites=0",
121
123
  ],
122
124
  ]
125
+ # Randomized wallet locktime can hit 21; isolate input grouping from
126
+ # the Roots local marker filter.
123
127
 
124
128
  def skip_test_if_missing_module(self):
125
129
  self.skip_if_no_wallet()
@@ -164,6 +168,9 @@ class AddressInputTypeGrouping(BitcoinTestFramework):
164
168
  tx = self.make_payment(
165
169
  A, B, v, random.choice(ADDRESS_TYPES)
166
170
  )
171
+ # B submits locally; ensure A receives the payment before mining it.
172
+ # Otherwise the final mixed payment can depend on unconfirmed change.
173
+ self.sync_mempools()
167
174
  self.generate(A, 1)
168
175
  assert is_same_type(B, tx)
169
176