Coverage report: 79%

Files Functions Classes

coverage.py v7.10.7, created at 2025-09-29 15:04 +0000

File function statements missing excluded coverage
src/polars_eval_metrics/__init__.py (no function) 7 0 0 100%
src/polars_eval_metrics/ard.py ARD.__init__ 13 1 0 92%
src/polars_eval_metrics/ard.py ARD._empty_frame 3 0 0 100%
src/polars_eval_metrics/ard.py ARD._extract_struct_fields 4 0 0 100%
src/polars_eval_metrics/ard.py ARD._validate_schema 4 1 0 75%
src/polars_eval_metrics/ard.py ARD.lazy 1 0 0 100%
src/polars_eval_metrics/ard.py ARD.collect 3 0 0 100%
src/polars_eval_metrics/ard.py ARD.__len__ 1 0 0 100%
src/polars_eval_metrics/ard.py ARD.shape 2 2 0 0%
src/polars_eval_metrics/ard.py ARD.columns 1 1 0 0%
src/polars_eval_metrics/ard.py ARD.schema 2 2 0 0%
src/polars_eval_metrics/ard.py ARD.__getitem__ 7 7 0 0%
src/polars_eval_metrics/ard.py ARD.iter_rows 1 1 0 0%
src/polars_eval_metrics/ard.py ARD.sort 1 1 0 0%
src/polars_eval_metrics/ard.py ARD._stat_value 20 10 0 50%
src/polars_eval_metrics/ard.py ARD._format_stat 18 5 0 72%
src/polars_eval_metrics/ard.py ARD.__repr__ 2 0 0 100%
src/polars_eval_metrics/ard.py ARD.with_empty_as_null 3 0 0 100%
src/polars_eval_metrics/ard.py ARD.with_empty_as_null._collapse 4 0 0 100%
src/polars_eval_metrics/ard.py ARD.with_null_as_empty 3 0 0 100%
src/polars_eval_metrics/ard.py ARD.with_null_as_empty._expand 4 0 0 100%
src/polars_eval_metrics/ard.py ARD.unnest 20 3 0 85%
src/polars_eval_metrics/ard.py ARD.to_wide 21 8 0 62%
src/polars_eval_metrics/ard.py ARD.to_long 32 2 0 94%
src/polars_eval_metrics/ard.py ARD.pivot 10 10 0 0%
src/polars_eval_metrics/ard.py ARD.get_stats 14 0 0 100%
src/polars_eval_metrics/ard.py ARD.summary 2 0 0 100%
src/polars_eval_metrics/ard.py ARD.describe 18 18 0 0%
src/polars_eval_metrics/ard.py (no function) 46 0 0 100%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.__post_init__ 6 0 0 100%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.build 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.key_to_label 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.label_to_key 1 1 0 0%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.label_order 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.keys 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.labels 1 1 0 0%
src/polars_eval_metrics/evaluation_context.py EstimateCatalog.label_for 1 1 0 0%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.__post_init__ 9 0 0 100%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.entries 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.labels 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.names 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.name_order 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.label_order 1 0 0 100%
src/polars_eval_metrics/evaluation_context.py MetricCatalog.contains 1 1 0 0%
src/polars_eval_metrics/evaluation_context.py (no function) 52 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine.__init__ 4 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_name 3 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_label 5 1 0 80%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_type 3 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_scope 3 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine.normalize_within_expr 9 1 0 89%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_within_expr 13 4 0 69%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_across_expr 9 2 0 78%
src/polars_eval_metrics/metric_define.py MetricDefine.validate_expressions 12 3 0 75%
src/polars_eval_metrics/metric_define.py MetricDefine.compile_expressions 8 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine._compile_custom_expressions 5 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine._resolve_within_expressions 3 0 0 100%
src/polars_eval_metrics/metric_define.py MetricDefine._resolve_across_expression 4 1 0 75%
src/polars_eval_metrics/metric_define.py MetricDefine._compile_builtin_expressions 14 4 0 71%
src/polars_eval_metrics/metric_define.py MetricDefine._ensure_metric_info 7 3 0 57%
src/polars_eval_metrics/metric_define.py MetricDefine.get_pl_chain 55 46 0 16%
src/polars_eval_metrics/metric_define.py MetricDefine.__str__ 35 13 0 63%
src/polars_eval_metrics/metric_define.py MetricDefine.__repr__ 1 0 0 100%
src/polars_eval_metrics/metric_define.py (no function) 57 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.__init__ 14 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.metrics 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.estimates 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._apply_base_filter 3 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._get_cache_key 5 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._get_cached_evaluation 8 2 0 75%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.clear_cache 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.filter 6 6 0 0%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_ard 7 1 0 86%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.evaluate 6 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._convert_to_ard 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.pivot_by_group 2 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator.pivot_by_model 2 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._resolve_metrics 8 1 0 88%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._resolve_estimates 7 1 0 86%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._vectorized_evaluate 5 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_without_subgroups 7 1 0 86%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_with_marginal_subgroups 6 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._prepare_subgroup_data_vectorized 4 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._prepare_long_format_data 7 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._add_error_columns_vectorized 2 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_metric_vectorized 14 1 0 93%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_across_sample_metric 5 1 0 80%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_within_entity_metric 5 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._evaluate_two_stage_metric 10 2 0 80%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._merge_group_columns 8 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._resolve_metric_info 5 1 0 80%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._aggregate_lazyframe 4 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._get_vectorized_grouping_columns 22 1 0 95%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._get_vectorized_grouping_columns.existing 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._apply_metric_scope_filter 2 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._metric_agg_expressions 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._get_entity_grouping_columns 5 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._add_metadata_vectorized 24 4 0 83%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._format_exception_message 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._fallback_metric_info 5 2 0 60%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._prepare_error_lazyframe 5 1 0 80%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._infer_value_kind_from_dtype 11 11 0 0%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._attach_entity_identifier 15 2 0 87%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._format_result 1 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._collect_long_dataframe 33 2 0 94%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._process_estimates 7 1 0 86%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._process_grouping 5 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._compute_subgroup_categories 22 2 0 91%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._collect_unique_subgroup_values 9 0 0 100%
src/polars_eval_metrics/metric_evaluator.py MetricEvaluator._validate_inputs 19 3 0 84%
src/polars_eval_metrics/metric_evaluator.py (no function) 78 0 0 100%
src/polars_eval_metrics/metric_helpers.py create_metric_from_dict 3 0 0 100%
src/polars_eval_metrics/metric_helpers.py create_metrics 8 0 0 100%
src/polars_eval_metrics/metric_helpers.py _validate_metric_config 10 1 0 90%
src/polars_eval_metrics/metric_helpers.py (no function) 7 0 2 100%
src/polars_eval_metrics/metric_registry.py MetricNotFoundError.__init__ 4 4 0 0%
src/polars_eval_metrics/metric_registry.py MetricRegistry._registry_store 5 2 0 60%
src/polars_eval_metrics/metric_registry.py MetricRegistry._registry_names 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry._registry_contains 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.register_error 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.get_error 4 1 0 75%
src/polars_eval_metrics/metric_registry.py MetricRegistry.generate_error_columns 3 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.list_errors 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.list_metrics 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.list_summaries 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.has_metric 1 1 0 0%
src/polars_eval_metrics/metric_registry.py MetricRegistry.has_summary 1 1 0 0%
src/polars_eval_metrics/metric_registry.py MetricRegistry.has_error 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.register_metric 10 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.register_metric.factory 4 1 0 75%
src/polars_eval_metrics/metric_registry.py MetricRegistry.register_summary 1 0 0 100%
src/polars_eval_metrics/metric_registry.py MetricRegistry.get_metric 8 2 0 75%
src/polars_eval_metrics/metric_registry.py MetricRegistry.get_summary 7 2 0 71%
src/polars_eval_metrics/metric_registry.py _error 1 0 0 100%
src/polars_eval_metrics/metric_registry.py _absolute_error 2 0 0 100%
src/polars_eval_metrics/metric_registry.py _squared_error 2 0 0 100%
src/polars_eval_metrics/metric_registry.py _percent_error 2 0 0 100%
src/polars_eval_metrics/metric_registry.py _absolute_percent_error 2 0 0 100%
src/polars_eval_metrics/metric_registry.py (no function) 62 0 0 100%
src/polars_eval_metrics/result_formatter.py convert_to_ard 11 0 0 100%
src/polars_eval_metrics/result_formatter.py build_group_pivot 60 4 0 93%
src/polars_eval_metrics/result_formatter.py build_group_pivot.metric_order 3 1 0 67%
src/polars_eval_metrics/result_formatter.py build_group_pivot.estimate_order 1 0 0 100%
src/polars_eval_metrics/result_formatter.py build_group_pivot.sort_default 4 0 0 100%
src/polars_eval_metrics/result_formatter.py build_group_pivot.sort_default.parse 3 0 0 100%
src/polars_eval_metrics/result_formatter.py build_model_pivot 55 3 0 95%
src/polars_eval_metrics/result_formatter.py build_model_pivot.metric_order 3 1 0 67%
src/polars_eval_metrics/result_formatter.py build_model_pivot.group_order 8 1 0 88%
src/polars_eval_metrics/result_formatter.py build_model_pivot.column_sort_key 9 1 0 89%
src/polars_eval_metrics/result_formatter.py _expr_groups 5 0 0 100%
src/polars_eval_metrics/result_formatter.py _expr_subgroups 6 0 0 100%
src/polars_eval_metrics/result_formatter.py _expr_estimate 7 1 0 86%
src/polars_eval_metrics/result_formatter.py _expr_metric_enum 2 0 0 100%
src/polars_eval_metrics/result_formatter.py _expr_label_enum 2 0 0 100%
src/polars_eval_metrics/result_formatter.py _expr_stat_struct 19 3 0 84%
src/polars_eval_metrics/result_formatter.py _expr_context_struct 11 1 0 91%
src/polars_eval_metrics/result_formatter.py _infer_value_kind_from_dtype 11 11 0 0%
src/polars_eval_metrics/result_formatter.py _pivot_frame 8 0 0 100%
src/polars_eval_metrics/result_formatter.py _merge_pivot_frames 34 13 0 62%
src/polars_eval_metrics/result_formatter.py _build_pivot_table 11 0 0 100%
src/polars_eval_metrics/result_formatter.py format_verbose_frame 22 0 0 100%
src/polars_eval_metrics/result_formatter.py format_compact_frame 6 0 0 100%
src/polars_eval_metrics/result_formatter.py _flatten_struct_columns 17 3 0 82%
src/polars_eval_metrics/result_formatter.py _flatten_struct_columns.drop_all_null 9 1 0 89%
src/polars_eval_metrics/result_formatter.py (no function) 23 0 0 100%
src/polars_eval_metrics/table_formatter.py pivot_to_gt 2 2 0 0%
src/polars_eval_metrics/table_formatter.py ard_to_wide 1 1 0 0%
src/polars_eval_metrics/table_formatter.py ard_to_gt 10 10 0 0%
src/polars_eval_metrics/table_formatter.py _gt_from_wide 5 5 0 0%
src/polars_eval_metrics/table_formatter.py _apply_gt_formatting 20 20 0 0%
src/polars_eval_metrics/table_formatter.py _pivot_stub_builder 3 3 0 0%
src/polars_eval_metrics/table_formatter.py _pivot_non_json_label 3 3 0 0%
src/polars_eval_metrics/table_formatter.py _ard_stub_builder 14 14 0 0%
src/polars_eval_metrics/table_formatter.py _ard_non_json_label 3 3 0 0%
src/polars_eval_metrics/table_formatter.py (no function) 16 0 0 100%
src/polars_eval_metrics/utils.py parse_enum_value 17 2 0 88%
src/polars_eval_metrics/utils.py clean_polars_expr_string 4 0 0 100%
src/polars_eval_metrics/utils.py format_polars_expr 6 1 0 83%
src/polars_eval_metrics/utils.py format_polars_expr_list 18 18 0 0%
src/polars_eval_metrics/utils.py parse_json_tokens 4 1 0 75%
src/polars_eval_metrics/utils.py parse_json_columns 6 6 0 0%
src/polars_eval_metrics/utils.py (no function) 11 0 0 100%
Total   1664 348 2 79%

No items found using the specified filter.