Merge pull request #343 from ralexstokes/add-pytest-xdist

Add pytest xdist and fix some issues w/ parallelizing tests
This commit is contained in:
Alex Stokes
2019-11-07 04:34:14 +09:00
committed by GitHub
7 changed files with 26 additions and 19 deletions

View File

@ -13,9 +13,8 @@ logger = logging.getLogger("libp2p.host.ping")
async def _handle_ping(stream: INetStream, peer_id: PeerID) -> bool:
"""
Return a boolean indicating if we expect more pings from the peer at ``peer_id``.
"""
"""Return a boolean indicating if we expect more pings from the peer at
``peer_id``."""
try:
payload = await asyncio.wait_for(stream.read(PING_LENGTH), RESP_TIMEOUT)
except asyncio.TimeoutError as error:
@ -40,10 +39,8 @@ async def _handle_ping(stream: INetStream, peer_id: PeerID) -> bool:
async def handle_ping(stream: INetStream) -> None:
"""
``handle_ping`` responds to incoming ping requests until one side
errors or closes the ``stream``.
"""
"""``handle_ping`` responds to incoming ping requests until one side errors
or closes the ``stream``."""
peer_id = stream.muxed_conn.peer_id
while True:

View File

@ -55,7 +55,7 @@ class KademliaServer:
def _create_protocol(self):
return self.protocol_class(self.node, self.storage, self.ksize)
async def listen(self, port, interface="0.0.0.0"):
async def listen(self, port=0, interface="0.0.0.0"):
"""
Start listening on the given port.
@ -65,8 +65,15 @@ class KademliaServer:
listen = loop.create_datagram_endpoint(
self._create_protocol, local_addr=(interface, port)
)
log.info("Node %i listening on %s:%i", self.node.xor_id, interface, port)
self.transport, self.protocol = await listen
socket = self.transport.get_extra_info("socket")
self.address = socket.getsockname()
log.info(
"Node %i listening on %s:%i",
self.node.xor_id,
self.address[0],
self.address[1],
)
# finally, schedule refreshing table
self.refresh_table()