Skip to content

Commit 5b376aa

Browse files
committed
Reduce reliance on # pragma: no cover.
1 parent af91737 commit 5b376aa

File tree

8 files changed

+22
-29
lines changed

8 files changed

+22
-29
lines changed

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ source = [
5151

5252
[tool.coverage.report]
5353
exclude_lines = [
54+
"except ImportError:",
5455
"if self.debug:",
5556
"pragma: no cover",
5657
"raise AssertionError",

src/websockets/frames.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
try:
1515
from .speedups import apply_mask
16-
except ImportError: # pragma: no cover
16+
except ImportError:
1717
from .utils import apply_mask
1818

1919

src/websockets/legacy/framing.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
try:
1111
from ..speedups import apply_mask
12-
except ImportError: # pragma: no cover
12+
except ImportError:
1313
from ..utils import apply_mask
1414

1515

src/websockets/legacy/protocol.py

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -714,9 +714,7 @@ async def send(
714714
await self.write_frame(False, opcode, data)
715715

716716
# Other fragments.
717-
# coverage reports this code as not covered, but it is
718-
# exercised by tests - changing it breaks the tests!
719-
async for fragment in aiter_message: # pragma: no cover
717+
async for fragment in aiter_message:
720718
confirm_opcode, data = prepare_data(fragment)
721719
if confirm_opcode != opcode:
722720
raise TypeError("data contains inconsistent types")
@@ -1150,8 +1148,8 @@ async def read_data_frame(self, max_size: Optional[int]) -> Optional[Frame]:
11501148
if ping_id == frame.data:
11511149
self.latency = pong_timestamp - ping_timestamp
11521150
break
1153-
else: # pragma: no cover
1154-
assert False, "ping_id is in self.pings"
1151+
else:
1152+
raise AssertionError("solicited pong not found in pings")
11551153
# Remove acknowledged pings from self.pings.
11561154
for ping_id in ping_ids:
11571155
del self.pings[ping_id]
@@ -1320,9 +1318,7 @@ async def close_connection(self) -> None:
13201318
# A client should wait for a TCP close from the server.
13211319
if self.is_client and hasattr(self, "transfer_data_task"):
13221320
if await self.wait_for_connection_lost():
1323-
# Coverage marks this line as a partially executed branch.
1324-
# I suspect a bug in coverage. Ignore it for now.
1325-
return # pragma: no cover
1321+
return
13261322
if self.debug:
13271323
self.logger.debug("! timed out waiting for TCP close")
13281324

@@ -1340,9 +1336,7 @@ async def close_connection(self) -> None:
13401336
pass
13411337

13421338
if await self.wait_for_connection_lost():
1343-
# Coverage marks this line as a partially executed branch.
1344-
# I suspect a bug in coverage. Ignore it for now.
1345-
return # pragma: no cover
1339+
return
13461340
if self.debug:
13471341
self.logger.debug("! timed out waiting for TCP close")
13481342

@@ -1378,9 +1372,7 @@ async def close_transport(self) -> None:
13781372
self.transport.abort()
13791373

13801374
# connection_lost() is called quickly after aborting.
1381-
# Coverage marks this line as a partially executed branch.
1382-
# I suspect a bug in coverage. Ignore it for now.
1383-
await self.wait_for_connection_lost() # pragma: no cover
1375+
await self.wait_for_connection_lost()
13841376

13851377
async def wait_for_connection_lost(self) -> bool:
13861378
"""

src/websockets/legacy/server.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -840,7 +840,7 @@ def is_serving(self) -> bool:
840840
"""
841841
return self.server.is_serving()
842842

843-
async def start_serving(self) -> None:
843+
async def start_serving(self) -> None: # pragma: no cover
844844
"""
845845
See :meth:`asyncio.Server.start_serving`.
846846
@@ -852,9 +852,9 @@ async def start_serving(self) -> None:
852852
await server.start_serving()
853853
854854
"""
855-
await self.server.start_serving() # pragma: no cover
855+
await self.server.start_serving()
856856

857-
async def serve_forever(self) -> None:
857+
async def serve_forever(self) -> None: # pragma: no cover
858858
"""
859859
See :meth:`asyncio.Server.serve_forever`.
860860
@@ -870,7 +870,7 @@ async def serve_forever(self) -> None:
870870
instead of exiting a :func:`serve` context.
871871
872872
"""
873-
await self.server.serve_forever() # pragma: no cover
873+
await self.server.serve_forever()
874874

875875
@property
876876
def sockets(self) -> Iterable[socket.socket]:
@@ -880,17 +880,17 @@ def sockets(self) -> Iterable[socket.socket]:
880880
"""
881881
return self.server.sockets
882882

883-
async def __aenter__(self) -> WebSocketServer:
884-
return self # pragma: no cover
883+
async def __aenter__(self) -> WebSocketServer: # pragma: no cover
884+
return self
885885

886886
async def __aexit__(
887887
self,
888888
exc_type: Optional[Type[BaseException]],
889889
exc_value: Optional[BaseException],
890890
traceback: Optional[TracebackType],
891-
) -> None:
892-
self.close() # pragma: no cover
893-
await self.wait_closed() # pragma: no cover
891+
) -> None: # pragma: no cover
892+
self.close()
893+
await self.wait_closed()
894894

895895

896896
class Serve:

src/websockets/sync/compatibility.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
try:
55
from socket import create_server as socket_create_server
6-
except ImportError: # pragma: no cover
6+
except ImportError:
77
import socket
88

99
def socket_create_server(address, family=socket.AF_INET): # type: ignore

tests/legacy/test_client_server.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -406,11 +406,11 @@ def __init__(self, *args, **kwargs):
406406
self.used_for_write = False
407407
super().__init__(*args, **kwargs)
408408

409-
def recv(self, *args, **kwargs): # pragma: no cover
409+
def recv(self, *args, **kwargs):
410410
self.used_for_read = True
411411
return super().recv(*args, **kwargs)
412412

413-
def recv_into(self, *args, **kwargs): # pragma: no cover
413+
def recv_into(self, *args, **kwargs):
414414
self.used_for_read = True
415415
return super().recv_into(*args, **kwargs)
416416

tests/test_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def test_apply_mask_check_mask_length(self):
8282

8383
try:
8484
from websockets.speedups import apply_mask as c_apply_mask
85-
except ImportError: # pragma: no cover
85+
except ImportError:
8686
pass
8787
else:
8888

0 commit comments

Comments
 (0)