Coverage report: 83.81%

Files Functions Classes

coverage.py v7.13.5, created at 2026-05-03 19:45 +0000

File function   statements missing excluded   coverage
src / invariant / __init__.py (no function)   12 2 0   83.33%
src / invariant / __main__.py (no function)   2 2 0   0.00%
src / invariant / cacheable.py is_cacheable   28 1 0   96.43%
src / invariant / cacheable.py (no function)   5 0 0   100.00%
src / invariant / cli.py _build_parser   10 10 0   0.00%
src / invariant / cli.py _read_graph_arg   3 3 0   0.00%
src / invariant / cli.py _load_input_document   6 6 0   0.00%
src / invariant / cli.py _load_context   6 6 0   0.00%
src / invariant / cli.py _parse_param_value   4 4 0   0.00%
src / invariant / cli.py _parse_param   4 4 0   0.00%
src / invariant / cli.py _load_params   1 1 0   0.00%
src / invariant / cli.py _external_deps   2 2 0   0.00%
src / invariant / cli.py _encode_result_context   1 1 0   0.00%
src / invariant / cli.py _select_output   9 9 0   0.00%
src / invariant / cli.py _execute_cli   11 11 0   0.00%
src / invariant / cli.py _jsonable_output   3 3 0   0.00%
src / invariant / cli.py _write_json_output   2 2 0   0.00%
src / invariant / cli.py _write_binary_output   13 13 0   0.00%
src / invariant / cli.py _write_output_file   9 9 0   0.00%
src / invariant / cli.py main   11 11 0   0.00%
src / invariant / cli.py (no function)   33 33 2   0.00%
src / invariant / executor.py Executor.__init__   3 0 0   100.00%
src / invariant / executor.py Executor.execute   2 0 0   100.00%
src / invariant / executor.py Executor._execute_graph   35 2 0   94.29%
src / invariant / executor.py Executor._build_manifest   6 1 0   83.33%
src / invariant / executor.py Executor._invoke_op   20 3 0   85.00%
src / invariant / executor.py (no function)   13 0 3   100.00%
src / invariant / expressions.py resolve_params   4 0 0   100.00%
src / invariant / expressions.py _resolve_value   15 0 0   100.00%
src / invariant / expressions.py _evaluate_expression   13 0 0   100.00%
src / invariant / expressions.py _evaluate_cel   26 0 0   100.00%
src / invariant / expressions.py _value_to_cel   20 1 0   95.00%
src / invariant / expressions.py _icacheable_to_cel_map   9 2 0   77.78%
src / invariant / expressions.py _cel_to_python   24 3 0   87.50%
src / invariant / expressions.py _decimal_function   18 4 0   77.78%
src / invariant / expressions.py _min_function   5 0 0   100.00%
src / invariant / expressions.py _max_function   5 0 0   100.00%
src / invariant / expressions.py _extract_comparison_value   12 1 0   91.67%
src / invariant / expressions.py (no function)   20 0 0   100.00%
src / invariant / graph.py GraphResolver.__init__   1 0 0   100.00%
src / invariant / graph.py GraphResolver.validate   13 0 0   100.00%
src / invariant / graph.py GraphResolver._has_cycle   12 0 0   100.00%
src / invariant / graph.py GraphResolver._has_cycle.dfs   14 1 0   92.86%
src / invariant / graph.py GraphResolver.topological_sort   23 0 0   100.00%
src / invariant / graph.py GraphResolver.resolve   2 0 0   100.00%
src / invariant / graph.py (no function)   11 0 2   100.00%
src / invariant / graph_serialization.py _encode_param_value   26 0 0   100.00%
src / invariant / graph_serialization.py _decode_param_value   25 1 0   96.00%
src / invariant / graph_serialization.py _decode_icacheable   28 8 0   71.43%
src / invariant / graph_serialization.py _encode_params   1 0 0   100.00%
src / invariant / graph_serialization.py _decode_params   1 0 0   100.00%
src / invariant / graph_serialization.py dump_value_to_jsonable   1 1 0   0.00%
src / invariant / graph_serialization.py load_value_from_jsonable   1 1 0   0.00%
src / invariant / graph_serialization.py _encode_vertex   6 0 0   100.00%
src / invariant / graph_serialization.py _decode_vertex   20 3 0   85.00%
src / invariant / graph_serialization.py _validate_node   18 5 0   72.22%
src / invariant / graph_serialization.py _validate_subgraph   19 6 0   68.42%
src / invariant / graph_serialization.py _validate_vertex_for_kind   14 7 0   50.00%
src / invariant / graph_serialization.py _encode_graph   1 0 0   100.00%
src / invariant / graph_serialization.py _decode_graph   6 1 0   83.33%
src / invariant / graph_serialization.py _validate_envelope   12 2 0   83.33%
src / invariant / graph_serialization.py dump_graph_to_dict   1 0 0   100.00%
src / invariant / graph_serialization.py dump_graph   1 0 0   100.00%
src / invariant / graph_serialization.py load_graph_from_dict   2 0 0   100.00%
src / invariant / graph_serialization.py load_graph   4 0 0   100.00%
src / invariant / graph_serialization.py dump_graph_output_to_dict   1 0 0   100.00%
src / invariant / graph_serialization.py load_graph_output_from_dict   10 3 0   70.00%
src / invariant / graph_serialization.py dump_graph_output_data_uri   3 0 0   100.00%
src / invariant / graph_serialization.py load_graph_output_data_uri   9 2 0   77.78%
src / invariant / graph_serialization.py (no function)   38 0 0   100.00%
src / invariant / hashing.py hash_value   27 0 0   100.00%
src / invariant / hashing.py hash_manifest   8 0 0   100.00%
src / invariant / hashing.py (no function)   7 0 0   100.00%
src / invariant / node.py _collect_refs   10 0 0   100.00%
src / invariant / node.py Node.__post_init__   7 0 0   100.00%
src / invariant / node.py Node._validate_refs   5 1 0   80.00%
src / invariant / node.py SubGraphNode.__post_init__   9 0 0   100.00%
src / invariant / node.py SubGraphNode._validate_refs   5 0 0   100.00%
src / invariant / node.py (no function)   21 0 0   100.00%
src / invariant / ops / __init__.py (no function)   3 0 0   100.00%
src / invariant / ops / poly.py poly_from_coefficients   6 1 0   83.33%
src / invariant / ops / poly.py poly_add   7 0 0   100.00%
src / invariant / ops / poly.py poly_multiply   6 0 0   100.00%
src / invariant / ops / poly.py poly_scale   2 2 0   0.00%
src / invariant / ops / poly.py poly_derivative   6 1 0   83.33%
src / invariant / ops / poly.py poly_evaluate   4 0 0   100.00%
src / invariant / ops / poly.py (no function)   9 0 0   100.00%
src / invariant / ops / stdlib.py identity   1 0 0   100.00%
src / invariant / ops / stdlib.py add   1 0 0   100.00%
src / invariant / ops / stdlib.py multiply   1 0 0   100.00%
src / invariant / ops / stdlib.py dict_get   5 0 0   100.00%
src / invariant / ops / stdlib.py make_dict   1 0 0   100.00%
src / invariant / ops / stdlib.py make_list   1 0 0   100.00%
src / invariant / ops / stdlib.py coalesce   6 0 0   100.00%
src / invariant / ops / stdlib.py (no function)   9 0 0   100.00%
src / invariant / params.py (no function)   7 0 0   100.00%
src / invariant / protocol.py ICacheable.get_stable_hash   1 1 0   0.00%
src / invariant / protocol.py ICacheable.to_stream   1 1 0   0.00%
src / invariant / protocol.py ICacheable.from_stream   1 1 0   0.00%
src / invariant / protocol.py IJsonRepresentable.to_json_value   1 1 0   0.00%
src / invariant / protocol.py IJsonRepresentable.from_json_value   1 1 0   0.00%
src / invariant / protocol.py (no function)   16 2 0   87.50%
src / invariant / registry.py OpRegistry.__new__   3 0 0   100.00%
src / invariant / registry.py OpRegistry.__init__   3 0 0   100.00%
src / invariant / registry.py OpRegistry.register   5 0 0   100.00%
src / invariant / registry.py OpRegistry.get   3 0 0   100.00%
src / invariant / registry.py OpRegistry.has   1 0 0   100.00%
src / invariant / registry.py OpRegistry.clear   1 0 0   100.00%
src / invariant / registry.py OpRegistry.register_package   18 3 0   83.33%
src / invariant / registry.py OpRegistry.auto_discover   15 6 0   60.00%
src / invariant / registry.py (no function)   15 0 0   100.00%
src / invariant / store / __init__.py (no function)   6 0 0   100.00%
src / invariant / store / base.py ArtifactStore.__init__   1 0 0   100.00%
src / invariant / store / base.py ArtifactStore.reset_stats   1 0 0   100.00%
src / invariant / store / base.py ArtifactStore.exists   1 1 0   0.00%
src / invariant / store / base.py ArtifactStore.get   1 1 0   0.00%
src / invariant / store / base.py ArtifactStore.put   1 1 0   0.00%
src / invariant / store / base.py (no function)   17 0 0   100.00%
src / invariant / store / chain.py ChainStore.__init__   3 0 0   100.00%
src / invariant / store / chain.py ChainStore.exists   8 0 0   100.00%
src / invariant / store / chain.py ChainStore.get   7 0 0   100.00%
src / invariant / store / chain.py ChainStore.put   3 0 0   100.00%
src / invariant / store / chain.py (no function)   9 0 0   100.00%
src / invariant / store / codec.py serialize   5 0 0   100.00%
src / invariant / store / codec.py deserialize   2 0 0   100.00%
src / invariant / store / codec.py _serialize_value   53 0 0   100.00%
src / invariant / store / codec.py _deserialize_value   85 0 0   100.00%
src / invariant / store / codec.py (no function)   10 0 0   100.00%
src / invariant / store / disk.py DiskStore.__init__   11 1 0   90.91%
src / invariant / store / disk.py DiskStore._make_key   3 0 0   100.00%
src / invariant / store / disk.py DiskStore.exists   6 0 0   100.00%
src / invariant / store / disk.py DiskStore.get   5 0 0   100.00%
src / invariant / store / disk.py DiskStore.put   6 1 0   83.33%
src / invariant / store / disk.py DiskStore.close   1 0 0   100.00%
src / invariant / store / disk.py DiskStore.__del__   4 2 0   50.00%
src / invariant / store / disk.py (no function)   14 0 0   100.00%
src / invariant / store / memory.py _create_cache   3 0 0   100.00%
src / invariant / store / memory.py MemoryStore.__init__   18 1 0   94.44%
src / invariant / store / memory.py MemoryStore._make_key   1 0 0   100.00%
src / invariant / store / memory.py MemoryStore.exists   6 0 0   100.00%
src / invariant / store / memory.py MemoryStore.get   4 0 0   100.00%
src / invariant / store / memory.py MemoryStore.put   5 1 0   80.00%
src / invariant / store / memory.py MemoryStore.clear   2 0 0   100.00%
src / invariant / store / memory.py (no function)   15 0 0   100.00%
src / invariant / store / null.py NullStore.exists   1 0 0   100.00%
src / invariant / store / null.py NullStore.get   1 0 0   100.00%
src / invariant / store / null.py NullStore.put   1 0 0   100.00%
src / invariant / store / null.py (no function)   6 0 0   100.00%
src / invariant / types.py Polynomial.__init__   6 0 0   100.00%
src / invariant / types.py Polynomial.get_stable_hash   2 0 0   100.00%
src / invariant / types.py Polynomial.to_stream   3 0 0   100.00%
src / invariant / types.py Polynomial.from_stream   6 0 0   100.00%
src / invariant / types.py Polynomial.__eq__   3 1 0   66.67%
src / invariant / types.py Polynomial.__repr__   0 0 2   100.00%
src / invariant / types.py Polynomial.to_json_value   1 0 0   100.00%
src / invariant / types.py Polynomial.from_json_value   3 0 0   100.00%
src / invariant / types.py (no function)   13 0 1   100.00%
Total     1371 222 10   83.81%

No items found using the specified filter.