Coverage report: 97%

Files Functions Classes

coverage.py v7.16.1, created at 2026-10-06 00:17 +0000

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
src/signalk_cli/__init__.py (no function)   100% 8 0 0   100% 0 0   100%
src/signalk_cli/__main__.py (no function)   0% 7 7 0   100% 0 0   0%
src/signalk_cli/_arrow.py _is_number   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py as_text   100% 5 0 0   100% 4 0   100%
src/signalk_cli/_arrow.py _epoch_us   100% 4 0 0   100% 2 0   100%
src/signalk_cli/_arrow.py infer_column   83% 6 1 0   75% 4 1   80%
src/signalk_cli/_arrow.py ArrowTable.__init__   83% 6 1 0   50% 2 1   75%
src/signalk_cli/_arrow.py ArrowTable.from_rows   100% 6 0 0   100% 4 0   100%
src/signalk_cli/_arrow.py ArrowTable.num_rows   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py ArrowTable.column_names   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py ArrowTable.__len__   0% 1 1 0   100% 0 0   0%
src/signalk_cli/_arrow.py ArrowTable.__repr__   0% 2 2 0   100% 0 0   0%
src/signalk_cli/_arrow.py ArrowTable.to_pydict   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py ArrowTable._batch   100% 3 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py ArrowTable.__arrow_c_schema__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py ArrowTable.__arrow_c_stream__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py write_feather   100% 6 0 0   100% 0 0   100%
src/signalk_cli/_arrow.py (no function)   100% 26 0 0   100% 0 0   100%
src/signalk_cli/_cli.py _ClickHandler.emit   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_cli.py host_option   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_cli.py bare_option   100% 1 0 0   100% 0 0   100%
src/signalk_cli/_cli.py stderr_ctx   100% 9 0 0   100% 0 0   100%
src/signalk_cli/_cli.py resolve_host   100% 17 0 0   100% 12 0   100%
src/signalk_cli/_cli.py (no function)   100% 14 0 0   100% 0 0   100%
src/signalk_cli/errors.py api_error   100% 6 0 0   100% 2 0   100%
src/signalk_cli/errors.py SignalKError.__init__   100% 2 0 0   100% 0 0   100%
src/signalk_cli/errors.py SignalKError.from_request   100% 3 0 0   100% 0 0   100%
src/signalk_cli/errors.py (no function)   100% 7 0 0   100% 0 0   100%
src/signalk_cli/history/__init__.py (no function)   100% 5 0 0   100% 0 0   100%
src/signalk_cli/history/__main__.py (no function)   0% 2 2 0   100% 0 0   0%
src/signalk_cli/history/_results.py _is_number   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/_results.py _cell   100% 2 0 0   100% 0 0   100%
src/signalk_cli/history/_results.py _paths_by_column   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/_results.py long_rows   93% 15 1 0   88% 8 1   91%
src/signalk_cli/history/_results.py _first_value   83% 6 1 0   67% 6 2   75%
src/signalk_cli/history/_results.py _array_col_names   100% 3 0 0   100% 2 0   100%
src/signalk_cli/history/_results.py wide_rows   95% 40 2 0   83% 24 4   91%
src/signalk_cli/history/_results.py _distinct_2dp   86% 7 1 0   83% 6 1   85%
src/signalk_cli/history/_results.py cardinality   95% 22 1 0   92% 12 1   94%
src/signalk_cli/history/_results.py (no function)   100% 16 0 0   100% 0 0   100%
src/signalk_cli/history/_time.py _has_date_parts   100% 2 0 0   100% 0 0   100%
src/signalk_cli/history/_time.py _duration_to_timedelta   83% 6 1 0   50% 2 1   75%
src/signalk_cli/history/_time.py normalise_duration   100% 21 0 0   100% 10 0   100%
src/signalk_cli/history/_time.py apply_time_default   100% 12 0 0   100% 4 0   100%
src/signalk_cli/history/_time.py _format_time   100% 5 0 0   100% 4 0   100%
src/signalk_cli/history/_time.py _format_duration   100% 6 0 0   100% 4 0   100%
src/signalk_cli/history/_time.py TimeRange.resolved   100% 3 0 0   100% 0 0   100%
src/signalk_cli/history/_time.py TimeRange.params   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/_time.py _params   100% 8 0 0   100% 6 0   100%
src/signalk_cli/history/_time.py (no function)   100% 21 0 0   100% 0 0   100%
src/signalk_cli/history/api.py build_path_specs   100% 21 0 0   100% 16 0   100%
src/signalk_cli/history/api.py _is_pattern   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py _compile   100% 7 0 0   100% 2 0   100%
src/signalk_cli/history/api.py match_paths   100% 9 0 0   100% 4 0   100%
src/signalk_cli/history/api.py HistoryResult.__init__   100% 2 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryResult.paths   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryResult.to_arrow   100% 5 0 0   100% 2 0   100%
src/signalk_cli/history/api.py HistoryResult.cardinality   0% 1 1 0   100% 0 0   0%
src/signalk_cli/history/api.py _cardinality_table   100% 7 0 0   100% 4 0   100%
src/signalk_cli/history/api.py HistoryClient.__init__   100% 9 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.__enter__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.__exit__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.close   100% 2 0 0   100% 2 0   100%
src/signalk_cli/history/api.py HistoryClient.fetch   100% 6 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient._get_json   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.providers   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.default_provider   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient._provider_cache_file   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.provider   100% 22 0 0   100% 8 0   100%
src/signalk_cli/history/api.py HistoryClient.request_params   100% 5 0 0   100% 2 0   100%
src/signalk_cli/history/api.py HistoryClient.contexts   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.paths   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.expand_paths   100% 4 0 0   100% 2 0   100%
src/signalk_cli/history/api.py HistoryClient.value_params   100% 7 0 0   100% 2 0   100%
src/signalk_cli/history/api.py HistoryClient.values   100% 2 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.query   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.cardinality   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/api.py HistoryClient.cardinality_rows   100% 6 0 0   100% 2 0   100%
src/signalk_cli/history/api.py (no function)   100% 51 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py _list_fmt_callback   88% 8 1 0   83% 6 1   86%
src/signalk_cli/history/cli.py _provider_options   100% 3 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py _time_options   100% 4 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py _client   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py _exit_on_error   100% 8 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py _echo_time   100% 2 0 0   100% 2 0   100%
src/signalk_cli/history/cli.py _summary   100% 2 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py cli   100% 0 0 0   100% 0 0   100%
src/signalk_cli/history/cli.py query   100% 71 0 0   100% 30 0   100%
src/signalk_cli/history/cli.py cardinality   100% 23 0 0   100% 8 0   100%
src/signalk_cli/history/cli.py list_paths   100% 17 0 0   100% 6 0   100%
src/signalk_cli/history/cli.py list_providers   100% 16 0 0   100% 6 0   100%
src/signalk_cli/history/cli.py list_contexts   100% 17 0 0   100% 6 0   100%
src/signalk_cli/history/cli.py (no function)   100% 80 0 0   100% 0 0   100%
src/signalk_cli/history/output.py _text   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/output.py write_csv   100% 7 0 0   100% 4 0   100%
src/signalk_cli/history/output.py write_json   100% 4 0 0   100% 0 0   100%
src/signalk_cli/history/output.py write_csv_wide   100% 8 0 0   75% 4 1   92%
src/signalk_cli/history/output.py write_json_wide   100% 4 0 0   100% 0 0   100%
src/signalk_cli/history/output.py cardinality_text   100% 1 0 0   100% 0 0   100%
src/signalk_cli/history/output.py (no function)   100% 11 0 0   100% 0 0   100%
src/signalk_cli/net.py get_cached_host   67% 6 2 0   100% 2 0   75%
src/signalk_cli/net.py save_cached_host   100% 5 0 0   100% 0 0   100%
src/signalk_cli/net.py discover_host   100% 12 0 0   100% 4 0   100%
src/signalk_cli/net.py discover_host._on_change   100% 10 0 0   100% 6 0   100%
src/signalk_cli/net.py normalise_host   100% 3 0 0   100% 2 0   100%
src/signalk_cli/net.py (no function)   85% 13 2 0   100% 0 0   85%
src/signalk_cli/stream/__init__.py (no function)   100% 4 0 0   100% 0 0   100%
src/signalk_cli/stream/__main__.py (no function)   0% 2 2 0   100% 0 0   0%
src/signalk_cli/stream/api.py to_ws_url   100% 3 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py build_subscribe_message   100% 9 0 0   100% 6 0   100%
src/signalk_cli/stream/api.py source_matches   100% 3 0 0   100% 2 0   100%
src/signalk_cli/stream/api.py _update_source   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py DeltaMessage.rows   100% 12 0 0   100% 8 0   100%
src/signalk_cli/stream/api.py DeltaMessage.matches_sources   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py rows_to_arrow   100% 6 0 0   100% 2 0   100%
src/signalk_cli/stream/api.py DeltaStream.__init__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py DeltaStream.__enter__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py DeltaStream.__exit__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py DeltaStream.close   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py DeltaStream.__iter__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py DeltaStream.messages   100% 18 0 0   100% 8 0   100%
src/signalk_cli/stream/api.py DeltaStream.rows   100% 2 0 0   100% 2 0   100%
src/signalk_cli/stream/api.py DeltaStream.collect   100% 2 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py StreamClient.__init__   100% 5 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py StreamClient.__enter__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py StreamClient.__exit__   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py StreamClient.close   100% 2 0 0   100% 2 0   100%
src/signalk_cli/stream/api.py StreamClient.open   100% 11 0 0   100% 2 0   100%
src/signalk_cli/stream/api.py StreamClient.collect   100% 2 0 0   100% 0 0   100%
src/signalk_cli/stream/api.py (no function)   100% 41 0 0   100% 0 0   100%
src/signalk_cli/stream/cli.py cli   100% 0 0 0   100% 0 0   100%
src/signalk_cli/stream/cli.py deltas   99% 72 1 0   100% 34 0   99%
src/signalk_cli/stream/cli.py (no function)   100% 32 0 0   100% 0 0   100%
src/signalk_cli/stream/output.py columns   100% 1 0 0   100% 0 0   100%
src/signalk_cli/stream/output.py _text_row   100% 5 0 0   100% 2 0   100%
src/signalk_cli/stream/output.py write_csv_header   100% 2 0 0   100% 0 0   100%
src/signalk_cli/stream/output.py write_csv_rows   100% 5 0 0   100% 2 0   100%
src/signalk_cli/stream/output.py write_json_rows   100% 6 0 0   100% 2 0   100%
src/signalk_cli/stream/output.py write_values_rows   100% 5 0 0   100% 2 0   100%
src/signalk_cli/stream/output.py (no function)   100% 14 0 0   100% 0 0   100%
Total     97% 1140 30 0   96% 324 14   97%

No items found using the specified filter.