Coverage report: 97%

Files Functions Classes

coverage.py v7.11.3, created at 2025-12-01 18:06 +0000

File function statements missing excluded branches partial coverage
src/pypermission/__init__.py (no function) 12 0 0 0 0 100%
src/pypermission/db.py create_rbac_database_table 3 0 0 2 0 100%
src/pypermission/db.py set_sqlite_pragma 6 0 0 0 0 100%
src/pypermission/db.py (no function) 8 0 0 0 0 100%
src/pypermission/exc.py PyPermissionError.__init__ 1 0 0 0 0 100%
src/pypermission/exc.py (no function) 39 0 0 0 0 100%
src/pypermission/models.py Permission.__init__ 3 0 0 0 0 100%
src/pypermission/models.py Permission.__str__ 3 0 0 2 0 100%
src/pypermission/models.py Permission.__eq__ 3 0 0 2 0 100%
src/pypermission/models.py Permission.__ne__ 1 0 0 0 0 100%
src/pypermission/models.py Policy.__init__ 2 0 0 0 0 100%
src/pypermission/models.py Policy.__str__ 1 0 0 0 0 100%
src/pypermission/models.py Policy.__eq__ 3 0 0 2 0 100%
src/pypermission/models.py Policy.__ne__ 1 0 0 0 0 100%
src/pypermission/models.py FrozenClass.__setattr__ 3 0 0 2 0 100%
src/pypermission/models.py (no function) 40 0 0 2 1 98%
src/pypermission/service/__init__.py (no function) 0 0 0 0 0 100%
src/pypermission/service/role.py RoleService.create 7 0 0 0 0 100%
src/pypermission/service/role.py RoleService.delete 5 0 0 2 0 100%
src/pypermission/service/role.py RoleService.list 2 0 0 0 0 100%
src/pypermission/service/role.py RoleService.add_hierarchy 21 0 0 8 0 100%
src/pypermission/service/role.py RoleService.remove_hierarchy 13 0 0 8 0 100%
src/pypermission/service/role.py RoleService.parents 4 0 0 2 0 100%
src/pypermission/service/role.py RoleService.children 4 0 0 2 0 100%
src/pypermission/service/role.py RoleService.ascendants 7 0 0 2 0 100%
src/pypermission/service/role.py RoleService.descendants 7 0 0 2 0 100%
src/pypermission/service/role.py RoleService.subjects 9 0 0 4 0 100%
src/pypermission/service/role.py RoleService.grant_permission 8 0 0 0 0 100%
src/pypermission/service/role.py RoleService.revoke_permission 10 0 0 4 0 100%
src/pypermission/service/role.py RoleService.check_permission 11 0 0 4 0 100%
src/pypermission/service/role.py RoleService.assert_permission 2 0 0 2 0 100%
src/pypermission/service/role.py RoleService.permissions 6 0 0 4 1 90%
src/pypermission/service/role.py RoleService.policies 6 0 0 4 1 90%
src/pypermission/service/role.py RoleService.actions_on_resource 12 0 0 6 0 100%
src/pypermission/service/role.py _get_policy_orms_for_role 7 0 0 2 0 100%
src/pypermission/service/role.py (no function) 56 0 0 0 0 100%
src/pypermission/service/subject.py SubjectService.create 7 0 0 0 0 100%
src/pypermission/service/subject.py SubjectService.delete 5 0 0 2 0 100%
src/pypermission/service/subject.py SubjectService.list 2 0 0 0 0 100%
src/pypermission/service/subject.py SubjectService.assign_role 7 0 0 0 0 100%
src/pypermission/service/subject.py SubjectService.deassign_role 11 0 0 6 0 100%
src/pypermission/service/subject.py SubjectService.roles 10 0 0 4 0 100%
src/pypermission/service/subject.py SubjectService.check_permission 10 0 0 4 0 100%
src/pypermission/service/subject.py SubjectService.assert_permission 2 0 0 2 0 100%
src/pypermission/service/subject.py SubjectService.permissions 2 0 0 0 0 100%
src/pypermission/service/subject.py SubjectService.policies 2 0 0 0 0 100%
src/pypermission/service/subject.py SubjectService.actions_on_resource 11 0 0 4 0 100%
src/pypermission/service/subject.py _get_policy_orms_for_subject 8 0 0 2 0 100%
src/pypermission/service/subject.py (no function) 42 0 0 0 0 100%
src/pypermission/util/__init__.py (no function) 0 0 0 0 0 100%
src/pypermission/util/exception_handling.py process_subject_role_integrity_error 9 0 3 6 0 100%
src/pypermission/util/exception_handling.py process_policy_integrity_error 5 0 3 2 0 100%
src/pypermission/util/exception_handling.py (no function) 15 4 4 6 0 52%
src/pypermission/util/input_validation.py _raise_on_isinstance_str_fail 2 1 0 2 1 50%
src/pypermission/util/input_validation.py _raise_on_colon 2 0 0 2 0 100%
src/pypermission/util/input_validation.py _raise_on_bracket 4 0 0 4 0 100%
src/pypermission/util/input_validation.py _raise_on_empty 2 0 0 2 0 100%
src/pypermission/util/input_validation.py _raise_on_wildcard 2 0 0 2 0 100%
src/pypermission/util/input_validation.py _raise_on_lr_whitespaces 2 0 0 2 0 100%
src/pypermission/util/input_validation.py _raise_on_bracket_imbalance 14 0 0 12 0 100%
src/pypermission/util/input_validation.py assert_subject 7 0 0 0 0 100%
src/pypermission/util/input_validation.py assert_role 7 0 0 0 0 100%
src/pypermission/util/input_validation.py assert_parent_role 7 0 0 0 0 100%
src/pypermission/util/input_validation.py assert_child_role 7 0 0 0 0 100%
src/pypermission/util/input_validation.py assert_resource_type 7 0 0 0 0 100%
src/pypermission/util/input_validation.py assert_resource_id 5 0 0 0 0 100%
src/pypermission/util/input_validation.py assert_action 7 0 0 0 0 100%
src/pypermission/util/input_validation.py validate_rbac_parameters 9 1 0 2 1 82%
src/pypermission/util/input_validation.py validate_rbac_parameters.wrapper 5 0 0 2 0 100%
src/pypermission/util/input_validation.py (no function) 38 0 0 0 0 100%
src/pypermission/util/plot.py plot_factory 4 1 0 2 1 67%
src/pypermission/util/plot.py _build_plotly_figure 7 0 0 0 0 100%
src/pypermission/util/plot.py _build_nodes 4 0 0 0 0 100%
src/pypermission/util/plot.py _build_edges 17 2 0 8 2 84%
src/pypermission/util/plot.py _calc_node_positions 34 1 0 20 1 96%
src/pypermission/util/plot.py (no function) 10 0 0 0 0 100%
src/pypermission/util/role.py role_dag 13 0 0 4 0 100%
src/pypermission/util/role.py _get_roles_and_hierarchies 19 0 0 6 0 100%
src/pypermission/util/role.py _get_subjects_and_members 4 0 0 0 0 100%
src/pypermission/util/role.py _get_permissions_and_polices 4 0 0 0 0 100%
src/pypermission/util/role.py (no function) 9 0 0 0 0 100%
Total   726 10 10 176 9 97%

No items found using the specified filter.