Coverage report: 95%

Files Functions Classes

coverage.py v7.6.10, created at 2025-08-17 12:33 -0700

File function statements missing excluded branches partial coverage
src/gentrie/__init__.py (no function) 6 0 0 0 0 100%
src/gentrie/exceptions.py TrieTypeError.__init__ 2 0 0 0 0 100%
src/gentrie/exceptions.py TrieKeyError.__init__ 2 0 0 0 0 100%
src/gentrie/exceptions.py TrieValueError.__init__ 2 0 0 0 0 100%
src/gentrie/exceptions.py (no function) 23 0 0 0 0 100%
src/gentrie/nodes.py Node.__init__ 5 0 0 0 0 100%
src/gentrie/nodes.py Node.__str__ 17 1 0 10 1 93%
src/gentrie/nodes.py Node._as_dict 1 0 0 0 0 100%
src/gentrie/nodes.py (no function) 9 0 2 0 0 100%
src/gentrie/protocols.py TrieKeyToken.__eq__ 0 0 1 0 0 100%
src/gentrie/protocols.py TrieKeyToken.__hash__ 0 0 1 0 0 100%
src/gentrie/protocols.py Hashable.__eq__ 0 0 1 0 0 100%
src/gentrie/protocols.py Hashable.__hash__ 0 0 1 0 0 100%
src/gentrie/protocols.py (no function) 8 0 0 0 0 100%
src/gentrie/trie/__init__.py (no function) 8 0 0 0 0 100%
src/gentrie/trie/access.py TrieAccessMixin.__contains__ 10 2 0 8 2 78%
src/gentrie/trie/access.py TrieAccessMixin.__getitem__ 14 0 0 12 0 100%
src/gentrie/trie/access.py TrieAccessMixin.get 4 4 0 0 0 0%
src/gentrie/trie/access.py (no function) 9 0 0 0 0 100%
src/gentrie/trie/base.py TrieBase.__init__ 9 0 0 0 0 100%
src/gentrie/trie/base.py TrieBase.clear 8 0 0 0 0 100%
src/gentrie/trie/base.py TrieBase.__str__ 10 0 0 4 1 93%
src/gentrie/trie/base.py TrieBase._as_dict 1 0 0 0 0 100%
src/gentrie/trie/base.py (no function) 11 0 2 0 0 100%
src/gentrie/trie/collection.py TrieCollectionMixin.__len__ 1 0 0 0 0 100%
src/gentrie/trie/collection.py TrieCollectionMixin.__iter__ 1 0 0 0 0 100%
src/gentrie/trie/collection.py TrieCollectionMixin.keys 1 0 0 0 0 100%
src/gentrie/trie/collection.py TrieCollectionMixin.values 1 0 0 0 0 100%
src/gentrie/trie/collection.py TrieCollectionMixin.items 1 0 0 0 0 100%
src/gentrie/trie/collection.py (no function) 9 0 0 0 0 100%
src/gentrie/trie/mutation.py TrieMutationMixin.__setitem__ 1 0 0 0 0 100%
src/gentrie/trie/mutation.py TrieMutationMixin.__delitem__ 1 1 0 0 0 0%
src/gentrie/trie/mutation.py (no function) 7 0 0 0 0 100%
src/gentrie/trie/removal.py TrieRemovalMixin.remove 30 2 0 12 0 95%
src/gentrie/trie/removal.py (no function) 8 0 0 0 0 100%
src/gentrie/trie/storage.py TrieStorageMixin.add 1 0 0 0 0 100%
src/gentrie/trie/storage.py TrieStorageMixin.update 1 0 0 0 0 100%
src/gentrie/trie/storage.py TrieStorageMixin._store_entry 21 0 0 10 0 100%
src/gentrie/trie/storage.py (no function) 11 0 0 0 0 100%
src/gentrie/trie/traversal.py TrieTraversalMixin.prefixes 11 0 0 10 0 100%
src/gentrie/trie/traversal.py TrieTraversalMixin.prefixed_by 20 0 0 16 0 100%
src/gentrie/trie/traversal.py (no function) 10 0 0 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.add 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.update 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.__getitem__ 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.__contains__ 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.get 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.remove 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.__delitem__ 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.prefixes 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.prefixed_by 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.__iter__ 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface.__len__ 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py TrieMixinsInterface._store_entry 0 0 1 0 0 100%
src/gentrie/trie/trie_mixins.py (no function) 14 0 0 0 0 100%
src/gentrie/types.py TrieId.__new__ 1 0 0 0 0 100%
src/gentrie/types.py TrieId.__str__ 1 0 0 0 0 100%
src/gentrie/types.py TrieId.__repr__ 0 0 2 0 0 100%
src/gentrie/types.py TrieEntry.__eq__ 3 1 0 2 1 60%
src/gentrie/types.py TrieEntry.__hash__ 1 0 0 0 0 100%
src/gentrie/types.py (no function) 21 0 1 0 0 100%
src/gentrie/validation.py is_triekeytoken 1 1 0 0 0 0%
src/gentrie/validation.py is_hashable 2 2 0 0 0 0%
src/gentrie/validation.py is_generalizedkey 9 0 0 8 0 100%
src/gentrie/validation.py (no function) 7 0 0 0 0 100%
test_plan.py build_pytest_args 6 1 0 2 1 75%
test_plan.py main 2 0 0 0 0 100%
test_plan.py (no function) 6 0 2 0 0 100%
tests/__init__.py (no function) 0 0 0 0 0 100%
tests/gentrie/__init__.py (no function) 0 0 0 0 0 100%
tests/gentrie/test_gentri.py MockDefaultTrieKeyToken.__init__ 2 0 0 0 0 100%
tests/gentrie/test_gentri.py MockContentAwareTrieKeyToken.__init__ 2 0 0 0 0 100%
tests/gentrie/test_gentri.py MockContentAwareTrieKeyToken.__eq__ 1 0 0 0 0 100%
tests/gentrie/test_gentri.py MockContentAwareTrieKeyToken.__hash__ 1 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_trieid_class 2 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_triekeytoken_supported_and_unsupported_builtin_types 8 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_generalizedkey_supported_and_unsupported_builtin_types 8 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_is_generalizedkey 2 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_create_trie 2 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_clear 11 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_add 6 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_update 6 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_add_user_defined_classes 15 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_prefixes 3 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_prefixed_by 3 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_deeply_nested_keys 7 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_unicode_and_bytes_keys 9 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_mutated_key_after_insertion 6 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_invalid_argument_types_for_prefixes 5 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_invalid_argument_types_for_prefixed_by 5 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_large_trie_performance 6 0 0 2 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_bytes_vs_str 6 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_empty_trie_iter 2 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_remove_nonexistent_id 6 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_remove_and_readd 7 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_remove 3 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_str 20 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_getitem 3 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_contains 17 0 0 2 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_keys 33 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_values 31 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_items 31 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_getitem_dunder 21 0 0 0 0 100%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_iter 27 1 0 6 1 94%
tests/gentrie/test_gentri.py TestGeneralizedTrie.test_bool 3 0 0 0 0 100%
tests/gentrie/test_gentri.py (no function) 89 0 2 0 0 100%
tests/testspec.py run_tests_list 2 0 0 2 0 100%
tests/testspec.py run_test 35 15 0 26 10 52%
tests/testspec.py (no function) 21 0 0 0 0 100%
Total   836 31 27 132 17 95%

No items found using the specified filter.