diff --git a/api/logics.py b/api/logics.py index d518415a..16adb1a4 100644 --- a/api/logics.py +++ b/api/logics.py @@ -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 diff --git a/api/management/commands/follow_invoices.py b/api/management/commands/follow_invoices.py index e6443a18..e4fbb76a 100644 --- a/api/management/commands/follow_invoices.py +++ b/api/management/commands/follow_invoices.py @@ -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()