Coverage report: 85%

Files Functions Classes

coverage.py v7.13.5, created at 2026-03-25 09:44 +0000

File function   statements missing excluded   coverage
genschema / __init__.py (no function)   4 0 0   100%
genschema / cli.py _build_parser   17 0 0   100%
genschema / cli.py main   82 32 0   61%
genschema / cli.py (no function)   13 1 0   92%
genschema / comparators / __init__.py (no function)   11 0 0   100%
genschema / comparators / delete_element.py DeleteElement.__init__   2 0 0   100%
genschema / comparators / delete_element.py DeleteElement.can_process   1 0 0   100%
genschema / comparators / delete_element.py DeleteElement.process   1 0 0   100%
genschema / comparators / delete_element.py (no function)   7 0 0   100%
genschema / comparators / empty.py EmptyComparator.__init__   2 0 0   100%
genschema / comparators / empty.py EmptyComparator.can_process   2 0 0   100%
genschema / comparators / empty.py EmptyComparator.process   15 1 0   93%
genschema / comparators / empty.py EmptyComparator.process.is_nonempty   6 1 0   83%
genschema / comparators / empty.py (no function)   6 0 0   100%
genschema / comparators / enum.py EnumComparator._extract_field_name   4 1 0   75%
genschema / comparators / enum.py EnumComparator._schema_type_matches   1 0 0   100%
genschema / comparators / enum.py EnumComparator._collect_schema_values   12 1 0   92%
genschema / comparators / enum.py EnumComparator._collect_json_values   6 0 0   100%
genschema / comparators / enum.py EnumComparator._has_blank_string_value   1 0 0   100%
genschema / comparators / enum.py EnumComparator._has_digit_only_string_value   1 0 0   100%
genschema / comparators / enum.py EnumComparator._has_float_like_string_value   1 0 0   100%
genschema / comparators / enum.py EnumComparator._has_schema_flag   4 0 0   100%
genschema / comparators / enum.py EnumComparator._first_schema_format   8 1 0   88%
genschema / comparators / enum.py EnumComparator._reject   4 0 0   100%
genschema / comparators / enum.py EnumComparator.can_process   12 0 0   100%
genschema / comparators / enum.py EnumComparator.process   25 0 0   100%
genschema / comparators / enum.py (no function)   30 0 0   100%
genschema / comparators / flag.py FlagMaker.can_process   1 1 0   0%
genschema / comparators / flag.py FlagMaker.process   1 1 0   0%
genschema / comparators / flag.py (no function)   5 0 0   100%
genschema / comparators / format.py FormatDetector.detect   5 0 0   100%
genschema / comparators / format.py FormatComparator.can_process   1 0 0   100%
genschema / comparators / format.py FormatComparator.process   28 1 0   96%
genschema / comparators / format.py (no function)   14 0 0   100%
genschema / comparators / no_additional_prop.py NoAdditionalProperties.can_process   1 0 0   100%
genschema / comparators / no_additional_prop.py NoAdditionalProperties.process   2 0 0   100%
genschema / comparators / no_additional_prop.py (no function)   6 0 0   100%
genschema / comparators / preserve_common_keywords.py PreserveCommonKeywordsComparator.can_process   1 0 0   100%
genschema / comparators / preserve_common_keywords.py PreserveCommonKeywordsComparator.process   16 2 0   88%
genschema / comparators / preserve_common_keywords.py (no function)   11 0 0   100%
genschema / comparators / required.py RequiredComparator.can_process   1 0 0   100%
genschema / comparators / required.py RequiredComparator.process   23 1 0   96%
genschema / comparators / required.py (no function)   6 0 0   100%
genschema / comparators / schema_version.py SchemaVersionComparator.__init__   1 0 0   100%
genschema / comparators / schema_version.py SchemaVersionComparator.can_process   1 0 0   100%
genschema / comparators / schema_version.py SchemaVersionComparator.process   1 0 0   100%
genschema / comparators / schema_version.py (no function)   6 0 0   100%
genschema / comparators / template.py Comparator.can_process   1 1 0   0%
genschema / comparators / template.py Comparator.process   1 1 0   0%
genschema / comparators / template.py (no function)   21 0 0   100%
genschema / comparators / type.py infer_json_type   15 0 0   100%
genschema / comparators / type.py infer_schema_type   11 0 0   100%
genschema / comparators / type.py _unique_keep_order   8 0 0   100%
genschema / comparators / type.py infer_schema_types   29 1 0   97%
genschema / comparators / type.py TypeComparator.can_process   1 0 0   100%
genschema / comparators / type.py TypeComparator.process   18 1 0   94%
genschema / comparators / type.py (no function)   10 0 0   100%
genschema / node.py SchemaNode.__init__   2 2 0   0%
genschema / node.py SchemaNode.as_dict   1 1 0   0%
genschema / node.py (no function)   10 10 0   0%
genschema / pipeline.py Converter.__init__   7 0 0   100%
genschema / pipeline.py Converter.add_schema   5 2 0   60%
genschema / pipeline.py Converter.add_json   5 2 0   60%
genschema / pipeline.py Converter.clear_data   3 3 0   0%
genschema / pipeline.py Converter.register   3 1 0   67%
genschema / pipeline.py Converter._collect_prop_names   9 0 0   100%
genschema / pipeline.py Converter._gather_property_candidates   9 0 0   100%
genschema / pipeline.py Converter._keys_matched_by_pattern   5 0 0   100%
genschema / pipeline.py Converter._split_array_ctx   63 17 0   73%
genschema / pipeline.py Converter._filter_ctx_by_ids   5 1 0   80%
genschema / pipeline.py Converter._run_level   36 0 0   100%
genschema / pipeline.py Converter._run_level.use_comp   8 0 0   100%
genschema / pipeline.py Converter._run_object   10 1 0   90%
genschema / pipeline.py Converter._run_pseudo_array   7 1 0   86%
genschema / pipeline.py Converter._run_array   5 0 0   100%
genschema / pipeline.py Converter.run   2 0 0   100%
genschema / pipeline.py (no function)   25 0 0   100%
genschema / postprocessing / __init__.py (no function)   2 0 0   100%
genschema / postprocessing / schema_references.py _default_similarity   6 2 0   67%
genschema / postprocessing / schema_references.py SchemaReferenceExtractionConfig.__post_init__   10 5 0   50%
genschema / postprocessing / schema_references.py SchemaReferenceExtractionConfig.normalized_ref_prefix   3 1 0   67%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor.process   25 3 0   88%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor.extract   1 1 0   0%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._collect_candidates   4 0 0   100%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._collect_candidates.walk   26 6 0   77%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._is_schema_candidate   6 2 0   67%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._type_signature   13 10 0   23%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._collect_structural_tokens   4 0 0   100%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._collect_structural_tokens.walk   42 12 0   71%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._count_total_keys   1 0 0   100%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._build_groups   35 1 0   97%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._merge_group   2 0 0   100%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._default_merge_strategy   8 0 0   100%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._select_groups   16 7 0   56%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._paths_overlap   2 2 0   0%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._replace_at_path   22 12 0   45%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._default_name_factory   13 3 0   77%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._normalize_definition_name   7 2 0   71%
genschema / postprocessing / schema_references.py SchemaReferencePostprocessor._ensure_unique_definition_name   6 2 0   67%
genschema / postprocessing / schema_references.py (no function)   90 0 0   100%
genschema / pseudo_arrays.py PseudoArrayHandlerBase.is_pseudo_array   1 1 0   0%
genschema / pseudo_arrays.py PseudoArrayHandler.is_pseudo_array   7 1 0   86%
genschema / pseudo_arrays.py (no function)   6 0 0   100%
Total     1102 162 0   85%

No items found using the specified filter.