Browse Source

tests: lnpeer: make debug htlc failure hooks more uniform

master
SomberNight 4 years ago
parent
commit
f9de6a5354
No known key found for this signature in database GPG Key ID: B33B5F232C6271E9
  1. 2
      electrum/lnpeer.py
  2. 1
      electrum/lnworker.py
  3. 5
      electrum/tests/test_lnpeer.py

2
electrum/lnpeer.py

@ -1509,7 +1509,7 @@ class Peer(Logger):
self.logger.info(f"error processing onion packet: {e!r}")
error_reason = OnionRoutingFailureMessage(code=OnionFailureCode.TEMPORARY_NODE_FAILURE, data=b'')
else:
if self.lnworker._fail_htlcs_with_temp_node_failure:
if self.network.config.get('test_fail_htlcs_with_temp_node_failure'):
error_reason = OnionRoutingFailureMessage(code=OnionFailureCode.TEMPORARY_NODE_FAILURE, data=b'')
elif processed_onion.are_we_final:
preimage, error_reason = self.maybe_fulfill_htlc(

1
electrum/lnworker.py

@ -494,7 +494,6 @@ class LNWallet(LNWorker):
# used in tests
self.enable_htlc_settle = asyncio.Event()
self.enable_htlc_settle.set()
self._fail_htlcs_with_temp_node_failure = False
# note: accessing channels (besides simple lookup) needs self.lock!
self._channels = {} # type: Dict[bytes, Channel]

5
electrum/tests/test_lnpeer.py

@ -118,7 +118,6 @@ class MockLNWallet(Logger, NetworkRetryManager[LNPeerAddr]):
# used in tests
self.enable_htlc_settle = asyncio.Event()
self.enable_htlc_settle.set()
self._fail_htlcs_with_temp_node_failure = False
def get_invoice_status(self, key):
pass
@ -543,8 +542,8 @@ class TestPeer(ElectrumTestCase):
@needs_test_with_all_chacha20_implementations
def test_payment_multihop_temp_node_failure(self):
graph = self.prepare_chans_and_peers_in_square()
graph.w_b._fail_htlcs_with_temp_node_failure = True
graph.w_c._fail_htlcs_with_temp_node_failure = True
graph.w_b.network.config.set_key('test_fail_htlcs_with_temp_node_failure', True)
graph.w_c.network.config.set_key('test_fail_htlcs_with_temp_node_failure', True)
peers = graph.all_peers()
async def pay(pay_req):
result, log = await graph.w_a._pay(pay_req)

Loading…
Cancel
Save