diff --git a/electrum/tests/test_lnpeer.py b/electrum/tests/test_lnpeer.py index 67577c579..08c8920c5 100644 --- a/electrum/tests/test_lnpeer.py +++ b/electrum/tests/test_lnpeer.py @@ -1,4 +1,5 @@ import asyncio +import shutil import tempfile from decimal import Decimal import os @@ -39,6 +40,7 @@ from electrum.lnutil import derive_payment_secret_from_payment_preimage, UpdateA from electrum.lnutil import LOCAL, REMOTE from electrum.invoices import PR_PAID, PR_UNPAID from electrum.interface import GracefulDisconnect +from electrum.simple_config import SimpleConfig from .test_lnchannel import create_test_channels from .test_bitcoin import needs_test_with_all_chacha20_implementations @@ -56,13 +58,11 @@ def noop_lock(): yield class MockNetwork: - def __init__(self, tx_queue): + def __init__(self, tx_queue, *, config: SimpleConfig): self.callbacks = defaultdict(list) self.lnwatcher = None self.interface = None - user_config = {} - user_dir = tempfile.mkdtemp(prefix="electrum-lnpeer-test-") - self.config = simple_config.SimpleConfig(user_config, read_user_dir_function=lambda: user_dir) + self.config = config self.asyncio_loop = util.get_asyncio_loop() self.channel_db = ChannelDB(self) self.channel_db.data_loaded.set() @@ -135,7 +135,9 @@ class MockLNWallet(Logger, EventListener, NetworkRetryManager[LNPeerAddr]): Logger.__init__(self) NetworkRetryManager.__init__(self, max_retry_delay_normal=1, init_retry_delay_normal=1) self.node_keypair = local_keypair - self.network = MockNetwork(tx_queue) + self._user_dir = tempfile.mkdtemp(prefix="electrum-lnpeer-test-") + self.config = SimpleConfig({}, read_user_dir_function=lambda: self._user_dir) + self.network = MockNetwork(tx_queue, config=self.config) self.taskgroup = OldTaskGroup() self.lnwatcher = None self.listen_server = None @@ -389,6 +391,8 @@ class TestPeer(TestCaseForTestnet): async with OldTaskGroup() as group: for lnworker in self._lnworkers_created: await group.spawn(lnworker.stop()) + for lnworker in self._lnworkers_created: + shutil.rmtree(lnworker._user_dir) self._lnworkers_created.clear() run(cleanup_lnworkers())