test_lnpeer: add names
This commit is contained in:
@@ -11,8 +11,7 @@ from electrum.ecc import ECPrivkey
|
||||
from electrum import simple_config, lnutil
|
||||
from electrum.lnaddr import lnencode, LnAddr, lndecode
|
||||
from electrum.bitcoin import COIN, sha256
|
||||
from electrum.util import bh2u
|
||||
|
||||
from electrum.util import bh2u, set_verbosity
|
||||
from electrum.lnpeer import Peer
|
||||
from electrum.lnutil import LNPeerAddr, Keypair, privkey_to_pubkey
|
||||
from electrum.lnutil import LightningPeerConnectionClosed, RemoteMisbehaving
|
||||
@@ -120,11 +119,12 @@ class MockLNWorker:
|
||||
get_first_timestamp = lambda self: 0
|
||||
|
||||
class MockTransport:
|
||||
def __init__(self):
|
||||
def __init__(self, name):
|
||||
self.queue = asyncio.Queue()
|
||||
self._name = name
|
||||
|
||||
def name(self):
|
||||
return ""
|
||||
return self._name
|
||||
|
||||
async def read_messages(self):
|
||||
while True:
|
||||
@@ -142,27 +142,31 @@ class NoFeaturesTransport(MockTransport):
|
||||
self.queue.put_nowait(encode_msg('init', lflen=1, gflen=1, localfeatures=b"\x00", globalfeatures=b"\x00"))
|
||||
|
||||
class PutIntoOthersQueueTransport(MockTransport):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
def __init__(self, name):
|
||||
super().__init__(name)
|
||||
self.other_mock_transport = None
|
||||
|
||||
def send_bytes(self, data):
|
||||
self.other_mock_transport.queue.put_nowait(data)
|
||||
|
||||
def transport_pair():
|
||||
t1 = PutIntoOthersQueueTransport()
|
||||
t2 = PutIntoOthersQueueTransport()
|
||||
def transport_pair(name1, name2):
|
||||
t1 = PutIntoOthersQueueTransport(name1)
|
||||
t2 = PutIntoOthersQueueTransport(name2)
|
||||
t1.other_mock_transport = t2
|
||||
t2.other_mock_transport = t1
|
||||
return t1, t2
|
||||
|
||||
class TestPeer(unittest.TestCase):
|
||||
@staticmethod
|
||||
def setUpClass():
|
||||
set_verbosity(True)
|
||||
|
||||
def setUp(self):
|
||||
self.alice_channel, self.bob_channel = create_test_channels()
|
||||
|
||||
def test_require_data_loss_protect(self):
|
||||
mock_lnworker = MockLNWorker(keypair(), keypair(), self.alice_channel, tx_queue=None)
|
||||
mock_transport = NoFeaturesTransport()
|
||||
mock_transport = NoFeaturesTransport('')
|
||||
p1 = Peer(mock_lnworker, b"\x00" * 33, mock_transport, request_initial_sync=False)
|
||||
mock_lnworker.peer = p1
|
||||
with self.assertRaises(LightningPeerConnectionClosed):
|
||||
@@ -170,7 +174,7 @@ class TestPeer(unittest.TestCase):
|
||||
|
||||
def prepare_peers(self):
|
||||
k1, k2 = keypair(), keypair()
|
||||
t1, t2 = transport_pair()
|
||||
t1, t2 = transport_pair(self.alice_channel.name, self.bob_channel.name)
|
||||
q1, q2 = asyncio.Queue(), asyncio.Queue()
|
||||
w1 = MockLNWorker(k1, k2, self.alice_channel, tx_queue=q1)
|
||||
w2 = MockLNWorker(k2, k1, self.bob_channel, tx_queue=q2)
|
||||
|
||||
Reference in New Issue
Block a user