mirror of
https://github.com/RoboSats/robosats.git
synced 2025-07-17 16:23:13 +00:00
add option for timing issues in tests
On my powerful machine, running tests resulted in some errors. After a bit of digging I found out that it was a timing issues. This PR adds a config option TIMING_EXTRA_IN_TESTS that when set to True, it take some time where it should so that the tests do not fail. If the config option is not present (default) nothing is changed. I had this issue very sporadically on my laptop, and every time when running on an other powerful machine.
This commit is contained in:
@ -675,6 +675,20 @@ class Logics:
|
||||
# Create onchain_payment
|
||||
onchain_payment = OnchainPayment.objects.create(receiver=user)
|
||||
|
||||
if \
|
||||
config("TIMING_EXTRA_IN_TESTS", cast=bool, default=False) and \
|
||||
config("TESTING", cast=bool, default=False) and \
|
||||
config("LNVENDOR", cast=str, default="LND") == "CLN":
|
||||
import time
|
||||
retries = 0
|
||||
while onchain_payment.balance.onchain_confirmed == 0:
|
||||
retries += 1
|
||||
if retries > 30:
|
||||
break
|
||||
print("TIMING_EXTRA_IN_TESTS: onchain_payment.balance.onchain_confirmed is not 0, sleeping 2s")
|
||||
time.sleep(2)
|
||||
onchain_payment = OnchainPayment.objects.create(receiver=user)
|
||||
|
||||
# Compute a safer available onchain liquidity: (confirmed_utxos - reserve - pending_outgoing_txs))
|
||||
# Accounts for already committed outgoing TX for previous users.
|
||||
confirmed = onchain_payment.balance.onchain_confirmed
|
||||
|
@ -61,6 +61,13 @@ class Command(BaseCommand):
|
||||
INVGEN / LOCKED status and do InvoiceLookupV2 every X seconds to update their status.
|
||||
"""
|
||||
|
||||
if \
|
||||
config("TIMING_EXTRA_IN_TESTS", cast=bool, default=False) and \
|
||||
config("TESTING", cast=bool, default=False) and \
|
||||
config("LNVENDOR", cast=str, default="LND") == "LND":
|
||||
print("TIMING_EXTRA_IN_TESTS: follow_hold_invoices LND, sleeping 0.2s")
|
||||
time.sleep(0.2)
|
||||
|
||||
# time it for debugging
|
||||
t0 = time.time()
|
||||
|
||||
|
Reference in New Issue
Block a user