Coverage report: 99%

Files Functions Classes

coverage.py v7.6.10, created at 2025-01-22 02:17 +0000

File function statements missing excluded branches partial coverage
sources/absence/__/__init__.py (no function) 3 0 0 0 0 100%
sources/absence/__/immutables.py repair_class_reproduction 4 0 1 0 0 100%
sources/absence/__/immutables.py _repair_cpython_class_closures 11 0 0 12 0 100%
sources/absence/__/immutables.py _repair_cpython_class_closures.try_repair_closure 7 0 1 2 0 100%
sources/absence/__/immutables.py ImmutableClass.__new__ 2 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableClass.__init__ 2 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableClass.__dir__ 3 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableClass.__delattr__ 2 0 0 2 0 100%
sources/absence/__/immutables.py ImmutableClass.__setattr__ 2 0 0 2 0 100%
sources/absence/__/immutables.py _immutable_class__new__ 12 0 0 6 0 100%
sources/absence/__/immutables.py _immutable_class__init__ 5 0 0 4 0 100%
sources/absence/__/immutables.py _immutable_class__delattr__ 2 0 0 2 0 100%
sources/absence/__/immutables.py _immutable_class__setattr__ 2 0 0 2 0 100%
sources/absence/__/immutables.py ConcealerExtension.__dir__ 1 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableModule.__delattr__ 1 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableModule.__setattr__ 1 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableObject.__delattr__ 1 0 0 0 0 100%
sources/absence/__/immutables.py ImmutableObject.__setattr__ 1 0 0 0 0 100%
sources/absence/__/immutables.py calculate_class_fqname 1 0 0 0 0 100%
sources/absence/__/immutables.py calculate_fqname 2 0 0 0 0 100%
sources/absence/__/immutables.py discover_public_attributes 1 0 0 0 0 100%
sources/absence/__/immutables.py reclassify_modules 18 0 0 16 0 100%
sources/absence/__/immutables.py (no function) 32 0 0 0 0 100%
sources/absence/__/imports.py (no function) 5 0 0 0 0 100%
sources/absence/__init__.py (no function) 8 0 0 0 0 100%
sources/absence/exceptions.py OperationValidityError.__init__ 1 0 0 0 0 100%
sources/absence/exceptions.py (no function) 6 0 0 0 0 100%
sources/absence/installers.py install 4 0 0 0 0 100%
sources/absence/installers.py (no function) 3 0 0 0 0 100%
sources/absence/objects.py AbsenceFactory.__init__ 3 0 0 0 0 100%
sources/absence/objects.py AbsenceFactory.__repr__ 3 0 0 2 0 100%
sources/absence/objects.py AbsenceFactory.__str__ 3 0 0 2 0 100%
sources/absence/objects.py AbsenceFactory.__reduce__ 2 0 0 0 0 100%
sources/absence/objects.py AbsentSingleton.__new__ 3 0 0 2 0 100%
sources/absence/objects.py AbsentSingleton.__repr__ 1 0 0 0 0 100%
sources/absence/objects.py AbsentSingleton.__str__ 1 0 0 0 0 100%
sources/absence/objects.py is_absence 1 0 0 0 0 100%
sources/absence/objects.py is_absent 1 0 0 0 0 100%
sources/absence/objects.py _typecheck_me 2 2 0 2 0 0%
sources/absence/objects.py (no function) 18 0 0 0 0 100%
tests/test_000_absence/__init__.py cache_import_module 7 0 0 4 0 100%
tests/test_000_absence/__init__.py _discover_module_names 3 0 0 0 0 100%
tests/test_000_absence/__init__.py (no function) 10 0 0 0 0 100%
tests/test_000_absence/test_000_package.py test_000_sanity 3 0 0 0 0 100%
tests/test_000_absence/test_000_package.py test_010_attribute_module_existence 4 0 0 0 0 100%
tests/test_000_absence/test_000_package.py test_011_attribute_module_classification 5 0 0 0 0 100%
tests/test_000_absence/test_000_package.py test_100_sanity 4 0 0 0 0 100%
tests/test_000_absence/test_000_package.py (no function) 10 0 0 0 0 100%
tests/test_000_absence/test_010_base.py test_100_exports 2 0 0 0 0 100%
tests/test_000_absence/test_010_base.py (no function) 4 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_100_concealer_instantiation 4 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_110_concealer_visibility 8 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_200_immutable_class_init 6 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_210_immutable_class_visibility 9 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_220_immutable_class_decorators 9 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_220_immutable_class_decorators.add_attr 2 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_221_immutable_class_replacement_super_method 12 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_221_immutable_class_replacement_super_method.Example.method_with_super 2 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_222_immutable_class_replacement_super_property 13 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_222_immutable_class_replacement_super_property.Example.prop_with_class 1 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_300_module_reclassification_by_name 10 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_301_module_reclassification_by_object 8 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_302_recursive_module_reclassification 18 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_303_module_reclassification_respects_package 16 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_304_module_reclassification_by_dict 15 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_305_module_reclassification_requires_package 8 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_306_module_attribute_operations 15 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_400_immutable_object_init 7 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_400_immutable_object_init.Example.__init__ 2 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_500_name_calculation 3 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py test_600_attribute_discovery 2 0 0 0 0 100%
tests/test_000_absence/test_011_immutables.py (no function) 30 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_100_singleton_identity 2 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_101_singleton_boolean_evaluation 3 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_102_singleton_string_representations 3 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_200_factory_instantiation 5 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_201_factory_boolean_evaluation 4 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_202_factory_default_strings 4 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_203_factory_custom_strings 4 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_204_factory_pickle 5 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_300_is_absent_predicate 5 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_301_is_absence_predicate 5 0 0 0 0 100%
tests/test_000_absence/test_100_objects.py test_900_docstring_sanity 5 0 0 2 0 100%
tests/test_000_absence/test_100_objects.py (no function) 14 0 0 0 0 100%
tests/test_000_absence/test_200_installers.py cleanup_builtins 4 0 0 4 0 100%
tests/test_000_absence/test_200_installers.py test_100_default_install 7 0 0 0 0 100%
tests/test_000_absence/test_200_installers.py test_101_custom_install 7 0 0 0 0 100%
tests/test_000_absence/test_200_installers.py test_102_partial_install 8 0 0 0 0 100%
tests/test_000_absence/test_200_installers.py (no function) 8 0 0 0 0 100%
Total   526 2 2 66 0 99%

No items found using the specified filter.