============================= test session starts ==============================
platform linux -- Python 3.12.9, pytest-9.0.2, pluggy-1.6.0
rootdir: /home/agp/vault/nanocore
configfile: pytest.ini
plugins: cov-7.0.0, asyncio-1.3.0, anyio-4.12.1, hypothesis-6.150.2
asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function
collected 21 items

tests/test_cli.py .....................
ERROR: Coverage failure: total of 87 is less than fail-under=90
                                                                         [100%]

=============================== warnings summary ===============================
src/nanocore/cli.py:29
  /home/agp/vault/nanocore/src/nanocore/cli.py:29: DeprecationWarning: websockets.WebSocketClientProtocol is deprecated
    async def ws_listener(websocket: websockets.WebSocketClientProtocol):

.venv/lib/python3.12/site-packages/websockets/legacy/__init__.py:6
  /home/agp/vault/nanocore/.venv/lib/python3.12/site-packages/websockets/legacy/__init__.py:6: DeprecationWarning: websockets.legacy is deprecated; see https://websockets.readthedocs.io/en/stable/howto/upgrade.html for upgrade instructions
    warnings.warn(  # deprecated in 14.0 - 2024-11-09

src/nanocore/cli.py:52
  /home/agp/vault/nanocore/src/nanocore/cli.py:52: DeprecationWarning: websockets.WebSocketClientProtocol is deprecated
    async def heartbeat_loop(websocket: websockets.WebSocketClientProtocol):

src/nanocore/cli.py:82
  /home/agp/vault/nanocore/src/nanocore/cli.py:82: DeprecationWarning: websockets.WebSocketClientProtocol is deprecated
    async def shell_loop(websocket: websockets.WebSocketClientProtocol):

tests/test_cli.py::test_run_client_flow
  /home/agp/.local/share/uv/python/cpython-3.12.9-linux-x86_64-gnu/lib/python3.12/inspect.py:3081: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
    @classmethod
  Enable tracemalloc to get traceback where the object was allocated.
  See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
================================ tests coverage ================================
_______________ coverage: platform linux, python 3.12.9-final-0 ________________

Name                     Stmts   Miss  Cover   Missing
------------------------------------------------------
src/nanocore/cli.py        138     10    93%   43-44, 47-48, 62-64, 187-188, 194
src/nanocore/schema.py      28     12    57%   44-59
------------------------------------------------------
TOTAL                      166     22    87%
Coverage HTML written to dir htmlcov
FAIL Required test coverage of 90% not reached. Total coverage: 86.75%
======================== 21 passed, 5 warnings in 6.42s ========================
