| account/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| account/models.py |
UserToken.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/models.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| account/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| account/views.py |
LoginView.dispatch |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| account/views.py |
LoginView.gen_auth_data |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| account/views.py |
LoginView.get_auth_backends |
|
31% |
16 |
11 |
0 |
|
12% |
8 |
1 |
|
25% |
| account/views.py |
LoginView.get |
|
67% |
6 |
2 |
0 |
|
50% |
2 |
1 |
|
62% |
| account/views.py |
LoginView.post |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| account/views.py |
LoginView.redirect_to_next |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| account/views.py |
LogoutView.get |
|
0% |
9 |
9 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
SocialAuthBeginView.dispatch |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
SocialAuthBeginView.post |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| account/views.py |
ProfileView.get |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
UserConfigView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
UserConfigView.post |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| account/views.py |
ChangePasswordView.get |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| account/views.py |
ChangePasswordView.post |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| account/views.py |
BookmarkListView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
BookmarkListView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
NotificationListView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
NotificationListView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
SubscriptionListView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
SubscriptionListView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
UserTokenListView.get |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
UserTokenView.get |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| account/views.py |
UserTokenEditView.alter_object |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| account/views.py |
(no function) |
|
100% |
95 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/serializers.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/serializers_/circuits.py |
(no function) |
|
100% |
95 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/serializers_/nested.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/serializers_/providers.py |
(no function) |
|
100% |
29 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/urls.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/api/views.py |
CircuitsRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/api/views.py |
(no function) |
|
100% |
52 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/apps.py |
CircuitsConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/apps.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/choices.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/constants.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/filtersets.py |
ProviderFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
ProviderAccountFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
ProviderNetworkFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
CircuitFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
CircuitTerminationFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
CircuitGroupAssignmentFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
CircuitGroupAssignmentFilterSet.filter_circuit |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
CircuitGroupAssignmentFilterSet.filter_virtual_circuit |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
CircuitGroupAssignmentFilterSet.filter_provider |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
VirtualCircuitFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
VirtualCircuitTerminationFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/filtersets.py |
(no function) |
|
100% |
151 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/forms/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/forms/bulk_edit.py |
(no function) |
|
100% |
89 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/forms/bulk_import.py |
(no function) |
|
100% |
92 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/forms/filtersets.py |
(no function) |
|
100% |
105 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/forms/model_forms.py |
ProviderForm.__init__ |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| circuits/forms/model_forms.py |
(no function) |
|
100% |
98 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/graphql/enums.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/graphql/filter_mixins.py |
(no function) |
|
91% |
11 |
1 |
0 |
|
50% |
2 |
1 |
|
85% |
| circuits/graphql/filters.py |
(no function) |
|
95% |
102 |
5 |
0 |
|
50% |
2 |
1 |
|
94% |
| circuits/graphql/schema.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/graphql/types.py |
CircuitTerminationType.termination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/graphql/types.py |
CircuitGroupAssignmentType.member |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/graphql/types.py |
(no function) |
|
96% |
45 |
2 |
0 |
|
50% |
2 |
1 |
|
94% |
| circuits/models/__init__.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/models/base.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/models/circuits.py |
Circuit.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
Circuit.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
Circuit.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitGroup.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/models/circuits.py |
CircuitGroupAssignment.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitGroupAssignment.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.clean |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.save |
|
0% |
17 |
17 |
0 |
|
0% |
6 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.cache_related_objects |
|
0% |
18 |
18 |
0 |
|
0% |
12 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.parent_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
CircuitTermination.get_peer_termination |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/circuits.py |
(no function) |
|
100% |
99 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/models/providers.py |
Provider.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/providers.py |
ProviderAccount.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/models/providers.py |
ProviderNetwork.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/providers.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/models/virtual_circuits.py |
VirtualCircuit.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuit.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuit.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuit.provider |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.get_role_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.parent_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.peer_terminations |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
VirtualCircuitTermination.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| circuits/models/virtual_circuits.py |
(no function) |
|
100% |
56 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/search.py |
(no function) |
|
100% |
52 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/signals.py |
rebuild_cablepaths |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| circuits/signals.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/tables/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/tables/circuits.py |
(no function) |
|
100% |
67 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/tables/columns.py |
CommitRateColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/tables/columns.py |
CommitRateColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/tables/columns.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/tables/providers.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/tables/virtual_circuits.py |
(no function) |
|
100% |
40 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/ui/panels.py |
CircuitCircuitTerminationPanel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/ui/panels.py |
CircuitCircuitTerminationPanel._get_termination_nodes |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| circuits/ui/panels.py |
CircuitCircuitTerminationPanel.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/ui/panels.py |
CircuitGroupAssignmentsPanel.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/ui/panels.py |
(no function) |
|
100% |
83 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| circuits/views.py |
ProviderView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
ProviderAccountView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
ProviderNetworkView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
CircuitTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
CircuitBulkImportView.prep_related_object_data |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
CircuitGroupView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
VirtualCircuitTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
VirtualCircuitBulkImportView.prep_related_object_data |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| circuits/views.py |
(no function) |
|
100% |
430 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/schema.py |
NetBoxDjangoFilterExtension._get_model_field |
|
86% |
7 |
1 |
0 |
|
75% |
4 |
1 |
|
82% |
| core/api/schema.py |
FixTimeZoneSerializerField.map_serializer_field |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/schema.py |
ChoiceFieldFix.map_serializer_field |
|
88% |
8 |
1 |
0 |
|
75% |
4 |
1 |
|
83% |
| core/api/schema.py |
viewset_handles_bulk_create |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema.is_bulk_action |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema.get_operation_id |
|
75% |
12 |
3 |
0 |
|
62% |
8 |
3 |
|
70% |
| core/api/schema.py |
NetBoxAutoSchema.get_request_serializer |
|
88% |
16 |
2 |
0 |
|
75% |
12 |
3 |
|
82% |
| core/api/schema.py |
NetBoxAutoSchema.get_response_serializers |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema._get_bulk_error_responses |
|
100% |
9 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema._get_response_bodies |
|
100% |
5 |
0 |
0 |
|
75% |
4 |
1 |
|
89% |
| core/api/schema.py |
NetBoxAutoSchema._get_request_for_media_type |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema._get_serializer_name |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema.get_serializer_ref_name |
|
88% |
8 |
1 |
0 |
|
50% |
4 |
2 |
|
75% |
| core/api/schema.py |
NetBoxAutoSchema._rebuilds_as_writable |
|
73% |
11 |
3 |
0 |
|
75% |
4 |
1 |
|
73% |
| core/api/schema.py |
NetBoxAutoSchema.get_writable_class |
|
100% |
25 |
0 |
0 |
|
94% |
16 |
1 |
|
98% |
| core/api/schema.py |
NetBoxAutoSchema.get_override_parameters |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema.get_filter_backends |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema._get_paginator |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema._get_request_body |
|
52% |
21 |
10 |
0 |
|
42% |
12 |
3 |
|
48% |
| core/api/schema.py |
NetBoxAutoSchema.get_description |
|
100% |
6 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| core/api/schema.py |
NetBoxAutoSchema._generate_description |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
FixSerializedPKRelatedField.map_serializer_field |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/api/schema.py |
FixIntegerRangeSerializerSchema.map_serializer |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/schema.py |
FixWritableNestedSerializerAllowPK.map_serializer_field |
|
100% |
6 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| core/api/schema.py |
(no function) |
|
100% |
61 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/change_logging.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/data.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/jobs.py |
JobSerializer.get_object |
|
25% |
8 |
6 |
0 |
|
50% |
2 |
1 |
|
30% |
| core/api/serializers_/jobs.py |
(no function) |
|
100% |
22 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/object_types.py |
ObjectTypeSerializer.get_rest_api_endpoint |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| core/api/serializers_/object_types.py |
ObjectTypeSerializer.get_description |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/api/serializers_/object_types.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/tasks.py |
BackgroundTaskSerializer.get_args |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/tasks.py |
BackgroundTaskSerializer.get_kwargs |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/tasks.py |
BackgroundTaskSerializer.get_position |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/tasks.py |
BackgroundTaskSerializer.get_status |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/tasks.py |
BackgroundQueueSerializer.get_url |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/serializers_/tasks.py |
BackgroundWorkerSerializer.get_state |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/api/serializers_/tasks.py |
(no function) |
|
100% |
60 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/urls.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
CoreRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/api/views.py |
DataSourceViewSet.sync |
|
17% |
6 |
5 |
0 |
|
0% |
2 |
0 |
|
12% |
| core/api/views.py |
ObjectChangeViewSet.get_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
ObjectTypeViewSet.initial |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BaseRQViewSet.get_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/api/views.py |
BaseRQViewSet.list |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BaseRQViewSet.get_serializer |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BaseRQViewSet.get_serializer_class |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BaseRQViewSet.get_serializer_context |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundQueueViewSet.get_view_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundQueueViewSet.get_data |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundQueueViewSet.retrieve |
|
62% |
8 |
3 |
0 |
|
67% |
6 |
2 |
|
64% |
| core/api/views.py |
BackgroundWorkerViewSet.get_view_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundWorkerViewSet.get_data |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundWorkerViewSet.retrieve |
|
71% |
7 |
2 |
0 |
|
50% |
2 |
1 |
|
67% |
| core/api/views.py |
BackgroundTaskViewSet.get_view_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundTaskViewSet.get_data |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/api/views.py |
BackgroundTaskViewSet.get_task_from_id |
|
40% |
5 |
3 |
0 |
|
0% |
2 |
0 |
|
29% |
| core/api/views.py |
BackgroundTaskViewSet.retrieve |
|
33% |
3 |
2 |
0 |
|
100% |
0 |
0 |
|
33% |
| core/api/views.py |
BackgroundTaskViewSet.delete |
|
50% |
2 |
1 |
0 |
|
100% |
0 |
0 |
|
50% |
| core/api/views.py |
BackgroundTaskViewSet.requeue |
|
50% |
2 |
1 |
0 |
|
100% |
0 |
0 |
|
50% |
| core/api/views.py |
BackgroundTaskViewSet.enqueue |
|
50% |
2 |
1 |
0 |
|
100% |
0 |
0 |
|
50% |
| core/api/views.py |
BackgroundTaskViewSet.stop |
|
25% |
4 |
3 |
0 |
|
0% |
2 |
0 |
|
17% |
| core/api/views.py |
(no function) |
|
100% |
97 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/apps.py |
CoreConfig.ready |
|
79% |
19 |
4 |
0 |
|
50% |
2 |
1 |
|
76% |
| core/apps.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/checks.py |
check_duplicate_indexes |
|
70% |
10 |
3 |
0 |
|
50% |
8 |
2 |
|
61% |
| core/checks.py |
check_postgresql_version |
|
45% |
31 |
17 |
0 |
|
60% |
10 |
4 |
|
49% |
| core/checks.py |
check_redis_version |
|
67% |
9 |
3 |
0 |
|
50% |
2 |
1 |
|
64% |
| core/checks.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/choices.py |
(no function) |
|
100% |
39 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/constants.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/data_backends.py |
url_has_embedded_credentials |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/data_backends.py |
LocalBackend.fetch |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/data_backends.py |
GitBackend.init_config |
|
0% |
12 |
12 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/data_backends.py |
GitBackend.fetch |
|
0% |
18 |
18 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/data_backends.py |
S3Backend.init_config |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/data_backends.py |
S3Backend.fetch |
|
0% |
14 |
14 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/data_backends.py |
S3Backend._resolve_local_path |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/data_backends.py |
S3Backend._region_name |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/data_backends.py |
S3Backend._bucket_name |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/data_backends.py |
S3Backend._endpoint_url |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/data_backends.py |
S3Backend._remote_path |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/data_backends.py |
(no function) |
|
100% |
54 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/dataclasses.py |
JobLogEntry.from_logrecord |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/dataclasses.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/events.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/exceptions.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/filtersets.py |
DataSourceFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/filtersets.py |
DataFileFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/filtersets.py |
JobFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/filtersets.py |
ObjectTypeFilterSet.search |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/filtersets.py |
ObjectTypeFilterSet.filter_features |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/filtersets.py |
ObjectChangeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/filtersets.py |
ConfigRevisionFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/filtersets.py |
(no function) |
|
100% |
88 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/forms/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/forms/bulk_edit.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/forms/bulk_import.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/forms/filtersets.py |
(no function) |
|
100% |
53 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/forms/mixins.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/forms/model_forms.py |
DataSourceForm.fieldsets |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/forms/model_forms.py |
DataSourceForm.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/forms/model_forms.py |
DataSourceForm.save |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/forms/model_forms.py |
ManagedFileForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/forms/model_forms.py |
ConfigFormMetaclass.__new__ |
|
100% |
9 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| core/forms/model_forms.py |
ConfigRevisionForm.__init__ |
|
0% |
22 |
22 |
0 |
|
0% |
10 |
0 |
|
0% |
| core/forms/model_forms.py |
ConfigRevisionForm.save |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/forms/model_forms.py |
ConfigRevisionForm.render_json |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/forms/model_forms.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/graphql/enums.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/graphql/filter_mixins.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/graphql/filters.py |
(no function) |
|
96% |
52 |
2 |
0 |
|
50% |
2 |
1 |
|
94% |
| core/graphql/mixins.py |
ChangelogMixin.changelog |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/graphql/mixins.py |
(no function) |
|
93% |
15 |
1 |
0 |
|
50% |
2 |
1 |
|
88% |
| core/graphql/schema.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/graphql/types.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/jobs.py |
SyncDataSourceJob.enqueue |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/jobs.py |
SyncDataSourceJob.run |
|
0% |
12 |
12 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/jobs.py |
SystemHousekeepingJob.run |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/jobs.py |
SystemHousekeepingJob.send_census_report |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/jobs.py |
SystemHousekeepingJob.clear_expired_sessions |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/jobs.py |
SystemHousekeepingJob.prune_changelog |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/jobs.py |
SystemHousekeepingJob.delete_expired_jobs |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/jobs.py |
SystemHousekeepingJob.check_for_new_releases |
|
0% |
26 |
26 |
0 |
|
0% |
10 |
0 |
|
0% |
| core/jobs.py |
(no function) |
|
100% |
32 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/management/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/management/commands/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/management/commands/makemigrations.py |
Command.handle |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/management/commands/makemigrations.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/management/commands/nbshell.py |
color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/nbshell.py |
bright |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/nbshell.py |
get_models |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/nbshell.py |
get_constants |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/nbshell.py |
Command.add_arguments |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/nbshell.py |
Command._lsapps |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/management/commands/nbshell.py |
Command._lsmodels |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/management/commands/nbshell.py |
Command.get_namespace |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/management/commands/nbshell.py |
Command.get_banner_text |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/management/commands/nbshell.py |
Command.handle |
|
0% |
12 |
12 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/management/commands/nbshell.py |
(no function) |
|
0% |
26 |
26 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/rqworker.py |
Command.handle |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/management/commands/rqworker.py |
(no function) |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/syncdatasource.py |
Command.add_arguments |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/syncdatasource.py |
Command.handle |
|
0% |
22 |
22 |
0 |
|
0% |
12 |
0 |
|
0% |
| core/management/commands/syncdatasource.py |
(no function) |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/upgrade.py |
_docs_source_root |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/management/commands/upgrade.py |
Command.add_arguments |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/management/commands/upgrade.py |
Command.handle |
|
0% |
35 |
35 |
0 |
|
0% |
18 |
0 |
|
0% |
| core/management/commands/upgrade.py |
(no function) |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/change_logging.py |
ObjectChange.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/change_logging.py |
ObjectChange.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/change_logging.py |
ObjectChange.save |
|
80% |
5 |
1 |
0 |
|
50% |
4 |
2 |
|
67% |
| core/models/change_logging.py |
ObjectChange.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/change_logging.py |
ObjectChange.get_action_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/change_logging.py |
ObjectChange.has_changes |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/change_logging.py |
ObjectChange.diff_exclude_fields |
|
85% |
13 |
2 |
0 |
|
62% |
8 |
3 |
|
76% |
| core/models/change_logging.py |
ObjectChange.get_clean_data |
|
100% |
6 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| core/models/change_logging.py |
ObjectChange.prechange_data_clean |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/change_logging.py |
ObjectChange.postchange_data_clean |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/change_logging.py |
ObjectChange.diff |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/models/change_logging.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/config.py |
ConfigRevision.__str__ |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/models/config.py |
ConfigRevision.__getattr__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/config.py |
ConfigRevision.get_absolute_url |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/config.py |
ConfigRevision.activate |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/config.py |
ConfigRevision.is_active |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/config.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/data.py |
DataSource.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.get_type_display |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/data.py |
DataSource.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.url_scheme |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.backend_class |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.ready_for_sync |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/models/data.py |
DataSource.save |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/models/data.py |
DataSource.to_objectchange |
|
0% |
15 |
15 |
0 |
|
0% |
12 |
0 |
|
0% |
| core/models/data.py |
DataSource.get_backend |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataSource.sync |
|
0% |
41 |
41 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/models/data.py |
DataSource._walk |
|
0% |
12 |
12 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/models/data.py |
DataSource._ignore |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/models/data.py |
DataFile.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataFile.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/data.py |
DataFile.data_as_string |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/data.py |
DataFile.get_data |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/data.py |
DataFile.refresh_from_disk |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/data.py |
(no function) |
|
100% |
87 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/files.py |
ManagedFile.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/files.py |
ManagedFile.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/files.py |
ManagedFile.full_path |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/files.py |
ManagedFile._resolve_root_path |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/files.py |
ManagedFile.sync_data |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/files.py |
ManagedFile.storage |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/files.py |
ManagedFile.clean |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| core/models/files.py |
ManagedFile.delete |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/files.py |
(no function) |
|
100% |
38 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/jobs.py |
Job.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/jobs.py |
Job.get_absolute_url |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/models/jobs.py |
Job.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/jobs.py |
Job.get_event_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/jobs.py |
Job.clean |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/models/jobs.py |
Job.duration |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/models/jobs.py |
Job.delete |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/jobs.py |
Job.start |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/models/jobs.py |
Job.terminate |
|
0% |
13 |
13 |
0 |
|
0% |
10 |
0 |
|
0% |
| core/models/jobs.py |
Job.log |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/jobs.py |
Job.enqueue |
|
70% |
20 |
6 |
0 |
|
50% |
8 |
4 |
|
64% |
| core/models/jobs.py |
(no function) |
|
100% |
67 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/object_types.py |
ObjectTypeQuerySet.create |
|
100% |
6 |
0 |
0 |
|
50% |
2 |
1 |
|
88% |
| core/models/object_types.py |
ObjectTypeManager.get_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/object_types.py |
ObjectTypeManager.get_by_natural_key |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/object_types.py |
ObjectTypeManager.get_for_id |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/models/object_types.py |
ObjectTypeManager._get_opts |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| core/models/object_types.py |
ObjectTypeManager.get_for_model |
|
76% |
21 |
5 |
0 |
|
92% |
12 |
1 |
|
82% |
| core/models/object_types.py |
ObjectTypeManager.get_for_models |
|
0% |
19 |
19 |
0 |
|
0% |
12 |
0 |
|
0% |
| core/models/object_types.py |
ObjectTypeManager.public |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/object_types.py |
ObjectTypeManager.with_feature |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/models/object_types.py |
ObjectType.app_labeled_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/models/object_types.py |
ObjectType.app_verbose_name |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/models/object_types.py |
ObjectType.model_verbose_name |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/models/object_types.py |
ObjectType.model_verbose_name_plural |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/models/object_types.py |
ObjectType.is_plugin_model |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| core/models/object_types.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/object_actions.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/plugins.py |
get_local_plugins |
|
0% |
24 |
24 |
0 |
|
0% |
12 |
0 |
|
0% |
| core/plugins.py |
get_catalog_plugins |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/plugins.py |
get_catalog_plugins.get_pages |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/plugins.py |
get_catalog_plugins.make_plugin_dict |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/plugins.py |
(no function) |
|
100% |
54 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/querysets.py |
ObjectChangeQuerySet.valid_models |
|
67% |
6 |
2 |
0 |
|
100% |
0 |
0 |
|
67% |
| core/querysets.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/search.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/signals.py |
update_object_types |
|
73% |
11 |
3 |
0 |
|
100% |
2 |
0 |
|
77% |
| core/signals.py |
handle_changed_object |
|
81% |
37 |
7 |
0 |
|
79% |
24 |
5 |
|
80% |
| core/signals.py |
handle_deleted_object |
|
77% |
44 |
10 |
0 |
|
73% |
26 |
3 |
|
76% |
| core/signals.py |
clear_signal_history |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/signals.py |
clear_events_queue |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/signals.py |
enqueue_sync_job |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/signals.py |
auto_sync |
|
0% |
35 |
35 |
0 |
|
0% |
14 |
0 |
|
0% |
| core/signals.py |
update_config |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/signals.py |
(no function) |
|
100% |
52 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/change_logging.py |
(no function) |
|
100% |
20 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/columns.py |
BackendTypeColumn.render |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/tables/columns.py |
BackendTypeColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/columns.py |
BadgeColumn.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/columns.py |
BadgeColumn.render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/columns.py |
BadgeColumn.value |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/columns.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/config.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/data.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/jobs.py |
JobTable.render_log_entries |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/jobs.py |
JobTable.render_execution_time |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/jobs.py |
JobTable.value_execution_time |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/jobs.py |
JobLogEntryTable.render_message |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/tables/jobs.py |
(no function) |
|
100% |
39 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/plugins.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/tasks.py |
BackgroundTaskTable.render_callable |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/tables/tasks.py |
(no function) |
|
100% |
45 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/tables/template_code.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/ui/panels.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/utils.py |
get_rq_jobs |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core/utils.py |
get_rq_jobs_from_status |
|
0% |
18 |
18 |
0 |
|
0% |
8 |
0 |
|
0% |
| core/utils.py |
delete_rq_job |
|
56% |
9 |
4 |
0 |
|
100% |
0 |
0 |
|
56% |
| core/utils.py |
requeue_rq_job |
|
62% |
8 |
3 |
0 |
|
100% |
0 |
0 |
|
62% |
| core/utils.py |
enqueue_rq_job |
|
30% |
20 |
14 |
0 |
|
0% |
6 |
0 |
|
23% |
| core/utils.py |
stop_rq_job |
|
62% |
8 |
3 |
0 |
|
100% |
0 |
0 |
|
62% |
| core/utils.py |
get_db_schema |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/utils.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core/views.py |
DataSourceView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
DataSourceSyncView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
DataSourceSyncView.get |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
DataSourceSyncView.post |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
JobLogView.get_table |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
JobLogView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
JobLogView.get |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
ObjectChangeListView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
ObjectChangeView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
ObjectChangeView.get_extra_context |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/views.py |
ConfigRevisionView.get_extra_context |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/views.py |
ConfigRevisionRestoreView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
ConfigRevisionRestoreView.get |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
ConfigRevisionRestoreView.post |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
BaseRQView.test_func |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BackgroundQueueListView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BackgroundTaskListView.get_table_data |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
BackgroundTaskListView.get |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
BackgroundTaskView.get |
|
0% |
12 |
12 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BackgroundTaskDeleteView.get |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
BackgroundTaskDeleteView.post |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
BackgroundTaskRequeueView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BackgroundTaskEnqueueView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BackgroundTaskStopView.get |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
WorkerListView.get_table_data |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
WorkerListView.get |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/views.py |
WorkerView.get |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
SystemView.test_func |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
SystemView._get_stats |
|
0% |
13 |
13 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
SystemView._get_object_counts |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/views.py |
SystemView.get |
|
0% |
17 |
17 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/views.py |
SystemDBSchemaView.test_func |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
SystemDBSchemaView._get_db_schema_groups |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| core/views.py |
SystemDBSchemaView.get |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BasePluginView.test_func |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| core/views.py |
BasePluginView.get_cached_plugins |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/views.py |
PluginListView.get |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| core/views.py |
PluginView.get |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| core/views.py |
(no function) |
|
100% |
236 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/exceptions.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/base.py |
ConnectedEndpointsSerializer.get_connected_endpoints_type |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/api/serializers_/base.py |
ConnectedEndpointsSerializer.get_connected_endpoints |
|
40% |
5 |
3 |
0 |
|
50% |
2 |
1 |
|
43% |
| dcim/api/serializers_/base.py |
ConnectedEndpointsSerializer.get_connected_endpoints_reachable |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/api/serializers_/base.py |
PortSerializer._mapper |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/api/serializers_/base.py |
PortSerializer._reconcile_mappings |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/api/serializers_/base.py |
PortSerializer.create |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/api/serializers_/base.py |
PortSerializer.update |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/api/serializers_/base.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/cables.py |
CablePathSerializer.get_path |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/api/serializers_/cables.py |
CabledObjectSerializer.get_link_peers_type |
|
40% |
5 |
3 |
0 |
|
25% |
4 |
1 |
|
33% |
| dcim/api/serializers_/cables.py |
CabledObjectSerializer.get_link_peers |
|
40% |
5 |
3 |
0 |
|
50% |
2 |
1 |
|
43% |
| dcim/api/serializers_/cables.py |
CabledObjectSerializer.get__occupied |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/cables.py |
(no function) |
|
100% |
60 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/cooling.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/device_components.py |
InterfaceSerializer.validate |
|
68% |
41 |
13 |
0 |
|
46% |
26 |
10 |
|
60% |
| dcim/api/serializers_/device_components.py |
(no function) |
|
100% |
183 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/devices.py |
DeviceSerializer.get_parent_device |
|
50% |
8 |
4 |
0 |
|
100% |
0 |
0 |
|
50% |
| dcim/api/serializers_/devices.py |
DeviceSerializer.get_config_context |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/devices.py |
ModuleSerializer.validate |
|
0% |
43 |
43 |
0 |
|
0% |
26 |
0 |
|
0% |
| dcim/api/serializers_/devices.py |
ModuleSerializer.create |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/api/serializers_/devices.py |
(no function) |
|
100% |
100 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/devicetype_components.py |
(no function) |
|
100% |
141 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/devicetypes.py |
(no function) |
|
100% |
72 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/manufacturers.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/mixins.py |
MACAddressShortcutMixin._validate_no_mac_conflict |
|
20% |
10 |
8 |
0 |
|
25% |
4 |
1 |
|
21% |
| dcim/api/serializers_/mixins.py |
MACAddressShortcutMixin._check_add_mac_permission |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/api/serializers_/mixins.py |
MACAddressShortcutMixin.create |
|
75% |
8 |
2 |
0 |
|
50% |
4 |
2 |
|
67% |
| dcim/api/serializers_/mixins.py |
MACAddressShortcutMixin.update |
|
75% |
8 |
2 |
0 |
|
50% |
4 |
2 |
|
67% |
| dcim/api/serializers_/mixins.py |
MACAddressShortcutMixin._set_primary_mac |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/api/serializers_/mixins.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/nested.py |
(no function) |
|
100% |
66 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/platforms.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/power.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/racks.py |
RackReservationSerializer.get_unit_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/api/serializers_/racks.py |
(no function) |
|
100% |
81 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/rackunits.py |
RackUnitSerializer.get_display |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/api/serializers_/rackunits.py |
RackUnitSerializer.get_description |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/api/serializers_/rackunits.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/roles.py |
(no function) |
|
100% |
22 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/sites.py |
(no function) |
|
100% |
56 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/serializers_/virtualchassis.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/urls.py |
(no function) |
|
100% |
60 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/views.py |
DCIMRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/api/views.py |
PathEndpointMixin.trace |
|
24% |
21 |
16 |
0 |
|
20% |
10 |
2 |
|
23% |
| dcim/api/views.py |
PassThroughPortMixin.paths |
|
25% |
4 |
3 |
0 |
|
100% |
0 |
0 |
|
25% |
| dcim/api/views.py |
RackViewSet.elevation |
|
4% |
23 |
22 |
0 |
|
0% |
10 |
0 |
|
3% |
| dcim/api/views.py |
InterfaceViewSet.get_bulk_destroy_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/views.py |
ConnectedDeviceViewSet.get_view_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/api/views.py |
ConnectedDeviceViewSet.list |
|
45% |
11 |
6 |
0 |
|
50% |
4 |
0 |
|
47% |
| dcim/api/views.py |
(no function) |
|
100% |
258 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/apps.py |
DCIMConfig.ready |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/apps.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/base_filtersets.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/cable_profiles.py |
BaseCableProfile.clean |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/cable_profiles.py |
BaseCableProfile.get_mapped_position |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/cable_profiles.py |
BaseCableProfile._get_peer_lookup_key |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/cable_profiles.py |
BaseCableProfile.get_peer_termination |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/cable_profiles.py |
BaseCableProfile.get_peer_terminations |
|
0% |
35 |
35 |
0 |
|
0% |
20 |
0 |
|
0% |
| dcim/cable_profiles.py |
BaseCableProfile.get_position_list |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/cable_profiles.py |
Breakout2C4Px8C1PShuffleCableProfile.get_mapped_position |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/cable_profiles.py |
(no function) |
|
0% |
105 |
105 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/choices.py |
(no function) |
|
100% |
850 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/constants.py |
(no function) |
|
100% |
32 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/exceptions.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
MACAddressField.python_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/fields.py |
MACAddressField.from_db_value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/fields.py |
MACAddressField.get_internal_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
MACAddressField.to_python |
|
88% |
8 |
1 |
0 |
|
50% |
4 |
2 |
|
75% |
| dcim/fields.py |
MACAddressField.db_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
MACAddressField.get_prep_value |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| dcim/fields.py |
WWNField.python_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/fields.py |
WWNField.from_db_value |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
WWNField.get_internal_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
WWNField.to_python |
|
33% |
6 |
4 |
0 |
|
50% |
2 |
1 |
|
38% |
| dcim/fields.py |
WWNField.db_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
WWNField.get_prep_value |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/fields.py |
PathField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/fields.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
SiteFilterSet.search |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
LocationFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
RackTypeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
RackFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
RackReservationFilterSet.filter_queryset |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
RackReservationFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._has_front_image |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._has_rear_image |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._console_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._console_server_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._power_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._power_outlets |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._interfaces |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._pass_through_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._module_bays |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._device_bays |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeFilterSet._inventory_items |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleBayTypeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeProfileFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeFilterSet._console_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeFilterSet._console_server_ports |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
ModuleTypeFilterSet._power_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeFilterSet._power_outlets |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
ModuleTypeFilterSet._interfaces |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeFilterSet._pass_through_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleTypeFilterSet._module_bays |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceTypeComponentFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
InventoryItemTemplateFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
PlatformFilterSet.get_for_device_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet.search |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._has_primary_ip |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._has_oob_ip |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._virtual_chassis_member |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._console_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._console_server_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._power_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._power_outlets |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._interfaces |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._pass_through_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._module_bays |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._device_bays |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceFilterSet._has_virtual_device_context |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
VirtualDeviceContextFilterSet.search |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
VirtualDeviceContextFilterSet._has_primary_ip |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
ModuleFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
DeviceComponentFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CabledObjectFilterSet.filter_occupied |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/filtersets.py |
PathEndpointFilterSet.filter_connected |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
MACAddressFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
MACAddressFilterSet.filter_device |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/filtersets.py |
MACAddressFilterSet.filter_virtual_machine |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/filtersets.py |
MACAddressFilterSet.filter_assigned |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| dcim/filtersets.py |
MACAddressFilterSet.filter_primary |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CommonInterfaceFilterSet.filter_vlan_id |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CommonInterfaceFilterSet.filter_vlan |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
InterfaceFilterSet.filter_virtual_chassis_member_or_master |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
InterfaceFilterSet.filter_virtual_chassis_member |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
InterfaceFilterSet.filter_kind |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
InterfaceFilterSet.filter_occupied |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
InventoryItemFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
VirtualChassisFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CableBundleFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_termination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_cable_end |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_cable_end_a |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_cable_end_b |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet._unterminated |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_termination_object |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_consoleport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_consoleserverport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_powerport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_poweroutlet |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_interface |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_frontport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_rearport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_powerfeed |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableFilterSet.filter_by_circuittermination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_termination_object |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_consoleport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_consoleserverport |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_powerport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_poweroutlet |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_interface |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_frontport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_rearport |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_powerfeed |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/filtersets.py |
CableTerminationFilterSet.filter_by_circuittermination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/filtersets.py |
PowerPanelFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
PowerFeedFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CoolingSourceFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
CoolingFeedFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
ConnectionFilterSet.filter_connections |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
ConnectionFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/filtersets.py |
(no function) |
|
100% |
824 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/__init__.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/bulk_create.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/bulk_edit.py |
PowerOutletTemplateBulkEditForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
CoolingOutflowTemplateBulkEditForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
ComponentBulkEditForm.__init__ |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
PowerOutletBulkEditForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
CoolingOutflowBulkEditForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
InterfaceBulkEditForm.__init__ |
|
0% |
22 |
22 |
0 |
|
0% |
12 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
InterfaceBulkEditForm.clean |
|
0% |
10 |
10 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
InventoryItemBulkEditForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
VirtualDeviceContextBulkEditForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_edit.py |
(no function) |
|
100% |
493 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/bulk_import.py |
LocationImportForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
RackTypeImportForm.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
RackImportForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
RackImportForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
RackReservationImportForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
ModuleTypeImportForm.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
BaseDeviceImportForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
DeviceImportForm.__init__ |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
DeviceImportForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
ModuleImportForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
ModuleImportForm.clean_replicate_components |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
PowerOutletImportForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CoolingIntakeImportForm.__init__ |
|
0% |
21 |
21 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CoolingOutflowImportForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
InterfaceImportForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
InterfaceImportForm.clean_enabled |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
InterfaceImportForm.clean_vdcs |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
FrontPortImportForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
FrontPortImportForm.clean |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
FrontPortImportForm._save_m2m |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
ModuleBayImportForm.clean_enabled |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
DeviceBayImportForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
DeviceBayImportForm.clean_enabled |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
InventoryItemImportForm.__init__ |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
InventoryItemImportForm.clean |
|
0% |
25 |
25 |
0 |
|
0% |
12 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
MACAddressImportForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
MACAddressImportForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
MACAddressImportForm.save |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm.__init__ |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._update_errors |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._map_termination_field |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._split_side_values |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._check_companion_column |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._resolve_side_parent_objects |
|
0% |
15 |
15 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._get_device_component_termination |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._clean_side |
|
0% |
49 |
49 |
0 |
|
0% |
30 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm._clean_color |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm.clean |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm.clean_side_a_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm.clean_side_b_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm.clean_length_unit |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CableImportForm.clean_color |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
PowerPanelImportForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
PowerFeedImportForm.__init__ |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CoolingSourceImportForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
CoolingFeedImportForm.__init__ |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
VirtualDeviceContextImportForm.__init__ |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/bulk_import.py |
(no function) |
|
100% |
421 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/common.py |
InterfaceCommonForm.__init__ |
|
0% |
12 |
12 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/forms/common.py |
InterfaceCommonForm.clean |
|
0% |
25 |
25 |
0 |
|
0% |
18 |
0 |
|
0% |
| dcim/forms/common.py |
InterfaceCommonForm.save |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/common.py |
ModuleCommonForm.clean |
|
0% |
31 |
31 |
0 |
|
0% |
16 |
0 |
|
0% |
| dcim/forms/common.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/connections.py |
get_cable_form |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/connections.py |
get_cable_form.FormMetaclass.__new__ |
|
0% |
14 |
14 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/forms/connections.py |
get_cable_form._CableForm.__init__ |
|
0% |
20 |
20 |
0 |
|
0% |
18 |
0 |
|
0% |
| dcim/forms/connections.py |
get_cable_form._CableForm.clean |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/connections.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/filtersets.py |
(no function) |
|
100% |
544 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/formsets.py |
BaseVCMemberFormSet.clean |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/formsets.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/mixins.py |
ScopedImportForm.clean |
|
0% |
21 |
21 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/forms/mixins.py |
FrontPortFormMixin.clean |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/mixins.py |
FrontPortFormMixin._save_m2m |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/mixins.py |
FrontPortFormMixin._get_rear_port_choices |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/mixins.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/model_forms.py |
SiteForm.__init__ |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
RackForm.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ModuleTypeForm.fieldsets |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ModuleTypeForm.__init__ |
|
0% |
12 |
12 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ModuleTypeForm._get_attr_form_fields |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ModuleTypeForm._post_clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/model_forms.py |
DeviceForm.__init__ |
|
0% |
32 |
32 |
0 |
|
0% |
12 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ModuleForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/model_forms.py |
get_termination_type_choices |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/model_forms.py |
VirtualChassisForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/model_forms.py |
DeviceVCMembershipForm.__init__ |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/model_forms.py |
DeviceVCMembershipForm.clean_vc_position |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
VCMemberSelectForm.clean_device |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ComponentTemplateForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/model_forms.py |
ModularComponentTemplateForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/model_forms.py |
FrontPortTemplateForm.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/forms/model_forms.py |
InventoryItemTemplateForm.__init__ |
|
0% |
16 |
16 |
0 |
|
0% |
12 |
0 |
|
0% |
| dcim/forms/model_forms.py |
InventoryItemTemplateForm.clean |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
DeviceComponentForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/model_forms.py |
FrontPortForm.__init__ |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
PopulateDeviceBayForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/model_forms.py |
InventoryItemForm.__init__ |
|
0% |
17 |
17 |
0 |
|
0% |
14 |
0 |
|
0% |
| dcim/forms/model_forms.py |
InventoryItemForm.clean |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
MACAddressForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/forms/model_forms.py |
MACAddressForm.clean |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/model_forms.py |
(no function) |
|
100% |
507 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/object_create.py |
ComponentCreateForm.clean |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/forms/object_create.py |
FrontPortTemplateCreateForm.get_iterative_data |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/object_create.py |
FrontPortCreateForm.get_iterative_data |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/forms/object_create.py |
VirtualChassisCreateForm.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_create.py |
VirtualChassisCreateForm.save |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/forms/object_create.py |
(no function) |
|
100% |
115 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/forms/object_import.py |
PowerOutletTemplateImportForm.clean_device_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
PowerOutletTemplateImportForm.clean_module_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
CoolingOutflowTemplateImportForm.clean_device_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
CoolingOutflowTemplateImportForm.clean_module_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
InterfaceTemplateImportForm.clean_device_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
InterfaceTemplateImportForm.clean_module_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
PortTemplateMappingImportForm.clean_device_type |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
PortTemplateMappingImportForm.clean_module_type |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
ModuleBayTemplateImportForm.clean |
|
0% |
18 |
18 |
0 |
|
0% |
14 |
0 |
|
0% |
| dcim/forms/object_import.py |
InventoryItemTemplateImportForm.clean_device_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
InventoryItemTemplateImportForm.clean_module_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/forms/object_import.py |
(no function) |
|
100% |
84 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/graphql/enums.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/graphql/filter_mixins.py |
(no function) |
|
94% |
85 |
5 |
0 |
|
50% |
2 |
1 |
|
93% |
| dcim/graphql/filters.py |
MACAddressFilter.assigned |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/filters.py |
MACAddressFilter.primary |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/graphql/filters.py |
InterfaceFilter.cabled |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/filters.py |
InterfaceFilter.connected |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/graphql/filters.py |
InterfaceFilter.kind |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/graphql/filters.py |
(no function) |
|
98% |
569 |
11 |
0 |
|
50% |
2 |
1 |
|
98% |
| dcim/graphql/gfk_mixins.py |
InventoryItemTemplateComponentType.resolve_type |
|
0% |
15 |
15 |
0 |
|
0% |
14 |
0 |
|
0% |
| dcim/graphql/gfk_mixins.py |
InventoryItemComponentType.resolve_type |
|
0% |
15 |
15 |
0 |
|
0% |
14 |
0 |
|
0% |
| dcim/graphql/gfk_mixins.py |
ConnectedEndpointType.resolve_type |
|
0% |
21 |
21 |
0 |
|
0% |
20 |
0 |
|
0% |
| dcim/graphql/gfk_mixins.py |
(no function) |
|
0% |
20 |
20 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/mixins.py |
(no function) |
|
80% |
10 |
2 |
0 |
|
50% |
2 |
1 |
|
75% |
| dcim/graphql/schema.py |
(no function) |
|
100% |
109 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/graphql/types.py |
_cable_terminations_prefetch |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/graphql/types.py |
_cable_terminations_prefetch.prefetch |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
_resolve_cable_terminations |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/graphql/types.py |
CableTerminationType.termination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
CableType.a_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
CableType.b_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
DeviceType.vc_master_for |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
DeviceType.parent_bay |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
InventoryItemTemplateType.parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
InventoryItemTemplateType.component |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
MACAddressType.assigned_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
InventoryItemType.parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
InventoryItemType.component |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
LocationType.clusters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
LocationType.circuit_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
ModuleBayType.parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
RackReservationType.get_queryset |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
RackReservationType.unit_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
RegionType.parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
RegionType.clusters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
RegionType.circuit_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
SiteType.clusters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
SiteType.circuit_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
SiteGroupType.parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
SiteGroupType.clusters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
SiteGroupType.circuit_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/graphql/types.py |
(no function) |
|
96% |
201 |
8 |
0 |
|
50% |
2 |
1 |
|
96% |
| dcim/lookups.py |
PathContains.get_prep_lookup |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/lookups.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/management/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/management/commands/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/management/commands/buildschema.py |
Command.add_arguments |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/management/commands/buildschema.py |
Command.handle |
|
0% |
13 |
13 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/management/commands/buildschema.py |
(no function) |
|
0% |
15 |
15 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/management/commands/trace_paths.py |
Command.add_arguments |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/management/commands/trace_paths.py |
Command.draw_progress_bar |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/management/commands/trace_paths.py |
Command.handle |
|
34% |
38 |
25 |
0 |
|
35% |
20 |
3 |
|
34% |
| dcim/management/commands/trace_paths.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/__init__.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/base.py |
PortMappingBase.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/base.py |
PortMappingBase.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/base.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/cables.py |
CableBundle.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CableBundle.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CableQuerySet.delete |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.__init__ |
|
78% |
9 |
2 |
0 |
|
50% |
4 |
2 |
|
69% |
| dcim/models/cables.py |
Cable.__str__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.profile_class |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable._get_x_terminations |
|
62% |
8 |
3 |
0 |
|
50% |
6 |
3 |
|
57% |
| dcim/models/cables.py |
Cable._set_x_terminations |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.a_terminations |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/cables.py |
Cable.a_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.b_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.b_terminations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.color_name |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.clean |
|
16% |
25 |
21 |
0 |
|
8% |
24 |
2 |
|
12% |
| dcim/models/cables.py |
Cable.save |
|
0% |
38 |
38 |
0 |
|
0% |
20 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.delete |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable._track_deletion |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
Cable._untrack_deletion |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
Cable._is_being_deleted |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.clone |
|
0% |
22 |
22 |
0 |
|
0% |
16 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.serialize_object |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.deserialize_object |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.update_dependent_objects |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.get_terminations |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
Cable._connectors_reassigned |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/cables.py |
Cable.update_terminations |
|
0% |
29 |
29 |
0 |
|
0% |
24 |
0 |
|
0% |
| dcim/models/cables.py |
CableTermination.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CableTermination.clean |
|
0% |
16 |
16 |
0 |
|
0% |
12 |
0 |
|
0% |
| dcim/models/cables.py |
CableTermination.save |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CableTermination.delete |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CableTermination.cache_related_objects |
|
0% |
14 |
14 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/cables.py |
CableTermination.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.save |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.delete |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.origin_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.destination_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath._path_decompiled |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.origins |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.destinations |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.segment_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.from_origin |
|
0% |
160 |
160 |
0 |
|
0% |
102 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.retrace |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.get_cable_ids |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.get_total_length |
|
0% |
42 |
42 |
0 |
|
0% |
26 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.get_split_nodes |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/cables.py |
CablePath.get_asymmetric_nodes |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/cables.py |
(no function) |
|
100% |
156 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/cooling.py |
CoolingSource.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cooling.py |
CoolingSource.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cooling.py |
CoolingSource.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cooling.py |
CoolingFeed.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cooling.py |
CoolingFeed.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/cooling.py |
CoolingFeed.parent_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cooling.py |
CoolingFeed.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/cooling.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_component_templates.py |
ComponentTemplateModel.__str__ |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| dcim/models/device_component_templates.py |
ComponentTemplateModel.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ComponentTemplateModel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_component_templates.py |
ComponentTemplateModel.to_objectchange |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_component_templates.py |
ComponentTemplateModel.clean |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel.to_objectchange |
|
67% |
6 |
2 |
0 |
|
25% |
4 |
1 |
|
50% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel.clean |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel._resolve_vc_position |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel._resolve_vc_position.replacer |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel._resolve_all_placeholders |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel.resolve_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel.resolve_label |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModularComponentTemplateModel.resolve_position |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ConsolePortTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ConsolePortTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ConsoleServerPortTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ConsoleServerPortTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PowerPortTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PowerPortTemplate.clean |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PowerPortTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PowerOutletTemplate.clean |
|
33% |
6 |
4 |
0 |
|
17% |
6 |
1 |
|
25% |
| dcim/models/device_component_templates.py |
PowerOutletTemplate.instantiate |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PowerOutletTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
CoolingIntakeTemplate.instantiate |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
CoolingIntakeTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
CoolingOutflowTemplate.clean |
|
17% |
6 |
5 |
0 |
|
0% |
6 |
0 |
|
8% |
| dcim/models/device_component_templates.py |
CoolingOutflowTemplate.instantiate |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
CoolingOutflowTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
InterfaceTemplate.clean |
|
9% |
11 |
10 |
0 |
|
0% |
12 |
0 |
|
4% |
| dcim/models/device_component_templates.py |
InterfaceTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
InterfaceTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PortTemplateMapping.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PortTemplateMapping.save |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
PortTemplateMapping.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
FrontPortTemplate.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
FrontPortTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
FrontPortTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
RearPortTemplate.clean |
|
20% |
5 |
4 |
0 |
|
0% |
4 |
0 |
|
11% |
| dcim/models/device_component_templates.py |
RearPortTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
RearPortTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModuleBayTemplate.instantiate |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
ModuleBayTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
DeviceBayTemplate.instantiate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
DeviceBayTemplate.clean |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
DeviceBayTemplate.to_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
InventoryItemTemplate.instantiate |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_component_templates.py |
(no function) |
|
100% |
208 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
ComponentModel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
ComponentModel.__str__ |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/device_components.py |
ComponentModel.to_objectchange |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
ComponentModel.clean |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/device_components.py |
ComponentModel.save |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
ComponentModel.parent_object |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
CabledObjectModel.clean |
|
31% |
16 |
11 |
0 |
|
25% |
16 |
4 |
|
28% |
| dcim/models/device_components.py |
CabledObjectModel.link |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
CabledObjectModel.link_peers |
|
40% |
5 |
3 |
0 |
|
25% |
4 |
1 |
|
33% |
| dcim/models/device_components.py |
CabledObjectModel._get_profile_link_peers |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/device_components.py |
CabledObjectModel._occupied |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
CabledObjectModel.parent_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
CabledObjectModel.opposite_cable_end |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
CabledObjectModel.set_cable_termination |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
CabledObjectModel.clear_cable_termination |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
PathEndpoint.trace |
|
44% |
16 |
9 |
0 |
|
20% |
10 |
2 |
|
35% |
| dcim/models/device_components.py |
PathEndpoint.path |
|
45% |
11 |
6 |
0 |
|
50% |
6 |
3 |
|
47% |
| dcim/models/device_components.py |
PathEndpoint.connected_endpoints |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/device_components.py |
PowerPort.clean |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_components.py |
PowerPort.get_downstream_powerports |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/device_components.py |
PowerPort.get_power_draw |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/device_components.py |
PowerPort.get_power_draw._aggregate |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_components.py |
PowerOutlet.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
PowerOutlet.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
CoolingIntake.clean |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
CoolingOutflow.clean |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
BaseInterface.clean |
|
33% |
9 |
6 |
0 |
|
20% |
10 |
2 |
|
26% |
| dcim/models/device_components.py |
BaseInterface.save |
|
100% |
5 |
0 |
0 |
|
75% |
4 |
1 |
|
89% |
| dcim/models/device_components.py |
BaseInterface.set_primary_mac_address |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
BaseInterface.set_primary_mac_address_from_value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
BaseInterface._set_primary_mac_address |
|
0% |
19 |
19 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/device_components.py |
BaseInterface.tunnel_termination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
BaseInterface.count_ipaddresses |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
BaseInterface.count_fhrp_groups |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
BaseInterface.mac_address |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/device_components.py |
Interface.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
Interface.clean |
|
33% |
42 |
28 |
0 |
|
28% |
46 |
13 |
|
31% |
| dcim/models/device_components.py |
Interface.save |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| dcim/models/device_components.py |
Interface._occupied |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
Interface.is_wired |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.is_virtual |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
Interface.is_wireless |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.is_lag |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.is_bridge |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.is_channel |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.link |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.link_peers |
|
43% |
7 |
4 |
0 |
|
33% |
6 |
2 |
|
38% |
| dcim/models/device_components.py |
Interface.l2vpn_termination |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/device_components.py |
Interface.connected_endpoints |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/device_components.py |
Interface.set_cable_termination |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.clear_cable_termination |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.propagate_channel_cables |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_components.py |
Interface.clear_channel_cables |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
PortMapping.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
PortMapping.save |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
FrontPort.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_components.py |
RearPort.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/device_components.py |
ModuleBay.clean |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/device_components.py |
ModuleBay.save |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/device_components.py |
ModuleBay._parent_creates_cycle |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
ModuleBay._occupied |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
ModuleBay.is_module_compatible |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/device_components.py |
ModuleBay.get_incompatible_module |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
DeviceBay.clean |
|
0% |
13 |
13 |
0 |
|
0% |
12 |
0 |
|
0% |
| dcim/models/device_components.py |
DeviceBay._occupied |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
InventoryItem.clean |
|
0% |
11 |
11 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/models/device_components.py |
InventoryItem.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/device_components.py |
(no function) |
|
100% |
314 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/devices.py |
DeviceType.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/devices.py |
DeviceType.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/devices.py |
DeviceType.full_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
DeviceType.get_cooling_method_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
DeviceType.to_yaml |
|
0% |
27 |
27 |
0 |
|
0% |
24 |
0 |
|
0% |
| dcim/models/devices.py |
DeviceType.clean |
|
33% |
18 |
12 |
0 |
|
31% |
16 |
5 |
|
32% |
| dcim/models/devices.py |
DeviceType.save |
|
67% |
6 |
2 |
0 |
|
50% |
4 |
2 |
|
60% |
| dcim/models/devices.py |
DeviceType.delete |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| dcim/models/devices.py |
DeviceType.is_parent_device |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
DeviceType.is_child_device |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.__str__ |
|
33% |
9 |
6 |
0 |
|
25% |
8 |
2 |
|
29% |
| dcim/models/devices.py |
Device.clean |
|
33% |
66 |
44 |
0 |
|
32% |
62 |
18 |
|
33% |
| dcim/models/devices.py |
Device._check_duplicate_component_names |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/devices.py |
Device._instantiate_components |
|
30% |
30 |
21 |
0 |
|
18% |
22 |
2 |
|
25% |
| dcim/models/devices.py |
Device.save |
|
84% |
32 |
5 |
0 |
|
83% |
12 |
2 |
|
84% |
| dcim/models/devices.py |
Device.label |
|
40% |
5 |
3 |
0 |
|
25% |
4 |
1 |
|
33% |
| dcim/models/devices.py |
Device.identifier |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.primary_ip |
|
57% |
7 |
3 |
0 |
|
50% |
6 |
3 |
|
54% |
| dcim/models/devices.py |
Device.interfaces_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.get_vc_master |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.vc_interfaces |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| dcim/models/devices.py |
Device.get_cables |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/devices.py |
Device.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.get_cooling_method_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
Device.total_weight |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/devices.py |
VirtualChassis.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/devices.py |
VirtualChassis.clean |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| dcim/models/devices.py |
VirtualChassis.delete |
|
50% |
8 |
4 |
0 |
|
50% |
4 |
2 |
|
50% |
| dcim/models/devices.py |
VirtualDeviceContext.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
VirtualDeviceContext.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
VirtualDeviceContext.primary_ip |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/devices.py |
VirtualDeviceContext.clean |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/devices.py |
MACAddress.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
MACAddress.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/devices.py |
MACAddress.is_primary |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/devices.py |
MACAddress.clean |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/devices.py |
(no function) |
|
100% |
226 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/mixins.py |
RenderConfigMixin.get_config_template |
|
57% |
7 |
3 |
0 |
|
50% |
6 |
3 |
|
54% |
| dcim/models/mixins.py |
CachedScopeMixin.clean |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| dcim/models/mixins.py |
CachedScopeMixin.save |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/mixins.py |
CachedScopeMixin.cache_related_objects |
|
56% |
16 |
7 |
0 |
|
50% |
10 |
3 |
|
54% |
| dcim/models/mixins.py |
InterfaceValidationMixin.clean |
|
40% |
40 |
24 |
0 |
|
34% |
38 |
13 |
|
37% |
| dcim/models/mixins.py |
InterfaceChannelRenameMixin.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/mixins.py |
InterfaceChannelRenameMixin.save |
|
93% |
14 |
1 |
0 |
|
50% |
6 |
3 |
|
80% |
| dcim/models/mixins.py |
InterfaceChannelRenameMixin._rename_channel_subinterfaces |
|
0% |
19 |
19 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/mixins.py |
CoolingLoopValidationMixin._get_upstream_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/mixins.py |
CoolingLoopValidationMixin.validate_cooling_loop |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/mixins.py |
DiameterMixin.abs_diameter |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/mixins.py |
DiameterMixin.normalize_diameter |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/mixins.py |
DiameterMixin.save |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/mixins.py |
DiameterMixin.clean |
|
33% |
3 |
2 |
0 |
|
0% |
2 |
0 |
|
20% |
| dcim/models/mixins.py |
MaxFlowMixin.abs_max_flow |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/mixins.py |
MaxFlowMixin.normalize_max_flow |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/mixins.py |
MaxFlowMixin.save |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/mixins.py |
MaxFlowMixin.clean |
|
33% |
3 |
2 |
0 |
|
0% |
2 |
0 |
|
20% |
| dcim/models/mixins.py |
(no function) |
|
100% |
67 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/module_moves.py |
ModuleMovePlan.__init__ |
|
0% |
19 |
19 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan.from_module |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._ensure_planned |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._discover |
|
0% |
20 |
20 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._plan_renames |
|
0% |
33 |
33 |
0 |
|
0% |
22 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._cached_templates |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._index_templates |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._plan_component |
|
0% |
32 |
32 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._resolve |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan.lock |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._membership_pks |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._refresh_target_state |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._lock_current_set |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan.validate |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._name_sample |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._check_cross_device_blockers |
|
0% |
52 |
52 |
0 |
|
0% |
30 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._check_name_conflicts |
|
0% |
30 |
30 |
0 |
|
0% |
26 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._check_length_violations |
|
0% |
14 |
14 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._length_offenders |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._truncate_for_display |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._record_target_failure |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._check_target_resolution_failures |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._validate_target_bay |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan.apply_after_root_save |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._apply_descendant_modules |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._apply_bays |
|
0% |
52 |
52 |
0 |
|
0% |
32 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._apply_components |
|
0% |
37 |
37 |
0 |
|
0% |
20 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._apply_port_mappings |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan.device_counters_by_model |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._moved_row_counts |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._recompute_counters |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._refresh_ltree_columns |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
ModuleMovePlan._send_post_saves |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/module_moves.py |
(no function) |
|
100% |
65 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/modules.py |
ModuleBayType.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleBayType.full_name |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleTypeProfile.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/modules.py |
ModuleType.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleType.full_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleType.attributes |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleType.get_incompatible_modules |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleType.clean |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleType.get_cooling_method_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/modules.py |
ModuleType.to_yaml |
|
0% |
23 |
23 |
0 |
|
0% |
20 |
0 |
|
0% |
| dcim/models/modules.py |
Module.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/modules.py |
Module.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/modules.py |
Module.is_bay_compatible |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/modules.py |
Module.clean |
|
0% |
31 |
31 |
0 |
|
0% |
22 |
0 |
|
0% |
| dcim/models/modules.py |
Module.save |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/modules.py |
Module._save_new |
|
0% |
46 |
46 |
0 |
|
0% |
32 |
0 |
|
0% |
| dcim/models/modules.py |
Module._save_existing |
|
0% |
40 |
40 |
0 |
|
0% |
18 |
0 |
|
0% |
| dcim/models/modules.py |
(no function) |
|
100% |
105 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/power.py |
PowerPanel.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/power.py |
PowerPanel.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/power.py |
PowerFeed.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/power.py |
PowerFeed.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/power.py |
PowerFeed.save |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/power.py |
PowerFeed.parent_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/power.py |
PowerFeed.get_type_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/power.py |
PowerFeed.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/power.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/racks.py |
RackBase.get_cooling_capability_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
RackType.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
RackType.full_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
RackType.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/racks.py |
RackType.save |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/racks.py |
RackType.units |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.clean |
|
0% |
23 |
23 |
0 |
|
0% |
20 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.save |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.copy_racktype_attrs |
|
0% |
3 |
3 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.units |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_rack_units |
|
0% |
20 |
20 |
0 |
|
0% |
16 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_available_units |
|
0% |
18 |
18 |
0 |
|
0% |
14 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_reserved_units |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_elevation_svg |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_utilization |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.get_power_utilization |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/models/racks.py |
Rack.total_weight |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/racks.py |
RackReservation.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
RackReservation.clean |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/models/racks.py |
RackReservation.unit_list |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
RackReservation.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
RackReservation.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/racks.py |
(no function) |
|
100% |
133 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/sites.py |
Region.get_site_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/sites.py |
SiteGroup.get_site_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/sites.py |
Site.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/models/sites.py |
Site.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/sites.py |
Location.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/models/sites.py |
Location.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/models/sites.py |
(no function) |
|
100% |
77 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/object_actions.py |
BulkAddComponents.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/object_actions.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/search.py |
(no function) |
|
100% |
202 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/signals.py |
cache_presave_scope_fields |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/signals.py |
_unwritten_scope_fields |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/signals.py |
_scope_fields_unchanged |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/signals.py |
_scope_values |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/signals.py |
handle_location_site_change |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/signals.py |
handle_rack_site_change |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/signals.py |
assign_virtualchassis_master |
|
20% |
5 |
4 |
0 |
|
50% |
2 |
1 |
|
29% |
| dcim/signals.py |
update_virtualchassis_member_search_cache |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| dcim/signals.py |
update_connected_endpoints |
|
0% |
21 |
21 |
0 |
|
0% |
18 |
0 |
|
0% |
| dcim/signals.py |
retrace_cable_paths |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/signals.py |
update_passthrough_port_paths |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/signals.py |
nullify_connected_endpoints |
|
0% |
29 |
29 |
0 |
|
0% |
16 |
0 |
|
0% |
| dcim/signals.py |
update_channelized_cable_paths |
|
47% |
30 |
16 |
0 |
|
32% |
22 |
7 |
|
40% |
| dcim/signals.py |
cleanup_channel_subinterface_paths |
|
20% |
5 |
4 |
0 |
|
25% |
4 |
1 |
|
22% |
| dcim/signals.py |
update_mac_address_interface |
|
33% |
3 |
2 |
0 |
|
50% |
2 |
1 |
|
40% |
| dcim/signals.py |
(no function) |
|
100% |
45 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| dcim/svg/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/svg/cables.py |
_cable_side_nodes |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
_cable_side_nodes.matches |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/svg/cables.py |
Node.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/cables.py |
Node.box |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
Node.top_center |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
Node.bottom_center |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
Connector.__init__ |
|
0% |
24 |
24 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.__init__ |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.center |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG._get_labels |
|
0% |
24 |
24 |
0 |
|
0% |
18 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG._get_color |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_parent_objects |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_object_terminations |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_terminations |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_far_objects |
|
0% |
14 |
14 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_fanin |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_fanout |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.draw_attachment |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/cables.py |
CableTraceSVG.render |
|
0% |
76 |
76 |
0 |
|
0% |
36 |
0 |
|
0% |
| dcim/svg/cables.py |
(no function) |
|
100% |
42 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/svg/racks.py |
get_device_name |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/svg/racks.py |
get_device_description |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/svg/racks.py |
truncate_text |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.__init__ |
|
0% |
21 |
21 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG._add_gradient |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG._setup_drawing |
|
0% |
9 |
9 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG._get_device_coords |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG._draw_device |
|
0% |
25 |
25 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_device_front |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_device_rear |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_border |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_legend |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_margin |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_background |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.draw_face |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/svg/racks.py |
RackElevationSVG.render |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/svg/racks.py |
(no function) |
|
100% |
41 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/__init__.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/cables.py |
CableTerminationsColumn.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/cables.py |
CableTerminationsColumn._get_terminations |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/tables/cables.py |
CableTerminationsColumn.render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/cables.py |
CableTerminationsColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/cables.py |
(no function) |
|
100% |
45 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/connections.py |
(no function) |
|
100% |
28 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/cooling.py |
(no function) |
|
100% |
87 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/devices.py |
CableTerminationTable.value_link_peer |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/devices.py |
PathEndpointTable.value_connection |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/tables/devices.py |
BaseInterfaceTable.value_ip_addresses |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/devices.py |
BaseInterfaceTable.value_tagged_vlans |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/devices.py |
InterfaceTable.value_connection |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/tables/devices.py |
ModuleBayTable.render_parent_bay |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/devices.py |
ModuleBayTable.render_installed_module |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/tables/devices.py |
MACAddressActionsColumn.render |
|
0% |
19 |
19 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/tables/devices.py |
(no function) |
|
100% |
360 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/devicetypes.py |
(no function) |
|
100% |
125 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/modules.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/power.py |
(no function) |
|
100% |
32 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/racks.py |
(no function) |
|
100% |
81 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/sites.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/tables/template_code.py |
(no function) |
|
100% |
28 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/ui/panels.py |
BayTypeIncompatibilityPanel.should_render |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/ui/panels.py |
BayTypeIncompatibilityPanel.get_context |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
ConnectionPanel.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/ui/panels.py |
ConnectionPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
VirtualChassisMembersPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
VirtualChassisMembersPanel.should_render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
PowerUtilizationPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
PowerUtilizationPanel.should_render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
InterfaceConnectionPanel.should_render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
VirtualCircuitPanel.should_render |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/ui/panels.py |
InterfaceWirelessPanel.should_render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
WirelessLANsPanel.should_render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/ui/panels.py |
(no function) |
|
100% |
403 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/utils.py |
inherit_module_token |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/utils.py |
get_module_bay_raw_positions |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/utils.py |
resolve_position_chain |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/utils.py |
get_module_bay_positions |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/utils.py |
resolve_module_placeholder |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/utils.py |
compile_path_node |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/utils.py |
decompile_path_node |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/utils.py |
object_to_path_node |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/utils.py |
path_node_to_object |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/utils.py |
create_cablepaths |
|
0% |
15 |
15 |
0 |
|
0% |
14 |
0 |
|
0% |
| dcim/utils.py |
rebuild_paths |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/utils.py |
rebuild_cable_paths |
|
0% |
28 |
28 |
0 |
|
0% |
22 |
0 |
|
0% |
| dcim/utils.py |
update_interface_parents |
|
33% |
6 |
4 |
0 |
|
50% |
2 |
1 |
|
38% |
| dcim/utils.py |
update_interface_bridges |
|
29% |
7 |
5 |
0 |
|
25% |
4 |
1 |
|
27% |
| dcim/utils.py |
create_port_mappings |
|
70% |
10 |
3 |
0 |
|
50% |
2 |
1 |
|
67% |
| dcim/utils.py |
reconcile_port_mappings |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/utils.py |
reconcile_port_mappings.target |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/utils.py |
(no function) |
|
100% |
22 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| dcim/views.py |
DeviceComponentsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceTypeComponentsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceTypeComponentsView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeComponentsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeComponentsView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
BulkDisconnectView.__init__ |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
BulkDisconnectView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
BulkDisconnectView.post |
|
0% |
19 |
19 |
0 |
|
0% |
10 |
0 |
|
0% |
| dcim/views.py |
PathTraceView.dispatch |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
PathTraceView.get_extra_context |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| dcim/views.py |
RegionView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
SiteGroupView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
SiteView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
LocationView.get_extra_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RackGroupView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RackRoleView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RackTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RackElevationListView.get |
|
0% |
20 |
20 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
RackView.get_extra_context |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
RackRackReservationsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RackNonRackedView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RackReservationEditView.alter_object |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
RackReservationImportView.save_object |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ManufacturerView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceTypeListView.export_yaml |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceTypeImportView.prep_related_object_data |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeListView.export_yaml |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeEditView.post |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeImportView.prep_related_object_data |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeBulkEditView.post_save_operations |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/views.py |
ModuleTypeBulkEditView.post |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
ModuleBayTemplateBulkEditView.post_save_operations |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
InventoryItemTemplateCreateView.alter_object |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
DeviceRoleView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
PlatformView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceView.get_extra_context |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
DeviceInterfacesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceInventoryView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceVirtualMachinesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceBulkImportView.save_object |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
ModuleView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
InterfaceView.get_extra_context |
|
0% |
15 |
15 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
InterfaceBulkEditView.post_save_operations |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/views.py |
FrontPortView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
RearPortView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
ModuleBayEditView.post |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
ModuleBayBulkEditView.post_save_operations |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/views.py |
ModuleBayBulkEditView.post |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
DeviceBayPopulateView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceBayPopulateView.post |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
DeviceBayDepopulateView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
DeviceBayDepopulateView.post |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| dcim/views.py |
InventoryItemChildrenView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
InventoryItemRoleView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
CableBundleView.get_extra_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
CableEditView.alter_object |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/views.py |
ConsoleConnectionsListView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
PowerConnectionsListView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
InterfaceConnectionsListView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisEditView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisEditView.get |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisEditView.post |
|
0% |
21 |
21 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisAddMemberView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisAddMemberView.get |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisAddMemberView.post |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisRemoveMemberView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisRemoveMemberView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualChassisRemoveMemberView.post |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
PowerPanelView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
CoolingSourceView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
VirtualDeviceContextView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
MACAddressSetPrimaryView.get |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| dcim/views.py |
MACAddressSetPrimaryView.post |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| dcim/views.py |
(no function) |
|
100% |
2464 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/customfields.py |
CustomFieldDefaultValues.__call__ |
|
57% |
7 |
3 |
0 |
|
25% |
4 |
1 |
|
45% |
| extras/api/customfields.py |
CustomFieldsDataField._get_custom_fields |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/customfields.py |
CustomFieldsDataField.to_representation |
|
21% |
24 |
19 |
0 |
|
7% |
14 |
1 |
|
16% |
| extras/api/customfields.py |
CustomFieldsDataField.to_internal_value |
|
45% |
22 |
12 |
0 |
|
50% |
14 |
1 |
|
47% |
| extras/api/customfields.py |
CustomFieldListSerializer.to_representation |
|
41% |
17 |
10 |
0 |
|
25% |
12 |
1 |
|
34% |
| extras/api/customfields.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/mixins.py |
SharedObjectQuerySetMixin.get_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/mixins.py |
ConfigContextQuerySetMixin.get_queryset |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/mixins.py |
ConfigTemplateRenderMixin.render_configtemplate |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/api/mixins.py |
RenderConfigMixin.get_permissions |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/mixins.py |
RenderConfigMixin.render_config |
|
73% |
15 |
4 |
0 |
|
75% |
4 |
1 |
|
74% |
| extras/api/mixins.py |
(no function) |
|
100% |
22 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/routers.py |
ScriptRouter.get_routes |
|
100% |
7 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/routers.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/attachments.py |
ImageAttachmentSerializer.validate |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/api/serializers_/attachments.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/bookmarks.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/configcontexts.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/configtemplates.py |
RenderConfigInputSerializerExtension.map_serializer |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/configtemplates.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/customfields.py |
CustomFieldSerializer.validate_type |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/customfields.py |
CustomFieldSerializer.get_data_type |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/api/serializers_/customfields.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/customlinks.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/dashboard.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/events.py |
EventRuleSerializer.get_fields |
|
100% |
4 |
0 |
0 |
|
50% |
2 |
1 |
|
83% |
| extras/api/serializers_/events.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/exporttemplates.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/journaling.py |
JournalEntrySerializer.get_fields |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/serializers_/journaling.py |
JournalEntrySerializer.validate |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/journaling.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/notifications.py |
(no function) |
|
100% |
31 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/savedfilters.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/scripts.py |
ScriptModuleSerializer.validate |
|
65% |
20 |
7 |
0 |
|
30% |
10 |
3 |
|
53% |
| extras/api/serializers_/scripts.py |
ScriptModuleSerializer.create |
|
0% |
18 |
18 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptModuleSerializer.update |
|
0% |
15 |
15 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptSerializer.get_vars |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptSerializer.get_display |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptSerializer.get_description |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptDetailSerializer.get_result |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptInputSerializer.__init__ |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| extras/api/serializers_/scripts.py |
ScriptInputSerializer.validate_data |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptInputSerializer.validate_schedule_at |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptInputSerializer.validate_interval |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
ScriptInputSerializer.validate |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/api/serializers_/scripts.py |
(no function) |
|
100% |
53 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/tableconfigs.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/serializers_/tags.py |
TaggedItemSerializer.get_object |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/api/serializers_/tags.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/urls.py |
(no function) |
|
100% |
28 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/views.py |
ExtrasRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/api/views.py |
CustomFieldChoiceSetViewSet.choices |
|
11% |
9 |
8 |
0 |
|
0% |
4 |
0 |
|
8% |
| extras/api/views.py |
ConfigTemplateViewSet.get_permissions |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/views.py |
ConfigTemplateViewSet.render |
|
50% |
4 |
2 |
0 |
|
100% |
0 |
0 |
|
50% |
| extras/api/views.py |
ScriptModuleViewSet.get_object |
|
71% |
7 |
2 |
0 |
|
100% |
2 |
0 |
|
78% |
| extras/api/views.py |
ScriptViewSet.get_serializer |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/api/views.py |
ScriptViewSet.get_serializer_context |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/views.py |
ScriptViewSet._get_script |
|
82% |
11 |
2 |
0 |
|
100% |
2 |
0 |
|
85% |
| extras/api/views.py |
ScriptViewSet.retrieve |
|
33% |
3 |
2 |
0 |
|
100% |
0 |
0 |
|
33% |
| extras/api/views.py |
ScriptViewSet.run |
|
13% |
31 |
27 |
0 |
|
14% |
14 |
2 |
|
13% |
| extras/api/views.py |
DashboardView.get_object |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/api/views.py |
(no function) |
|
100% |
144 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/apps.py |
ExtrasConfig.ready |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/apps.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/cache.py |
invalidate_config_context_for_objects |
|
89% |
9 |
1 |
0 |
|
75% |
4 |
1 |
|
85% |
| extras/cache.py |
invalidate_config_context_for_configcontext |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/cache.py |
invalidate_for_scope_delta |
|
76% |
33 |
8 |
0 |
|
55% |
20 |
7 |
|
68% |
| extras/cache.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/choices.py |
(no function) |
|
100% |
110 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/conditions.py |
AbsentData.copy |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
walk_path |
|
0% |
22 |
22 |
0 |
|
0% |
20 |
0 |
|
0% |
| extras/conditions.py |
is_ruleset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.__init__ |
|
0% |
19 |
19 |
0 |
|
0% |
14 |
0 |
|
0% |
| extras/conditions.py |
Condition._resolve_attr |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/conditions.py |
Condition._references_absent_payload |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition._references_absent_snapshot |
|
0% |
19 |
19 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/conditions.py |
Condition._resolve_snapshot_attrs |
|
0% |
24 |
24 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval |
|
0% |
19 |
19 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_eq |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_neq |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_gt |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_gte |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_lt |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_lte |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_in |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_contains |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_regex |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_changed |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
Condition.eval_unchanged |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
ConditionSet.__init__ |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/conditions.py |
ConditionSet.eval |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/conditions.py |
(no function) |
|
100% |
48 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/constants.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/dashboard/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/dashboard/forms.py |
get_widget_choices |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/forms.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/dashboard/utils.py |
register_widget |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/dashboard/utils.py |
get_widget_class |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/utils.py |
get_dashboard |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/dashboard/utils.py |
get_default_dashboard |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/dashboard/utils.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/dashboard/widgets.py |
get_object_type_choices |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
object_list_widget_supports_model |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
object_list_widget_supports_model.can_resolve_model_list_view |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
get_bookmarks_object_type_choices |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
get_models_from_content_types |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/dashboard/widgets.py |
DashboardWidget.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/dashboard/widgets.py |
DashboardWidget.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
DashboardWidget.set_layout |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
DashboardWidget.render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
DashboardWidget.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
DashboardWidget.form_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
NoteWidget.render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
ObjectCountsWidget.ConfigForm.clean_filters |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/dashboard/widgets.py |
ObjectCountsWidget.render |
|
0% |
21 |
21 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/dashboard/widgets.py |
ObjectListWidget.ConfigForm.clean_url_params |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/dashboard/widgets.py |
ObjectListWidget.ConfigForm.clean_model |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/dashboard/widgets.py |
ObjectListWidget.render |
|
0% |
21 |
21 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/dashboard/widgets.py |
RSSFeedWidget.render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
RSSFeedWidget.cache_key |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/dashboard/widgets.py |
RSSFeedWidget.get_feed |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/dashboard/widgets.py |
RSSFeedWidget.sanitize_entries |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/dashboard/widgets.py |
BookmarksWidget.render |
|
0% |
16 |
16 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/dashboard/widgets.py |
(no function) |
|
100% |
112 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/data/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/data/iata.py |
(no function) |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/data/iso_3166.py |
(no function) |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/data/un_locode.py |
(no function) |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/event_rules.py |
WebhookAction.enqueue |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/event_rules.py |
WebhookAction.resolve_import_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/event_rules.py |
ScriptAction.enqueue |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/event_rules.py |
ScriptAction.resolve_import_object |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/event_rules.py |
NotificationAction.enqueue |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/event_rules.py |
NotificationAction.resolve_import_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/event_rules.py |
(no function) |
|
100% |
38 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/events.py |
EventContext.__init__ |
|
100% |
4 |
0 |
0 |
|
50% |
2 |
1 |
|
83% |
| extras/events.py |
EventContext.refresh_serialization_source |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/events.py |
EventContext.freeze_data |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/events.py |
EventContext.__getitem__ |
|
50% |
4 |
2 |
0 |
|
50% |
2 |
1 |
|
50% |
| extras/events.py |
serialize_for_event |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/events.py |
get_snapshots |
|
62% |
8 |
3 |
0 |
|
50% |
6 |
1 |
|
57% |
| extras/events.py |
enqueue_event |
|
67% |
15 |
5 |
0 |
|
60% |
10 |
2 |
|
64% |
| extras/events.py |
process_event_rules |
|
7% |
30 |
28 |
0 |
|
6% |
18 |
1 |
|
6% |
| extras/events.py |
process_event_queue |
|
100% |
8 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| extras/events.py |
flush_events |
|
71% |
7 |
2 |
0 |
|
75% |
4 |
1 |
|
73% |
| extras/events.py |
(no function) |
|
100% |
24 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/fields.py |
ChoiceSetField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/fields.py |
ChoiceSetField.deconstruct |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/fields.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/filters.py |
MissingKeyAwareFilterMixin.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filters.py |
MissingKeyAwareFilterMixin.filter |
|
0% |
15 |
15 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/filters.py |
missing_key_aware_filter_factory |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filters.py |
TagFilter.__init__ |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/filters.py |
TagIDFilter.__init__ |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/filters.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/filtersets.py |
ScriptFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
WebhookFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
EventRuleFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
EventRuleFilterSet.filter_event_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/filtersets.py |
EventRuleFilterSet.filter_action_is_available |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/filtersets.py |
CustomFieldFilterSet.search |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| extras/filtersets.py |
CustomFieldChoiceSetFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
CustomFieldChoiceSetFilterSet.filter_by_choice |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/filtersets.py |
CustomFieldChoiceSetFilterSet.filter_by_choice_colors |
|
0% |
13 |
13 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/filtersets.py |
CustomLinkFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
ExportTemplateFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
SavedFilterFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
SavedFilterFilterSet._usable |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/filtersets.py |
TableConfigFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
TableConfigFilterSet._usable |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/filtersets.py |
NotificationGroupFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
ImageAttachmentFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
JournalEntryFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
TagFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
TagFilterSet._content_type |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
TagFilterSet._content_type_id |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/filtersets.py |
TagFilterSet._for_object_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/filtersets.py |
TaggedItemFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
ConfigContextProfileFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
ConfigContextFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
ConfigTemplateFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/filtersets.py |
LocalConfigContextFilterSet._local_context_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/filtersets.py |
(no function) |
|
100% |
245 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/bulk_edit.py |
(no function) |
|
100% |
124 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/bulk_import.py |
CustomFieldChoiceSetImportForm.clean_extra_choices |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/bulk_import.py |
CustomFieldChoiceSetImportForm.clean_choice_colors |
|
0% |
15 |
15 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/forms/bulk_import.py |
ExportTemplateImportForm.clean_data_source |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/bulk_import.py |
ExportTemplateImportForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/bulk_import.py |
ConfigTemplateImportForm.clean_data_source |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/bulk_import.py |
ConfigTemplateImportForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/bulk_import.py |
EventRuleImportForm.clean |
|
0% |
24 |
24 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/forms/bulk_import.py |
EventRuleImportForm._update_errors |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/bulk_import.py |
JournalEntryImportForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/bulk_import.py |
(no function) |
|
100% |
102 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/filtersets.py |
(no function) |
|
100% |
153 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/misc.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/model_forms.py |
CustomFieldForm.__init__ |
|
0% |
22 |
22 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/forms/model_forms.py |
CustomFieldChoiceSetForm.__init__ |
|
0% |
23 |
23 |
0 |
|
0% |
16 |
0 |
|
0% |
| extras/forms/model_forms.py |
CustomFieldChoiceSetForm.clean_extra_choices |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/model_forms.py |
CustomFieldChoiceSetForm.clean_choice_colors |
|
0% |
15 |
15 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/forms/model_forms.py |
ExportTemplateForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/model_forms.py |
ExportTemplateForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/model_forms.py |
SavedFilterForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/model_forms.py |
TableConfigForm.__init__ |
|
0% |
23 |
23 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/forms/model_forms.py |
TableConfigForm._get_columns |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/forms/model_forms.py |
NotificationGroupForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/model_forms.py |
EventRuleForm.init_action_choice |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/forms/model_forms.py |
EventRuleForm.__init__ |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/forms/model_forms.py |
EventRuleForm.clean |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/model_forms.py |
ConfigContextForm.__init__ |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/forms/model_forms.py |
ConfigContextForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/model_forms.py |
ConfigTemplateForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/model_forms.py |
ConfigTemplateForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/model_forms.py |
(no function) |
|
100% |
190 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/forms/reports.py |
ReportForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/reports.py |
ReportForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/reports.py |
(no function) |
|
0% |
11 |
11 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/forms/scripts.py |
ScriptForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/scripts.py |
ScriptForm.clean |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/forms/scripts.py |
ScriptFileForm.clean |
|
0% |
14 |
14 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/forms/scripts.py |
ScriptFileForm.save |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/forms/scripts.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/graphql/enums.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/graphql/filter_lookups.py |
ExtraChoicesLookup.filter |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/graphql/filter_lookups.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/graphql/filter_mixins.py |
(no function) |
|
90% |
20 |
2 |
0 |
|
50% |
2 |
1 |
|
86% |
| extras/graphql/filters.py |
CustomFieldChoiceSetFilter.choice_colors |
|
0% |
14 |
14 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/graphql/filters.py |
(no function) |
|
96% |
209 |
9 |
0 |
|
50% |
2 |
1 |
|
95% |
| extras/graphql/mixins.py |
ConfigContextMixin.get_queryset |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/graphql/mixins.py |
ConfigContextMixin.config_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/graphql/mixins.py |
CustomFieldsMixin.custom_fields |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/graphql/mixins.py |
ImageAttachmentsMixin.image_attachments |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/graphql/mixins.py |
JournalEntriesMixin.journal_entries |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/graphql/mixins.py |
(no function) |
|
94% |
33 |
2 |
0 |
|
50% |
2 |
1 |
|
91% |
| extras/graphql/schema.py |
(no function) |
|
100% |
39 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/graphql/types.py |
SharedObjectMixin.get_queryset |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/graphql/types.py |
(no function) |
|
93% |
57 |
4 |
0 |
|
50% |
2 |
1 |
|
92% |
| extras/jobs.py |
RenderConfigContextJob.run |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/jobs.py |
RenderConfigContextJob._render_for_model |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/jobs.py |
provision_custom_field |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/jobs.py |
purge_custom_field |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/jobs.py |
CustomFieldDataJob.enqueue_for |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/jobs.py |
CustomFieldProvisioningJob.run |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/jobs.py |
CustomFieldPurgeJob.run |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/jobs.py |
ScriptJob.enqueue |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/jobs.py |
ScriptJob.run_script |
|
0% |
37 |
37 |
0 |
|
0% |
16 |
0 |
|
0% |
| extras/jobs.py |
ScriptJob.run |
|
0% |
19 |
19 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/jobs.py |
(no function) |
|
100% |
47 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/lookups.py |
RangeContains.as_sql |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/lookups.py |
ChoiceValueLookup.as_sql |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/lookups.py |
Empty.as_sql |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/lookups.py |
JSONEmpty.as_sql |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/lookups.py |
NetHost.as_sql |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/lookups.py |
NetContainsOrEquals.as_sql |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/lookups.py |
CollatedCaseInsensitiveMixin.process_rhs |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/lookups.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/management/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/management/commands/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/management/commands/populate_image_sizes.py |
Command.handle |
|
0% |
31 |
31 |
0 |
|
0% |
20 |
0 |
|
0% |
| extras/management/commands/populate_image_sizes.py |
(no function) |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/rebuild_config_context_cache.py |
Command.add_arguments |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/rebuild_config_context_cache.py |
Command.handle |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/management/commands/rebuild_config_context_cache.py |
(no function) |
|
0% |
8 |
8 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/reindex.py |
Command.add_arguments |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/management/commands/reindex.py |
Command._get_indexers |
|
25% |
20 |
15 |
0 |
|
21% |
14 |
1 |
|
24% |
| extras/management/commands/reindex.py |
Command.handle |
|
68% |
31 |
10 |
0 |
|
56% |
16 |
5 |
|
64% |
| extras/management/commands/reindex.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/management/commands/renaturalize.py |
Command.add_arguments |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/renaturalize.py |
Command._get_models |
|
0% |
25 |
25 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/management/commands/renaturalize.py |
Command.handle |
|
0% |
27 |
27 |
0 |
|
0% |
20 |
0 |
|
0% |
| extras/management/commands/renaturalize.py |
(no function) |
|
0% |
9 |
9 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/runscript.py |
Command.add_arguments |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/runscript.py |
Command.handle |
|
0% |
43 |
43 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/management/commands/runscript.py |
(no function) |
|
0% |
14 |
14 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/webhook_receiver.py |
WebhookHandler.__getattr__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/management/commands/webhook_receiver.py |
WebhookHandler.log_message |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/webhook_receiver.py |
WebhookHandler.do_ANY |
|
0% |
17 |
17 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/management/commands/webhook_receiver.py |
Command.add_arguments |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/webhook_receiver.py |
Command.handle |
|
0% |
9 |
9 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/management/commands/webhook_receiver.py |
(no function) |
|
0% |
15 |
15 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/managers.py |
NetBoxTaggableManager.add |
|
0% |
14 |
14 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/managers.py |
NetBoxTaggableManager.set_base |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/managers.py |
NetBoxTaggableManagerField.contribute_to_class |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/managers.py |
NetBoxTaggableManagerField.deconstruct |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/managers.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/__init__.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/configs.py |
ConfigContextProfile.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/configs.py |
ConfigContextProfile.sync_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext.clean |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext.sync_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext.get_affected_objects |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext._get_affected_object_filters |
|
0% |
37 |
37 |
0 |
|
0% |
20 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext._get_affected_object_filters._nested_scope_q |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContext._get_affected_object_filters._direct_pks |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigContextModel.get_config_context |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| extras/models/configs.py |
ConfigContextModel.render_config_context |
|
78% |
9 |
2 |
0 |
|
67% |
6 |
2 |
|
73% |
| extras/models/configs.py |
ConfigContextModel.clean |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| extras/models/configs.py |
ConfigContextModel.serialize_object |
|
100% |
5 |
0 |
0 |
|
75% |
4 |
1 |
|
89% |
| extras/models/configs.py |
ConfigTemplate.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigTemplate.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigTemplate.sync_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigTemplate.get_environment_params |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/configs.py |
ConfigTemplate.format_render_error |
|
0% |
19 |
19 |
0 |
|
0% |
14 |
0 |
|
0% |
| extras/models/configs.py |
(no function) |
|
100% |
95 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/customfields.py |
CustomFieldManager.get_for_model |
|
100% |
8 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| extras/models/customfields.py |
CustomFieldManager.get_defaults_for_model |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/customfields.py |
CustomFieldManager.clear_cache |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.search_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.choices |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.get_ui_visible_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.get_ui_editable_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.get_choice_label |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.get_choice_color |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.resolve_selection_value |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.data_lock_key |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField._try_lock_data |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField._lock_status |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField._update_object_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField._exceeds_inline_limit |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.provision_data |
|
0% |
18 |
18 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.remove_data |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.populate_initial_data |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.remove_stale_data |
|
0% |
3 |
3 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.rename_object_data |
|
0% |
3 |
3 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.delete |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField._delete_row |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.clean |
|
0% |
38 |
38 |
0 |
|
0% |
36 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.serialize |
|
0% |
13 |
13 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.deserialize |
|
0% |
19 |
19 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.to_form_field |
|
0% |
68 |
68 |
0 |
|
0% |
46 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.to_filter |
|
0% |
37 |
37 |
0 |
|
0% |
30 |
0 |
|
0% |
| extras/models/customfields.py |
CustomField.validate |
|
0% |
67 |
67 |
0 |
|
0% |
66 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.choices |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.colors |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.get_choice_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.choices_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.values |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.clean |
|
0% |
39 |
39 |
0 |
|
0% |
36 |
0 |
|
0% |
| extras/models/customfields.py |
CustomFieldChoiceSet.save |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/customfields.py |
(no function) |
|
100% |
141 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/dashboard.py |
Dashboard.get_widget |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/dashboard.py |
Dashboard.get_layout |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/dashboard.py |
Dashboard.add_widget |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/dashboard.py |
Dashboard.delete_widget |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/dashboard.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/mixins.py |
CustomStoragesLoader.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
CustomStoragesLoader.create_module |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
CustomStoragesLoader.exec_module |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
PythonModuleMixin.get_jobs |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
PythonModuleMixin.path |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
PythonModuleMixin.python_name |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/mixins.py |
PythonModuleMixin.get_module |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin.get_context |
|
0% |
15 |
15 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin.clean |
|
0% |
11 |
11 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin._filter_environment_params |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin._resolve_mapped_params |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin._resolve_finalize |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin.get_environment_params |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin.render |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/mixins.py |
RenderTemplateMixin.render_to_response |
|
0% |
15 |
15 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/models/mixins.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/models.py |
EventRule.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
EventRule.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
EventRule.action_provider |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
EventRule.action_is_available |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
EventRule.get_action_type_display |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
EventRule.get_action_type_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
EventRule.clean |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/models.py |
EventRule.eval_conditions |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
Webhook.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
Webhook.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
Webhook.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
Webhook.clean |
|
46% |
24 |
13 |
0 |
|
36% |
14 |
5 |
|
42% |
| extras/models/models.py |
Webhook.render_headers |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/models.py |
Webhook.render_body |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
Webhook.render_payload_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
CustomLink.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
CustomLink.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
CustomLink.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
CustomLink.render |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/models.py |
ExportTemplate.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ExportTemplate.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ExportTemplate.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ExportTemplate.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
ExportTemplate.sync_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ExportTemplate.get_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
SavedFilter.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
SavedFilter.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
SavedFilter.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
SavedFilter.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
SavedFilter.url_params |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
TableConfig.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
TableConfig.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
TableConfig.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
TableConfig.table_class |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
TableConfig.ordering_items |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/models.py |
TableConfig.clean |
|
0% |
14 |
14 |
0 |
|
0% |
14 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment._image_identity |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.delete |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.filename |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.html_tag |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment._read_image_size |
|
0% |
12 |
12 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.size |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.save |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/models/models.py |
ImageAttachment.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
JournalEntry.__str__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
JournalEntry.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
JournalEntry.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
JournalEntry.get_kind_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
Bookmark.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
Bookmark.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/models.py |
Bookmark.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/models.py |
(no function) |
|
100% |
243 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/notifications.py |
get_event_type_choices |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/notifications.py |
Notification.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
Notification.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
Notification.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/notifications.py |
Notification.save |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/notifications.py |
Notification.event |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
Notification.get_object_repr |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
NotificationGroup.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
NotificationGroup.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
NotificationGroup.members |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
NotificationGroup.notify |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/notifications.py |
Subscription.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/notifications.py |
Subscription.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/notifications.py |
Subscription.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/notifications.py |
(no function) |
|
100% |
73 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/scripts.py |
Script.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
Script.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
Script.result |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
Script.python_class |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
Script.delete |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModuleManager.get_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/scripts.py |
ScriptModule.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.delete |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.ordered_scripts |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.module_scripts |
|
0% |
15 |
15 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.module_scripts._get_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.sync_classes |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.sync_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
ScriptModule.save |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/scripts.py |
(no function) |
|
100% |
60 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/search.py |
CachedValue.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/search.py |
CachedValue.display_attrs |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/models/search.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/models/tags.py |
Tag.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/tags.py |
Tag.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/models/tags.py |
Tag.slugify |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/models/tags.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/querysets.py |
ConfigContextQuerySet.get_for_object |
|
94% |
18 |
1 |
0 |
|
50% |
2 |
1 |
|
90% |
| extras/querysets.py |
ConfigContextModelQuerySet.annotate_config_context_data |
|
100% |
5 |
0 |
0 |
|
50% |
2 |
1 |
|
86% |
| extras/querysets.py |
ConfigContextModelQuerySet._get_config_context_filters |
|
100% |
13 |
0 |
0 |
|
75% |
4 |
1 |
|
94% |
| extras/querysets.py |
NotificationQuerySet.unread |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/querysets.py |
SharedObjectQuerySet.restrict_to_shared |
|
40% |
5 |
3 |
0 |
|
25% |
4 |
1 |
|
33% |
| extras/querysets.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/reports.py |
Report.log |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/reports.py |
Report.log_success |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/reports.py |
Report.log_info |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/reports.py |
Report.log_warning |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/reports.py |
Report.log_failure |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/reports.py |
Report.log_debug |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/reports.py |
(no function) |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
ScriptVariable.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/scripts.py |
ScriptVariable.as_field |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/scripts.py |
StringVar.__init__ |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/scripts.py |
TextVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
IntegerVar.__init__ |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/scripts.py |
DecimalVar.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/scripts.py |
BooleanVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
ChoiceVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
DateVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
DateTimeVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
MultiChoiceVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
ObjectVar.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
IPNetworkVar.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.module |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.class_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.full_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.root_module |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.description |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.field_order |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.fieldsets |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.commit_default |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.job_timeout |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.scheduling_enabled |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.notifications_default |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.validate_meta |
|
0% |
17 |
17 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.filename |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.findsource |
|
0% |
16 |
16 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.source |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript._get_vars |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.run |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.get_job_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.get_fieldsets |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.as_form |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/scripts.py |
BaseScript._log |
|
0% |
12 |
12 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.log_debug |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.log_success |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.log_info |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.log_warning |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.log_failure |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.run_tests |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.pre_run |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
BaseScript.post_run |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
is_variable |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
get_module_and_script |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/scripts.py |
prepare_script_form |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/scripts.py |
(no function) |
|
100% |
127 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/search.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
handle_cf_object_types_changed |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/signals.py |
handle_cf_renamed |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/signals.py |
handle_cf_deleted |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/signals.py |
handle_cf_cache_invalidation |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/signals.py |
run_save_validators |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
validate_assigned_tags |
|
33% |
6 |
4 |
0 |
|
17% |
6 |
1 |
|
25% |
| extras/signals.py |
invalidate_on_configcontext_save |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/signals.py |
invalidate_on_configcontext_delete |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/signals.py |
invalidate_on_configcontext_m2m_change |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/signals.py |
_connect_configcontext_m2m_handlers |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/signals.py |
_connect_configcontext_m2m_handlers._handler |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/signals.py |
_changed_fields |
|
75% |
8 |
2 |
0 |
|
67% |
6 |
2 |
|
71% |
| extras/signals.py |
_make_object_save_handler |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
_make_object_save_handler._handler |
|
100% |
2 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/signals.py |
_connect_object_save_handlers |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/signals.py |
invalidate_on_device_vm_tag_change |
|
75% |
8 |
2 |
0 |
|
67% |
6 |
2 |
|
71% |
| extras/signals.py |
_make_direct_upstream_handler |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
_make_direct_upstream_handler._handler |
|
25% |
8 |
6 |
0 |
|
17% |
6 |
1 |
|
21% |
| extras/signals.py |
_make_reparent_handler |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
_make_reparent_handler._handler |
|
15% |
13 |
11 |
0 |
|
12% |
8 |
1 |
|
14% |
| extras/signals.py |
_connect_upstream_handlers |
|
100% |
9 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| extras/signals.py |
_make_upstream_delete_handler |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
_make_upstream_delete_handler._handler |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/signals.py |
_connect_upstream_delete_handlers |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| extras/signals.py |
process_job_start_event_rules |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/signals.py |
process_job_end_event_rules |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/signals.py |
notify_object_changed |
|
85% |
13 |
2 |
0 |
|
88% |
8 |
1 |
|
86% |
| extras/signals.py |
(no function) |
|
100% |
57 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/storage.py |
ScriptFileSystemStorage.base_location |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/storage.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/tables/__init__.py |
(no function) |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/tables/columns.py |
CustomFieldStatusColumn.render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/columns.py |
CustomFieldStatusColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/columns.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/tables/tables.py |
ImageAttachmentTable.render_size |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
ImageAttachmentTable.value_size |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
SavedFilterTable.value_parameters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
EventRuleTable.render_action_type |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/tables/tables.py |
EventRuleTable.value_action_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
ScriptResultsTable.render_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
ScriptResultsTable.render_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
ReportResultsTable.render_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
ReportResultsTable.render_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/tables/tables.py |
(no function) |
|
100% |
279 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/templatetags/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/templatetags/custom_links.py |
custom_links |
|
0% |
30 |
30 |
0 |
|
0% |
18 |
0 |
|
0% |
| extras/templatetags/custom_links.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/templatetags/dashboard.py |
render_widget |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/templatetags/dashboard.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/templatetags/log_levels.py |
log_level |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/templatetags/log_levels.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/ui/panels.py |
CustomFieldsPanel.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
CustomFieldsPanel.should_render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
ImageAttachmentsPanel.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/ui/panels.py |
TagsPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
CustomFieldRelatedObjectsPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
CustomFieldChoiceSetChoicesPanel.get_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
TableConfigColumnsPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
TableConfigOrderingPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
WebhookTimeoutAttr.get_value |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/ui/panels.py |
EventRuleEventTypesPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
TagItemTypesPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
ConfigContextAssignmentPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/ui/panels.py |
(no function) |
|
100% |
210 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/utils.py |
SharedObjectViewMixin.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/utils.py |
filename_from_model |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/utils.py |
filename_from_object |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/utils.py |
is_taggable |
|
100% |
4 |
0 |
0 |
|
75% |
4 |
1 |
|
88% |
| extras/utils.py |
_build_image_attachment_path |
|
0% |
16 |
16 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/utils.py |
image_upload |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/utils.py |
is_script |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/utils.py |
validate_script_content |
|
25% |
4 |
3 |
0 |
|
100% |
0 |
0 |
|
25% |
| extras/utils.py |
is_report |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/utils.py |
run_validators |
|
20% |
10 |
8 |
0 |
|
12% |
8 |
1 |
|
17% |
| extras/utils.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/validators.py |
IsEqualValidator.compare |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/validators.py |
IsNotEqualValidator.compare |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/validators.py |
IsEmptyValidator.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/validators.py |
IsEmptyValidator.__call__ |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/validators.py |
IsNotEmptyValidator.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/validators.py |
IsNotEmptyValidator.__call__ |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/validators.py |
CustomValidator.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/validators.py |
CustomValidator.__call__ |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| extras/validators.py |
CustomValidator._get_request_attr |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/validators.py |
CustomValidator._get_instance_attr |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/validators.py |
CustomValidator.get_validator |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/validators.py |
CustomValidator.validate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/validators.py |
CustomValidator.fail |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/validators.py |
(no function) |
|
100% |
34 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/views.py |
CustomFieldView.get_extra_context |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
CustomFieldChoiceSetView.get_extra_context |
|
0% |
12 |
12 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
SavedFilterEditView.alter_object |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
TableConfigView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
TableConfigEditView.get |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
TableConfigEditView.alter_object |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
BookmarkCreateView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
BookmarkCreateView.alter_object |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
BookmarkDeleteView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
BookmarkBulkDeleteView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
NotificationsView.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
NotificationReadView.get |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
NotificationDismissAllView.get |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/views.py |
NotificationDismissView.get |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/views.py |
NotificationDeleteView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
NotificationBulkDeleteView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
SubscriptionCreateView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
SubscriptionCreateView.alter_object |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
SubscriptionDeleteView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
SubscriptionBulkDeleteView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
TagView.get_extra_context |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ConfigContextView.get_extra_context |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/views.py |
ObjectConfigContextView.get_extra_context |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| extras/views.py |
ObjectRenderConfigView.get |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
ObjectRenderConfigView.get_extra_context_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ObjectRenderConfigView.get_extra_context |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/views.py |
ImageAttachmentEditView.alter_object |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
ImageAttachmentEditView.get_extra_addanother_params |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
JournalEntryEditView.alter_object |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
JournalEntryEditView.get_return_url |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
JournalEntryDeleteView.get_return_url |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
DashboardResetView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
DashboardResetView.post |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
DashboardWidgetAddView.get |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
DashboardWidgetAddView.post |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/views.py |
DashboardWidgetConfigView.get |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
DashboardWidgetConfigView.post |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
DashboardWidgetDeleteView.get |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
DashboardWidgetDeleteView.post |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
ScriptModuleCreateView.alter_object |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ScriptListView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ScriptListView.get |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
BaseScriptView.get_object |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| extras/views.py |
BaseScriptView._get_script_class |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
ScriptView.get |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
ScriptView.post |
|
0% |
23 |
23 |
0 |
|
0% |
12 |
0 |
|
0% |
| extras/views.py |
ScriptSourceView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ScriptJobsView.get |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ScriptResultView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ScriptResultView.get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/views.py |
ScriptResultView.get_table |
|
0% |
33 |
33 |
0 |
|
0% |
20 |
0 |
|
0% |
| extras/views.py |
ScriptResultView.get |
|
0% |
26 |
26 |
0 |
|
0% |
16 |
0 |
|
0% |
| extras/views.py |
RenderMarkdownView.post |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| extras/views.py |
(no function) |
|
100% |
737 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| extras/webhooks.py |
register_webhook_callback |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/webhooks.py |
generate_signature |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| extras/webhooks.py |
send_webhook |
|
0% |
57 |
57 |
0 |
|
0% |
18 |
0 |
|
0% |
| extras/webhooks.py |
(no function) |
|
0% |
18 |
18 |
0 |
|
100% |
0 |
0 |
|
0% |
| generate_secret_key.py |
(no function) |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/field_serializers.py |
IPAddressField.to_internal_value |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/field_serializers.py |
IPAddressField.to_representation |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/field_serializers.py |
IPNetworkField.to_internal_value |
|
67% |
6 |
2 |
0 |
|
100% |
0 |
0 |
|
67% |
| ipam/api/field_serializers.py |
IPNetworkField.to_representation |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/field_serializers.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/asns.py |
AvailableASNSerializer.to_representation |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/serializers_/asns.py |
(no function) |
|
100% |
43 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/fhrpgroups.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/ip.py |
PrefixLengthSerializer.to_internal_value |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| ipam/api/serializers_/ip.py |
AvailablePrefixSerializer.to_representation |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| ipam/api/serializers_/ip.py |
AvailableIPRequestSerializer.to_internal_value |
|
71% |
14 |
4 |
0 |
|
60% |
10 |
2 |
|
67% |
| ipam/api/serializers_/ip.py |
AvailableIPSerializer.to_representation |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| ipam/api/serializers_/ip.py |
(no function) |
|
100% |
87 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/nested.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/roles.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/services.py |
PortMappingsField.to_internal_value |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/services.py |
PortMappingsSerializerMixin.validate |
|
0% |
23 |
23 |
0 |
|
0% |
14 |
0 |
|
0% |
| ipam/api/serializers_/services.py |
(no function) |
|
100% |
35 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/vlans.py |
AvailableVLANSerializer.to_representation |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/vlans.py |
CreateAvailableVLANSerializer.validate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/serializers_/vlans.py |
(no function) |
|
100% |
66 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/serializers_/vrfs.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/urls.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
IPAMRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
PrefixViewSet.get_serializer_class |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| ipam/api/views.py |
IPAddressViewSet.create |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
IPAddressViewSet.update |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
IPAddressViewSet.destroy |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
get_results_limit |
|
75% |
8 |
2 |
0 |
|
50% |
2 |
1 |
|
70% |
| ipam/api/views.py |
AvailableObjectsView.get_parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
AvailableObjectsView.get_available_objects |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
AvailableObjectsView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
AvailableObjectsView.check_sufficient_available |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableObjectsView.prep_object_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
AvailableObjectsView.get |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableObjectsView.post |
|
81% |
27 |
5 |
0 |
|
62% |
8 |
3 |
|
77% |
| ipam/api/views.py |
AvailableASNsView.get_parent |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableASNsView.get_available_objects |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
AvailableASNsView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/api/views.py |
AvailableASNsView.prep_object_data |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/api/views.py |
AvailableASNsView.get |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableASNsView.post |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailablePrefixesView.get_parent |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailablePrefixesView.get_available_objects |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailablePrefixesView.check_sufficient_available |
|
60% |
5 |
2 |
0 |
|
25% |
4 |
1 |
|
44% |
| ipam/api/views.py |
AvailablePrefixesView.get_extra_context |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailablePrefixesView.prep_object_data |
|
50% |
6 |
3 |
0 |
|
25% |
4 |
1 |
|
40% |
| ipam/api/views.py |
AvailablePrefixesView.get |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailablePrefixesView.post |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableIPAddressesView.get_available_objects |
|
100% |
6 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| ipam/api/views.py |
AvailableIPAddressesView.get_extra_context |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableIPAddressesView.prep_object_data |
|
60% |
5 |
2 |
0 |
|
50% |
2 |
1 |
|
57% |
| ipam/api/views.py |
AvailableIPAddressesView.get |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableIPAddressesView.post |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
PrefixAvailableIPAddressesView.get_parent |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
IPRangeAvailableIPAddressesView.get_parent |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableVLANsView.get_parent |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableVLANsView.get_available_objects |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableVLANsView.get_extra_context |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableVLANsView.prep_object_data |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/api/views.py |
AvailableVLANsView.get |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
AvailableVLANsView.post |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/api/views.py |
(no function) |
|
100% |
176 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/apps.py |
IPAMConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/apps.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/choices.py |
(no function) |
|
100% |
65 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/constants.py |
(no function) |
|
100% |
18 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
BaseIPField.python_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/fields.py |
BaseIPField.from_db_value |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
BaseIPField.get_internal_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
BaseIPField.to_python |
|
38% |
8 |
5 |
0 |
|
50% |
2 |
1 |
|
40% |
| ipam/fields.py |
BaseIPField.get_prep_value |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| ipam/fields.py |
BaseIPField.form_class |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
BaseIPField.formfield |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
IPNetworkField.db_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
IPAddressField.db_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
ASNField.formfield |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/fields.py |
ASNField.to_asdot |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/fields.py |
(no function) |
|
100% |
64 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/filtersets.py |
VRFFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
RouteTargetFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
AggregateFilterSet.search |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
AggregateFilterSet.filter_prefix |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ASNRangeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ASNFilterSet.search |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
PrefixFilterSet.search |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
PrefixFilterSet.filter_prefix |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
PrefixFilterSet.search_within |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
PrefixFilterSet.search_within_include |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
PrefixFilterSet.search_contains |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
PrefixFilterSet.filter_present_in_vrf |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPRangeFilterSet.search |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPRangeFilterSet.search_contains |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPRangeFilterSet.filter_address |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
IPRangeFilterSet.search_by_parent |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.search_by_parent |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.parse_inet_addresses |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.filter_address |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.filter_present_in_vrf |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.filter_device |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet.filter_virtual_machine |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet._assigned_to_interface |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
IPAddressFilterSet._assigned |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
FHRPGroupFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
FHRPGroupFilterSet.filter_related_ip |
|
43% |
7 |
4 |
0 |
|
25% |
4 |
1 |
|
36% |
| ipam/filtersets.py |
FHRPGroupAssignmentFilterSet.filter_device |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
FHRPGroupAssignmentFilterSet.filter_virtual_machine |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
VLANGroupFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
VLANGroupFilterSet.filter_scope |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/filtersets.py |
VLANFilterSet.search |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
VLANFilterSet.get_for_site |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
VLANFilterSet.get_for_site_group |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
VLANFilterSet.get_for_device |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
VLANFilterSet.get_for_virtualmachine |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
VLANFilterSet.filter_related_to_site |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| ipam/filtersets.py |
VLANFilterSet.filter_related_to_site_negated |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| ipam/filtersets.py |
VLANFilterSet.filter_interface_id |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
VLANFilterSet.filter_vminterface_id |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
VLANTranslationPolicyFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
VLANTranslationRuleFilterSet.search |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_queryset |
|
86% |
7 |
1 |
0 |
|
50% |
2 |
1 |
|
78% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_noop |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_protocol_noop |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_port_mappings |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_port_mappings_negated |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_protocol_negated |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ServicePortMappingFilterMixin.filter_port_negated |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| ipam/filtersets.py |
ServiceTemplateFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ServiceFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/filtersets.py |
ServiceFilterSet.filter_device |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
ServiceFilterSet.filter_fhrp_group |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
ServiceFilterSet.filter_virtual_machine |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/filtersets.py |
(no function) |
|
100% |
333 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/formfields.py |
IPAddressFormField.to_python |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/formfields.py |
IPNetworkFormField.to_python |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/formfields.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/__init__.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/bulk_create.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/bulk_edit.py |
(no function) |
|
100% |
140 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/bulk_import.py |
PrefixImportForm.__init__ |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
IPAddressImportForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
IPAddressImportForm.clean_is_primary |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
IPAddressImportForm.clean_is_oob |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
IPAddressImportForm.clean |
|
0% |
16 |
16 |
0 |
|
0% |
10 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
IPAddressImportForm.save |
|
0% |
33 |
33 |
0 |
|
0% |
22 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
ServicePortMappingsImportMixin.clean_port_mappings |
|
0% |
15 |
15 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
ServiceImportForm.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
ServiceImportForm.save |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
ServiceImportForm.clean |
|
0% |
13 |
13 |
0 |
|
0% |
10 |
0 |
|
0% |
| ipam/forms/bulk_import.py |
(no function) |
|
100% |
149 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/fields.py |
PortMappingField.prepare_value |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/forms/fields.py |
PortMappingField.to_python |
|
0% |
27 |
27 |
0 |
|
0% |
16 |
0 |
|
0% |
| ipam/forms/fields.py |
PortMappingField.has_changed |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/forms/fields.py |
PortMappingField.has_changed.normalize |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/forms/fields.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/filtersets.py |
(no function) |
|
100% |
170 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/model_forms.py |
ASNForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/forms/model_forms.py |
ASNForm.save |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/forms/model_forms.py |
PrefixForm.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/forms/model_forms.py |
IPAddressForm.__init__ |
|
0% |
25 |
25 |
0 |
|
0% |
20 |
0 |
|
0% |
| ipam/forms/model_forms.py |
IPAddressForm.clean |
|
0% |
19 |
19 |
0 |
|
0% |
14 |
0 |
|
0% |
| ipam/forms/model_forms.py |
IPAddressForm.save |
|
0% |
26 |
26 |
0 |
|
0% |
16 |
0 |
|
0% |
| ipam/forms/model_forms.py |
FHRPGroupForm.save |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/forms/model_forms.py |
FHRPGroupForm.clean |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/forms/model_forms.py |
FHRPGroupAssignmentForm.clean_group |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/forms/model_forms.py |
VLANBulkAddForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/forms/model_forms.py |
ServiceForm.__init__ |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/forms/model_forms.py |
ServiceCreateForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/forms/model_forms.py |
ServiceCreateForm.clean |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/forms/model_forms.py |
(no function) |
|
100% |
188 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/forms/widgets.py |
PortMappingWidget.id_for_label |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/forms/widgets.py |
PortMappingWidget.get_context |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/forms/widgets.py |
PortMappingWidget.value_from_datadict |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/forms/widgets.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/graphql/enums.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/graphql/filters.py |
AggregateFilter.contains |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/graphql/filters.py |
AggregateFilter.family |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
FHRPGroupAssignmentFilter.device_id |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
FHRPGroupAssignmentFilter.device |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
FHRPGroupAssignmentFilter.virtual_machine_id |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
FHRPGroupAssignmentFilter.virtual_machine |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
FHRPGroupAssignmentFilter.filter_device |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/graphql/filters.py |
IPAddressFilter.assigned |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
IPAddressFilter.parent |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/graphql/filters.py |
IPAddressFilter.family |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
IPRangeFilter.parent |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/graphql/filters.py |
IPRangeFilter.contains |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/graphql/filters.py |
PrefixFilter.contains |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/graphql/filters.py |
PrefixFilter.family |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_supplied |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_port_mapping_args |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_owns_predicate |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/graphql/filters.py |
_port_mapping_prefix_q |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.correlated |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.protocol |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.port |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.port__gt |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.port__gte |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.port__lt |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.port__lte |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
_make_port_mapping_filters.port_mappings |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/filters.py |
(no function) |
|
97% |
192 |
6 |
0 |
|
50% |
2 |
1 |
|
96% |
| ipam/graphql/mixins.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/graphql/schema.py |
(no function) |
|
100% |
41 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/graphql/types.py |
AggregateType.family |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
FHRPGroupAssignmentType.interface |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
IPAddressType.family |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
IPAddressType.assigned_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
PrefixType.family |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
PrefixType.scope |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
ServiceType.protocol |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
ServiceType.ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
ServiceType.parent |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
ServiceTemplateType.protocol |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
ServiceTemplateType.ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
VLANType.qinq_svlan |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
VLANGroupType.scope |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/graphql/types.py |
(no function) |
|
94% |
87 |
5 |
0 |
|
50% |
2 |
1 |
|
93% |
| ipam/lookups.py |
NetFieldDecoratorMixin.process_lhs |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
IExact.get_rhs_op |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
IEndsWith.get_rhs_op |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
IStartsWith.get_rhs_op |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
NetContainsOrEquals.as_sql |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/lookups.py |
NetContains.as_sql |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
NetContained.as_sql |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/lookups.py |
NetContainedOrEqual.as_sql |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/lookups.py |
NetHost.as_sql |
|
100% |
7 |
0 |
0 |
|
50% |
2 |
1 |
|
89% |
| ipam/lookups.py |
NetIn.get_prep_lookup |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
NetIn.as_sql |
|
0% |
16 |
16 |
0 |
|
0% |
8 |
0 |
|
0% |
| ipam/lookups.py |
NetIn.create_in_clause |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/lookups.py |
NetHostContained.as_sql |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
NetHostBetween.get_prep_lookup |
|
56% |
9 |
4 |
0 |
|
50% |
4 |
2 |
|
54% |
| ipam/lookups.py |
NetHostBetween.as_sql |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/lookups.py |
NetFamily.output_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
NetMaskLength.output_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/lookups.py |
(no function) |
|
100% |
64 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/management/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/management/commands/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/management/commands/rebuild_prefixes.py |
Command.handle |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/management/commands/rebuild_prefixes.py |
(no function) |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/managers.py |
IPAddressManager.get_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/managers.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/asns.py |
ASNRange.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.range |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.start_asdot |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.end_asdot |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.range_as_string |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.range_as_string_with_asdot |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.get_child_asns |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASNRange.get_available_asns |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASN.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASN.asn_asdot |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
ASN.asn_with_asdot |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/asns.py |
ASN.prefixed_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/asns.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/fhrp.py |
FHRPGroup.__str__ |
|
89% |
9 |
1 |
0 |
|
67% |
6 |
2 |
|
80% |
| ipam/models/fhrp.py |
FHRPGroupAssignment.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/fhrp.py |
FHRPGroupAssignment.get_absolute_url |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/fhrp.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
GetAvailablePrefixesMixin.get_available_prefixes |
|
100% |
5 |
0 |
0 |
|
50% |
2 |
1 |
|
86% |
| ipam/models/ip.py |
GetAvailablePrefixesMixin.get_first_available_prefix |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Aggregate.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Aggregate.clean |
|
0% |
14 |
14 |
0 |
|
0% |
12 |
0 |
|
0% |
| ipam/models/ip.py |
Aggregate.family |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/models/ip.py |
Aggregate.ipv6_full |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Aggregate.get_child_prefixes |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Aggregate.get_utilization |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Role.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.clean |
|
67% |
9 |
3 |
0 |
|
50% |
8 |
4 |
|
59% |
| ipam/models/ip.py |
Prefix.save |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.family |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| ipam/models/ip.py |
Prefix.mask_length |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| ipam/models/ip.py |
Prefix.ipv6_full |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.depth |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.children |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix._set_prefix_length |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.aggregate |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.get_parents |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.get_children |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.get_duplicates |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.get_child_prefixes |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.usable_ip_bounds |
|
80% |
10 |
2 |
0 |
|
50% |
4 |
2 |
|
71% |
| ipam/models/ip.py |
Prefix.usable_size |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.get_child_ranges |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.get_child_ips |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| ipam/models/ip.py |
Prefix.get_available_ips |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.iter_available_ips |
|
100% |
2 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix.get_available_ip_count |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.get_ip_usage_summary |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.get_first_available_ip |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix.get_utilization |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/models/ip.py |
Prefix._available_intervals |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
Prefix._get_utilization_denominator |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.clean |
|
0% |
14 |
14 |
0 |
|
0% |
12 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.save |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.family |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.range |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.mask_length |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.name |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange._set_prefix_length |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.first_available_ip |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.utilization |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.get_child_ips |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.get_available_ips |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.iter_available_ips |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.get_available_ip_count |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange.get_first_available_ip |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange._available_intervals |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPRange._occupied_host_count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
IPAddress.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
IPAddress.ipv6_full |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.get_duplicates |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
IPAddress.get_next_available_ip |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.get_related_ips |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.clean |
|
56% |
41 |
18 |
0 |
|
39% |
38 |
15 |
|
48% |
| ipam/models/ip.py |
IPAddress.save |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
IPAddress.clone |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.to_objectchange |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/ip.py |
IPAddress.family |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| ipam/models/ip.py |
IPAddress.is_oob_ip |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.is_primary_ip |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress._set_mask_length |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
IPAddress.get_role_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/ip.py |
(no function) |
|
100% |
196 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/services.py |
ServiceBase.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase.clean |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase._normalize_mapping |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase._add_port_mappings |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase._remove_port_mappings |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase.port_mappings_list |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase._legacy_protocol_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase.protocol |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
ServiceBase.ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/services.py |
(no function) |
|
100% |
53 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/vlans.py |
default_vid_ranges |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/vlans.py |
VLANGroup.clean |
|
56% |
16 |
7 |
0 |
|
57% |
14 |
6 |
|
57% |
| ipam/models/vlans.py |
VLANGroup.save |
|
91% |
11 |
1 |
0 |
|
75% |
4 |
1 |
|
87% |
| ipam/models/vlans.py |
VLANGroup.get_available_vids |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| ipam/models/vlans.py |
VLANGroup.get_next_available_vid |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/models/vlans.py |
VLANGroup.get_child_vlans |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLANGroup.vid_ranges_items |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLANGroup.vid_ranges_list |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLAN.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/vlans.py |
VLAN.clean |
|
43% |
14 |
8 |
0 |
|
31% |
16 |
5 |
|
37% |
| ipam/models/vlans.py |
VLAN.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLAN.get_qinq_role_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLAN.get_interfaces |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLAN.get_vminterfaces |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLAN.l2vpn_termination |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/vlans.py |
VLANTranslationPolicy.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/vlans.py |
VLANTranslationRule.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
VLANTranslationRule.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vlans.py |
(no function) |
|
100% |
89 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/models/vrfs.py |
VRF.__str__ |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| ipam/models/vrfs.py |
RouteTarget.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/models/vrfs.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/querysets.py |
_merge_intervals |
|
20% |
10 |
8 |
0 |
|
17% |
6 |
1 |
|
19% |
| ipam/querysets.py |
ASNRangeQuerySet.annotate_asn_counts |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/querysets.py |
IPAddressQuerySet.count_distinct_hosts |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/querysets.py |
IPAddressQuerySet.count_distinct_hosts_pair |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/querysets.py |
IPAddressQuerySet._iter_distinct_hosts |
|
64% |
11 |
4 |
0 |
|
50% |
6 |
1 |
|
59% |
| ipam/querysets.py |
IPAddressQuerySet.available_intervals |
|
73% |
22 |
6 |
0 |
|
56% |
16 |
7 |
|
66% |
| ipam/querysets.py |
IPAddressQuerySet.first_available_host |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/querysets.py |
IPRangeQuerySet.get_intervals |
|
23% |
13 |
10 |
0 |
|
10% |
10 |
1 |
|
17% |
| ipam/querysets.py |
PrefixQuerySet.annotate_hierarchy |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/querysets.py |
VLANGroupQuerySet.annotate_utilization |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/querysets.py |
VLANQuerySet.get_for_site |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/querysets.py |
VLANQuerySet.get_for_site_group |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/querysets.py |
VLANQuerySet.get_for_device |
|
0% |
16 |
16 |
0 |
|
0% |
12 |
0 |
|
0% |
| ipam/querysets.py |
VLANQuerySet.get_for_virtualmachine |
|
0% |
28 |
28 |
0 |
|
0% |
20 |
0 |
|
0% |
| ipam/querysets.py |
VLANQuerySet.get_related_to_sites |
|
0% |
16 |
16 |
0 |
|
0% |
10 |
0 |
|
0% |
| ipam/querysets.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/search.py |
(no function) |
|
100% |
87 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/signals.py |
update_parents_children |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| ipam/signals.py |
update_children_depth |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| ipam/signals.py |
handle_prefix_saved |
|
57% |
7 |
3 |
0 |
|
75% |
4 |
1 |
|
64% |
| ipam/signals.py |
handle_prefix_deleted |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/signals.py |
clear_primary_ip |
|
33% |
9 |
6 |
0 |
|
50% |
4 |
2 |
|
38% |
| ipam/signals.py |
clear_oob_ip |
|
25% |
4 |
3 |
0 |
|
50% |
2 |
1 |
|
33% |
| ipam/signals.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/asn.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/fhrp.py |
FHRPGroupTable.value_ip_addresses |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/tables/fhrp.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/ip.py |
AnnotatedIPAddressTable.render_pk |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/tables/ip.py |
(no function) |
|
100% |
119 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/services.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/template_code.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/vlans.py |
(no function) |
|
100% |
82 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/tables/vrfs.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/ui/attrs.py |
VRFDisplayAttr.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/ui/attrs.py |
VRFDisplayAttr.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/ui/attrs.py |
VRFDisplayAttr.render |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/ui/attrs.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/ui/panels.py |
VLANCustomerVLANsPanel.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/ui/panels.py |
VLANCustomerVLANsPanel.should_render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/ui/panels.py |
(no function) |
|
100% |
129 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/utils.py |
AvailableIPSpace.title |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/utils.py |
add_requested_prefixes |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/utils.py |
annotate_ip_space |
|
0% |
27 |
27 |
0 |
|
0% |
18 |
0 |
|
0% |
| ipam/utils.py |
available_vlans_from_range |
|
0% |
15 |
15 |
0 |
|
0% |
10 |
0 |
|
0% |
| ipam/utils.py |
add_available_vlans |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/utils.py |
rebuild_prefixes |
|
0% |
25 |
25 |
0 |
|
0% |
16 |
0 |
|
0% |
| ipam/utils.py |
rebuild_prefixes.contains |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/utils.py |
rebuild_prefixes.push_to_stack |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/utils.py |
get_next_available_prefix |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/utils.py |
split_port_mapping |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/utils.py |
normalize_port_mapping |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/utils.py |
group_port_mappings |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/utils.py |
group_port_mapping_rows |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/utils.py |
sorted_int_ports |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/utils.py |
legacy_protocol_and_ports |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/utils.py |
PortMappingMatch.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/utils.py |
PortMappingMatch.as_sql |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/utils.py |
port_mapping_q |
|
82% |
11 |
2 |
0 |
|
50% |
4 |
2 |
|
73% |
| ipam/utils.py |
expand_port_mapping |
|
0% |
12 |
12 |
0 |
|
0% |
8 |
0 |
|
0% |
| ipam/utils.py |
(no function) |
|
100% |
32 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/validators.py |
validate_port_mappings |
|
46% |
24 |
13 |
0 |
|
30% |
10 |
1 |
|
41% |
| ipam/validators.py |
prefix_validator |
|
50% |
2 |
1 |
0 |
|
50% |
2 |
1 |
|
50% |
| ipam/validators.py |
MaxPrefixLengthValidator.compare |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/validators.py |
MinPrefixLengthValidator.compare |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/validators.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| ipam/views.py |
VRFView.get_extra_context |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
RIRView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
ASNRangeASNsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
ASNView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
ChildAvailabilityMixin._get_detection_filterset |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/views.py |
ChildAvailabilityMixin._has_active_child_filters |
|
0% |
18 |
18 |
0 |
|
0% |
14 |
0 |
|
0% |
| ipam/views.py |
AggregatePrefixesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
AggregatePrefixesView.prep_table_data |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
AggregatePrefixesView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
RoleView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
PrefixView.get_extra_context |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
PrefixPrefixesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
PrefixPrefixesView.prep_table_data |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
PrefixPrefixesView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
PrefixIPRangesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
PrefixIPRangesView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
PrefixIPAddressesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
PrefixIPAddressesView.prep_table_data |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
PrefixIPAddressesView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
IPRangeView.get_extra_context |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
IPRangeIPAddressesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
IPAddressView.get_extra_context |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/views.py |
IPAddressEditView.alter_object |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/views.py |
IPAddressEditView.get_extra_addanother_params |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/views.py |
IPAddressAssignView.dispatch |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
IPAddressAssignView.get |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
IPAddressAssignView.post |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
IPAddressRelatedIPsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
VLANGroupView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
VLANGroupVLANsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
VLANGroupVLANsView.prep_table_data |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
FHRPGroupView.get_extra_context |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
FHRPGroupEditView.get_return_url |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
FHRPGroupEditView.alter_object |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
FHRPGroupAssignmentEditView.alter_object |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| ipam/views.py |
FHRPGroupAssignmentEditView.get_extra_addanother_params |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
VLANInterfacesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
VLANVMInterfacesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| ipam/views.py |
ServicePortMappingsBulkEditMixin.pre_save_operations |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| ipam/views.py |
ServiceView.get_extra_context |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| ipam/views.py |
(no function) |
|
100% |
825 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| manage.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
50% |
2 |
1 |
|
88% |
| netbox/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/__main__.py |
(no function) |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/authentication.py |
TokenAuthentication.authenticate |
|
51% |
53 |
26 |
0 |
|
47% |
34 |
10 |
|
49% |
| netbox/api/authentication.py |
TokenPermissions.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/authentication.py |
TokenPermissions._verify_write_permission |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/authentication.py |
TokenPermissions.has_permission |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/authentication.py |
TokenPermissions.has_object_permission |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/authentication.py |
TokenWritePermission.has_permission |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/authentication.py |
IsAuthenticatedOrLoginNotRequired.has_permission |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/authentication.py |
TokenScheme.get_security_definition |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/authentication.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/exceptions.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/features.py |
SyncedDataMixin.get_permissions |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/features.py |
SyncedDataMixin.sync |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/api/features.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/fields.py |
ChoiceField.__init__ |
|
100% |
9 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| netbox/api/fields.py |
ChoiceField.validate_empty_values |
|
100% |
5 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/api/fields.py |
ChoiceField.to_representation |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/fields.py |
ChoiceField.to_internal_value |
|
81% |
21 |
4 |
0 |
|
86% |
14 |
2 |
|
83% |
| netbox/api/fields.py |
ChoiceField.choices |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/fields.py |
ContentTypeField.to_internal_value |
|
86% |
7 |
1 |
0 |
|
100% |
0 |
0 |
|
86% |
| netbox/api/fields.py |
ContentTypeField.to_representation |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/fields.py |
IPNetworkSerializer.to_representation |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/fields.py |
IPNetworkSerializer.to_internal_value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/fields.py |
SerializedPKRelatedField.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/fields.py |
SerializedPKRelatedField.to_representation |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/fields.py |
RelatedObjectCountField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/fields.py |
IntegerRangeSerializer.to_internal_value |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| netbox/api/fields.py |
IntegerRangeSerializer.to_representation |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/fields.py |
AttributesField.to_internal_value |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/api/fields.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/gfk_fields.py |
GFKSerializerField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/gfk_fields.py |
GFKSerializerField.to_representation |
|
88% |
8 |
1 |
0 |
|
75% |
4 |
1 |
|
83% |
| netbox/api/gfk_fields.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/metadata.py |
BulkOperationMetadata.determine_actions |
|
79% |
14 |
3 |
0 |
|
67% |
6 |
2 |
|
75% |
| netbox/api/metadata.py |
ContentTypeMetadata.get_field_info |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/metadata.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/pagination.py |
NetBoxPagination.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/pagination.py |
NetBoxPagination.paginate_queryset |
|
86% |
29 |
4 |
0 |
|
78% |
18 |
4 |
|
83% |
| netbox/api/pagination.py |
NetBoxPagination.get_start |
|
100% |
9 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/pagination.py |
NetBoxPagination.get_limit |
|
94% |
17 |
1 |
0 |
|
70% |
10 |
3 |
|
85% |
| netbox/api/pagination.py |
NetBoxPagination.get_queryset_count |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/pagination.py |
NetBoxPagination.get_next_link |
|
45% |
11 |
6 |
0 |
|
67% |
6 |
2 |
|
53% |
| netbox/api/pagination.py |
NetBoxPagination.get_previous_link |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| netbox/api/pagination.py |
NetBoxPagination.get_schema_operation_parameters |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/pagination.py |
StripCountAnnotationsPaginator.get_queryset_count |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/pagination.py |
LimitOffsetListPagination.paginate_list |
|
91% |
11 |
1 |
0 |
|
67% |
6 |
2 |
|
82% |
| netbox/api/pagination.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/renderers.py |
FormlessBrowsableAPIRenderer.show_form_for_method |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/renderers.py |
FormlessBrowsableAPIRenderer.get_filter_form |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/renderers.py |
TextRenderer.render |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/renderers.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/routers.py |
NetBoxRouter.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/routers.py |
NetBoxRouter.get_api_root_view |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/routers.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/base.py |
BaseModelSerializer.__init__ |
|
100% |
8 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/api/serializers/base.py |
BaseModelSerializer.to_internal_value |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/serializers/base.py |
BaseModelSerializer.fields |
|
100% |
11 |
0 |
0 |
|
100% |
12 |
0 |
|
100% |
| netbox/api/serializers/base.py |
BaseModelSerializer.get_display |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/base.py |
ValidatedModelSerializer.get_unique_together_constraints |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/base.py |
ValidatedModelSerializer.validate |
|
100% |
20 |
0 |
0 |
|
100% |
14 |
0 |
|
100% |
| netbox/api/serializers/base.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/bulk.py |
BulkUpdateSchemaMixin.get_fields |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/bulk.py |
BulkPartialUpdateSchemaMixin.get_fields |
|
100% |
5 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/api/serializers/bulk.py |
get_bulk_update_serializer_class |
|
91% |
11 |
1 |
0 |
|
50% |
2 |
1 |
|
85% |
| netbox/api/serializers/bulk.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/features.py |
CustomFieldModelSerializer.many_init |
|
90% |
10 |
1 |
0 |
|
75% |
4 |
1 |
|
86% |
| netbox/api/serializers/features.py |
TaggableModelSerializer.to_internal_value |
|
86% |
7 |
1 |
0 |
|
83% |
6 |
1 |
|
85% |
| netbox/api/serializers/features.py |
TaggableModelSerializer.validate |
|
55% |
20 |
9 |
0 |
|
50% |
14 |
5 |
|
53% |
| netbox/api/serializers/features.py |
TaggableModelSerializer.create |
|
89% |
9 |
1 |
0 |
|
75% |
4 |
1 |
|
85% |
| netbox/api/serializers/features.py |
TaggableModelSerializer.update |
|
79% |
14 |
3 |
0 |
|
62% |
8 |
3 |
|
73% |
| netbox/api/serializers/features.py |
TaggableModelSerializer._save_tags |
|
67% |
6 |
2 |
0 |
|
50% |
2 |
1 |
|
62% |
| netbox/api/serializers/features.py |
ChangeLogMessageSerializer.to_internal_value |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/api/serializers/features.py |
ChangeLogMessageSerializer.save |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/serializers/features.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/fields.py |
BaseNetBoxHyperlinkedIdentityField.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/fields.py |
BaseNetBoxHyperlinkedIdentityField.get_url |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/api/serializers/fields.py |
BaseNetBoxHyperlinkedIdentityField.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/serializers/fields.py |
NetBoxAPIHyperlinkedIdentityField.get_view_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/fields.py |
NetBoxURLHyperlinkedIdentityField.get_view_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/fields.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/generic.py |
GenericObjectSerializer.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/generic.py |
GenericObjectSerializer.to_internal_value |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/serializers/generic.py |
GenericObjectSerializer.to_representation |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/api/serializers/generic.py |
GenericObjectSerializer.get_object |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/api/serializers/generic.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/models.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/nested.py |
WritableNestedSerializer.to_internal_value |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/serializers/nested.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/views.py |
APIRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/views.py |
APIRootView.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/views.py |
StatusView.get |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/views.py |
AuthenticationCheckView.get |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/views.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
ETagMixin._get_etag |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
ETagMixin._get_if_match |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/viewsets/__init__.py |
ETagMixin._validate_etag |
|
25% |
4 |
3 |
0 |
|
25% |
4 |
1 |
|
25% |
| netbox/api/viewsets/__init__.py |
ETagMixin.handle_exception |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/api/viewsets/__init__.py |
ETagMixin.retrieve |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
BaseViewSet.initial |
|
83% |
6 |
1 |
0 |
|
67% |
6 |
2 |
|
75% |
| netbox/api/viewsets/__init__.py |
BaseViewSet.initialize_request |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
BaseViewSet.get_queryset |
|
100% |
7 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
BaseViewSet.get_serializer |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
BaseViewSet.field_kwargs |
|
100% |
9 |
0 |
0 |
|
100% |
8 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.get_object_with_snapshot |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.get_queryset |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.get_serializer |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.dispatch |
|
79% |
14 |
3 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.exception_to_response |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.create |
|
93% |
14 |
1 |
0 |
|
83% |
6 |
1 |
|
90% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.perform_create |
|
80% |
10 |
2 |
0 |
|
100% |
0 |
0 |
|
80% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.update |
|
100% |
12 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.perform_update |
|
69% |
13 |
4 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.destroy |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/__init__.py |
NetBoxModelViewSet.perform_destroy |
|
75% |
12 |
3 |
0 |
|
50% |
2 |
1 |
|
71% |
| netbox/api/viewsets/__init__.py |
MPTTLockedMixin.__init_subclass__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/api/viewsets/__init__.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
resolve_bulk_error_status |
|
83% |
6 |
1 |
0 |
|
83% |
6 |
1 |
|
83% |
| netbox/api/viewsets/mixins.py |
get_non_list_response |
|
100% |
7 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
_as_field_errors |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/viewsets/mixins.py |
get_invalid_entries_response |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| netbox/api/viewsets/mixins.py |
get_duplicate_objects_response |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
get_missing_objects_response |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
discard_events_on_rollback |
|
100% |
7 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
BackgroundOperationMixin.check_background_enabled |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/api/viewsets/mixins.py |
BackgroundOperationMixin._background_requested |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/viewsets/mixins.py |
BackgroundOperationMixin._handle_background_request |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/api/viewsets/mixins.py |
BackgroundOperationMixin._enqueue_bulk_job |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/api/viewsets/mixins.py |
CustomFieldsMixin.get_serializer_context |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
ExportTemplatesMixin.list |
|
25% |
8 |
6 |
0 |
|
25% |
4 |
1 |
|
25% |
| netbox/api/viewsets/mixins.py |
BulkCreateModelMixin.bulk_create |
|
89% |
9 |
1 |
0 |
|
75% |
4 |
1 |
|
85% |
| netbox/api/viewsets/mixins.py |
BulkCreateModelMixin.perform_bulk_create |
|
78% |
27 |
6 |
0 |
|
100% |
8 |
0 |
|
83% |
| netbox/api/viewsets/mixins.py |
BulkUpdateModelMixin.get_bulk_update_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
BulkUpdateModelMixin.bulk_update |
|
91% |
23 |
2 |
0 |
|
83% |
12 |
2 |
|
89% |
| netbox/api/viewsets/mixins.py |
BulkUpdateModelMixin.perform_bulk_update |
|
31% |
26 |
18 |
0 |
|
25% |
8 |
2 |
|
29% |
| netbox/api/viewsets/mixins.py |
BulkUpdateModelMixin.get_bulk_update_serializer_class |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
BulkUpdateModelMixin.get_bulk_update_request_serializer |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
BulkUpdateModelMixin.bulk_partial_update |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
BulkDestroyModelMixin.get_bulk_destroy_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/api/viewsets/mixins.py |
BulkDestroyModelMixin.bulk_destroy |
|
79% |
19 |
4 |
0 |
|
67% |
12 |
4 |
|
74% |
| netbox/api/viewsets/mixins.py |
BulkDestroyModelMixin.perform_bulk_destroy |
|
33% |
27 |
18 |
0 |
|
33% |
6 |
2 |
|
33% |
| netbox/api/viewsets/mixins.py |
ObjectValidationMixin._validate_objects |
|
67% |
6 |
2 |
0 |
|
67% |
6 |
2 |
|
67% |
| netbox/api/viewsets/mixins.py |
(no function) |
|
100% |
58 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/authentication/__init__.py |
get_auth_backend_display |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/authentication/__init__.py |
get_saml_idps |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/authentication/__init__.py |
ObjectPermissionMixin.get_all_permissions |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/authentication/__init__.py |
ObjectPermissionMixin.get_permission_filter |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/authentication/__init__.py |
ObjectPermissionMixin.get_object_permissions |
|
0% |
13 |
13 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/authentication/__init__.py |
ObjectPermissionMixin.has_perm |
|
20% |
25 |
20 |
0 |
|
25% |
12 |
3 |
|
22% |
| netbox/authentication/__init__.py |
RemoteUserBackend.create_unknown_user |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/authentication/__init__.py |
RemoteUserBackend.configure_groups |
|
0% |
19 |
19 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/authentication/__init__.py |
RemoteUserBackend.authenticate |
|
0% |
20 |
20 |
0 |
|
0% |
12 |
0 |
|
0% |
| netbox/authentication/__init__.py |
RemoteUserBackend._is_superuser |
|
0% |
12 |
12 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/authentication/__init__.py |
RemoteUserBackend._is_staff |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/authentication/__init__.py |
RemoteUserBackend.configure_user |
|
0% |
26 |
26 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/authentication/__init__.py |
RemoteUserBackend.has_perm |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/authentication/__init__.py |
NBLDAPBackend.get_permission_filter |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/authentication/__init__.py |
LDAPBackend.__new__ |
|
0% |
25 |
25 |
0 |
|
0% |
12 |
0 |
|
0% |
| netbox/authentication/__init__.py |
user_default_groups_handler |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/authentication/__init__.py |
(no function) |
|
96% |
45 |
2 |
0 |
|
100% |
0 |
0 |
|
96% |
| netbox/authentication/misc.py |
_mirror_groups |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/authentication/misc.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/choices.py |
(no function) |
|
100% |
90 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/cli.py |
_prog |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/cli.py |
_print_version |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/cli.py |
_build_parser |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/cli.py |
main |
|
0% |
26 |
26 |
0 |
|
0% |
12 |
0 |
|
0% |
| netbox/cli.py |
(no function) |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/config/__init__.py |
get_config |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/config/__init__.py |
clear_config |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| netbox/config/__init__.py |
Config.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/config/__init__.py |
Config.__getattr__ |
|
71% |
7 |
2 |
0 |
|
67% |
6 |
2 |
|
69% |
| netbox/config/__init__.py |
Config._populate_from_cache |
|
86% |
7 |
1 |
0 |
|
50% |
2 |
1 |
|
78% |
| netbox/config/__init__.py |
Config._populate_from_db |
|
58% |
19 |
8 |
0 |
|
50% |
2 |
1 |
|
57% |
| netbox/config/__init__.py |
ConfigItem.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/config/__init__.py |
ConfigItem.__call__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/config/__init__.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/config/parameters.py |
ConfigParam.__init__ |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/config/parameters.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/configuration.py |
_filename |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/configuration.py |
_import |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/configuration.py |
read_configurations |
|
74% |
23 |
6 |
0 |
|
69% |
16 |
5 |
|
72% |
| netbox/configuration.py |
__getattr__ |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/configuration.py |
__dir__ |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/configuration.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/configuration_example.py |
(no function) |
|
0% |
39 |
39 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/configuration_testing.py |
(no function) |
|
0% |
9 |
9 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/constants.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context_managers.py |
event_tracking |
|
100% |
10 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/context_managers.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context_processors.py |
config |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context_processors.py |
preferences |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context_processors.py |
registry |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context_processors.py |
settings |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/context_processors.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/data_backends.py |
DataBackend.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/data_backends.py |
DataBackend.init_config |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/data_backends.py |
DataBackend.url_scheme |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/data_backends.py |
DataBackend.fetch |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/data_backends.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/event_rules.py |
EventRuleAction.__repr__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/event_rules.py |
EventRuleAction.get_object_queryset |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/event_rules.py |
EventRuleAction.get_object_label |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/event_rules.py |
EventRuleAction.resolve_import_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/event_rules.py |
EventRuleAction._validate |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/event_rules.py |
EventRuleAction.validate |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/event_rules.py |
EventRuleAction.enqueue |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/event_rules.py |
register_event_rule_action |
|
67% |
18 |
6 |
0 |
|
57% |
14 |
6 |
|
62% |
| netbox/event_rules.py |
get_event_rule_action |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/event_rules.py |
get_event_rule_action_choices |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/event_rules.py |
get_event_rule_action_slugs |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/event_rules.py |
(no function) |
|
100% |
28 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/events.py |
get_event_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/events.py |
get_event_text |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/events.py |
get_event_type_choices |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/events.py |
EventType.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/events.py |
EventType.register |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/events.py |
EventType.color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/events.py |
EventType.icon |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/events.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/filtersets.py |
BaseFilterSet.__init__ |
|
14% |
21 |
18 |
0 |
|
7% |
14 |
1 |
|
11% |
| netbox/filtersets.py |
BaseFilterSet._get_filter_lookup_dict |
|
92% |
13 |
1 |
0 |
|
92% |
12 |
1 |
|
92% |
| netbox/filtersets.py |
BaseFilterSet.get_additional_lookups |
|
92% |
36 |
3 |
0 |
|
91% |
22 |
2 |
|
91% |
| netbox/filtersets.py |
BaseFilterSet.get_filters |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/filtersets.py |
BaseFilterSet.filter_for_lookup |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/filtersets.py |
ChangeLoggedModelFilterSet.filter_by_request |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/filtersets.py |
NetBoxModelFilterSet.__init__ |
|
36% |
11 |
7 |
0 |
|
17% |
6 |
1 |
|
29% |
| netbox/filtersets.py |
NetBoxModelFilterSet.search |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/filtersets.py |
OrganizationalModelFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/filtersets.py |
NestedGroupModelFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/filtersets.py |
AttributeFiltersMixin.__init__ |
|
56% |
9 |
4 |
0 |
|
67% |
6 |
2 |
|
60% |
| netbox/filtersets.py |
AttributeFiltersMixin._get_field_lookup |
|
50% |
4 |
2 |
0 |
|
50% |
2 |
1 |
|
50% |
| netbox/filtersets.py |
AttributeFiltersMixin.filter_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/filtersets.py |
(no function) |
|
100% |
58 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/bulk_edit.py |
NetBoxModelBulkEditForm.__init__ |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/bulk_edit.py |
NetBoxModelBulkEditForm._get_form_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/bulk_edit.py |
NetBoxModelBulkEditForm._extend_nullable_fields |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/bulk_edit.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/bulk_import.py |
NetBoxModelImportForm._get_custom_fields |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/bulk_import.py |
NetBoxModelImportForm._get_form_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/bulk_import.py |
NetBoxModelImportForm.clean |
|
0% |
16 |
16 |
0 |
|
0% |
12 |
0 |
|
0% |
| netbox/forms/bulk_import.py |
NetBoxModelImportForm._update_errors |
|
0% |
16 |
16 |
0 |
|
0% |
14 |
0 |
|
0% |
| netbox/forms/bulk_import.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/bulk_rename.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/filtersets.py |
NetBoxModelFilterSetForm._get_custom_fields |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/filtersets.py |
NetBoxModelFilterSetForm._get_form_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/filtersets.py |
(no function) |
|
100% |
18 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/mixins.py |
ChangelogMessageMixin.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/forms/mixins.py |
CustomFieldsMixin.__init__ |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/mixins.py |
CustomFieldsMixin._get_content_type |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/forms/mixins.py |
CustomFieldsMixin._get_custom_fields |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/mixins.py |
CustomFieldsMixin._get_form_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/mixins.py |
CustomFieldsMixin._append_customfield_fields |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/forms/mixins.py |
SavedFiltersMixin.__init__ |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/forms/mixins.py |
TagsMixin.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/forms/mixins.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/model_forms.py |
NetBoxModelForm._get_content_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/model_forms.py |
NetBoxModelForm._get_form_field |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/forms/model_forms.py |
NetBoxModelForm.clean |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/forms/model_forms.py |
NetBoxModelForm._post_clean |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/forms/model_forms.py |
NetBoxModelForm._save_m2m |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/forms/model_forms.py |
(no function) |
|
100% |
24 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/forms/search.py |
SearchForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/forms/search.py |
SearchForm.clean |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/forms/search.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/granian.py |
(no function) |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/apps.py |
GraphQLConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/apps.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/enums.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/filter_lookups.py |
_validate_json_path |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
JSONLookup.get_filter |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
_NumericLookupMixin.get_filter |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
_NumericLookupMixin.filter |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
JSONFilter.filter |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
TreeNodeFilter.filter |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
generate_tree_node_q_filter |
|
0% |
21 |
21 |
0 |
|
0% |
16 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
ArrayLookup.filter |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
RangeArrayValueLookup.filter |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/graphql/filter_lookups.py |
(no function) |
|
100% |
138 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/filter_mixins.py |
(no function) |
|
90% |
31 |
3 |
0 |
|
50% |
2 |
1 |
|
88% |
| netbox/graphql/filters.py |
register_filter |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/filters.py |
(no function) |
|
97% |
35 |
1 |
0 |
|
50% |
2 |
1 |
|
95% |
| netbox/graphql/optimization.py |
optimize_prefetch_queryset |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/graphql/optimization.py |
build_gfk_prefetch |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/optimization.py |
build_gfk_prefetch.prefetch |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/optimization.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/pagination.py |
apply_distinct_window_pagination |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/pagination.py |
apply_pagination |
|
0% |
20 |
20 |
0 |
|
0% |
18 |
0 |
|
0% |
| netbox/graphql/pagination.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/scalars.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/schema.py |
get_schema_extensions |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/graphql/schema.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/types.py |
register_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/types.py |
BaseObjectType.get_queryset |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/graphql/types.py |
BaseObjectType.display |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/types.py |
BaseObjectType.class_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/types.py |
LtreeNodeMixin.level |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/graphql/types.py |
(no function) |
|
100% |
42 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/utils.py |
get_model_label |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/utils.py |
_own_names |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/utils.py |
_field_names |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/graphql/utils.py |
_all_names |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/utils.py |
_name_owner |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/utils.py |
_core_names |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/graphql/utils.py |
_class_path |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/utils.py |
_compose |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/graphql/utils.py |
splice_extension_bases |
|
0% |
17 |
17 |
0 |
|
0% |
14 |
0 |
|
0% |
| netbox/graphql/utils.py |
validate_extension_final_names |
|
0% |
18 |
18 |
0 |
|
0% |
12 |
0 |
|
0% |
| netbox/graphql/utils.py |
validate_extension_targets |
|
43% |
7 |
4 |
0 |
|
50% |
6 |
1 |
|
46% |
| netbox/graphql/utils.py |
register_model_graphql_type |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/utils.py |
register_model_graphql_type.wrapper |
|
55% |
11 |
5 |
0 |
|
25% |
4 |
1 |
|
47% |
| netbox/graphql/utils.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/graphql/views.py |
NetBoxGraphQLView.dispatch |
|
0% |
16 |
16 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/graphql/views.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/jobs.py |
system_job |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/jobs.py |
system_job._wrapper |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/jobs.py |
JobLogHandler.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/jobs.py |
JobLogHandler.emit |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/jobs.py |
JobRunner.__init__ |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/jobs.py |
JobRunner.name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/jobs.py |
JobRunner.run |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/jobs.py |
JobRunner.handle |
|
0% |
32 |
32 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/jobs.py |
JobRunner.get_jobs |
|
60% |
5 |
2 |
0 |
|
50% |
2 |
1 |
|
57% |
| netbox/jobs.py |
JobRunner.enqueue |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/jobs.py |
JobRunner.enqueue_once |
|
50% |
6 |
3 |
0 |
|
25% |
4 |
1 |
|
40% |
| netbox/jobs.py |
AsyncViewJob.run |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/jobs.py |
AsyncAPIJob._build_request |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/jobs.py |
AsyncAPIJob.run |
|
0% |
46 |
46 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/jobs.py |
(no function) |
|
100% |
60 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ldap_config.py |
__getattr__ |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ldap_config.py |
__dir__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ldap_config.py |
(no function) |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/metrics.py |
Metrics.register |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/metrics.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/middleware.py |
CommonMiddleware.should_redirect_with_slash |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/middleware.py |
CoreMiddleware.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/middleware.py |
CoreMiddleware.__call__ |
|
81% |
16 |
3 |
0 |
|
62% |
8 |
3 |
|
75% |
| netbox/middleware.py |
CoreMiddleware.process_exception |
|
22% |
18 |
14 |
0 |
|
14% |
14 |
2 |
|
19% |
| netbox/middleware.py |
RemoteUserMiddleware.__init__ |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/middleware.py |
RemoteUserMiddleware.header |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/middleware.py |
RemoteUserMiddleware.__call__ |
|
10% |
30 |
27 |
0 |
|
5% |
20 |
1 |
|
8% |
| netbox/middleware.py |
RemoteUserMiddleware._get_groups |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/middleware.py |
PrometheusAfterMiddleware.process_response |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/middleware.py |
MaintenanceModeMiddleware.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/middleware.py |
MaintenanceModeMiddleware.__call__ |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/middleware.py |
MaintenanceModeMiddleware._set_session_type |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/middleware.py |
MaintenanceModeMiddleware.process_exception |
|
29% |
7 |
5 |
0 |
|
25% |
4 |
1 |
|
27% |
| netbox/middleware.py |
SocialAuthExceptionMiddleware.get_message |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/middleware.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/__init__.py |
NetBoxFeatureSet.docs_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/__init__.py |
NetBoxFeatureSet.get_absolute_url |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/__init__.py |
BaseModel._coerce_nullable_unique_chars |
|
67% |
3 |
1 |
0 |
|
75% |
4 |
1 |
|
71% |
| netbox/models/__init__.py |
BaseModel.clean |
|
88% |
17 |
2 |
0 |
|
80% |
10 |
2 |
|
85% |
| netbox/models/__init__.py |
BaseModel.save |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/__init__.py |
NestedGroupModelMixin.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/__init__.py |
NestedGroupModel.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/__init__.py |
OrganizationalModel.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/__init__.py |
(no function) |
|
100% |
74 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/deletion.py |
CountOnly.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/deletion.py |
CountOnly.__len__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/deletion.py |
CountOnly.__iter__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/deletion.py |
ConfirmCollector.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/deletion.py |
ConfirmCollector.collect |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/models/deletion.py |
CustomCollector.collect |
|
100% |
16 |
0 |
0 |
|
93% |
14 |
1 |
|
97% |
| netbox/models/deletion.py |
DeleteMixin.delete |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/models/deletion.py |
DeleteMixin.verify_mro |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/deletion.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/features.py |
ChangeLoggingMixin.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/features.py |
ChangeLoggingMixin.serialize_object |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/features.py |
ChangeLoggingMixin.snapshot |
|
100% |
4 |
0 |
0 |
|
50% |
2 |
1 |
|
83% |
| netbox/models/features.py |
ChangeLoggingMixin.to_objectchange |
|
100% |
11 |
0 |
0 |
|
83% |
6 |
1 |
|
94% |
| netbox/models/features.py |
CloningMixin.clone |
|
0% |
24 |
24 |
0 |
|
0% |
20 |
0 |
|
0% |
| netbox/models/features.py |
CustomFieldsMixin.cf |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
CustomFieldsMixin.custom_fields |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
CustomFieldsMixin.get_custom_fields |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/models/features.py |
CustomFieldsMixin.get_custom_fields_by_group |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/models/features.py |
CustomFieldsMixin.clean |
|
42% |
19 |
11 |
0 |
|
17% |
12 |
2 |
|
32% |
| netbox/models/features.py |
CustomFieldsMixin.save |
|
60% |
5 |
2 |
0 |
|
25% |
4 |
1 |
|
44% |
| netbox/models/features.py |
CustomValidationMixin.clean |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/models/features.py |
ContactsMixin.get_contacts |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
batch_delete_jobs |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/features.py |
JobsMixin.delete |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
JobsMixin.get_latest_jobs |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
SyncedDataMixin.is_synced |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
SyncedDataMixin.clean |
|
67% |
9 |
3 |
0 |
|
50% |
2 |
1 |
|
64% |
| netbox/models/features.py |
SyncedDataMixin.save |
|
86% |
7 |
1 |
0 |
|
50% |
2 |
1 |
|
78% |
| netbox/models/features.py |
SyncedDataMixin.delete |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/features.py |
SyncedDataMixin.resolve_data_file |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/features.py |
SyncedDataMixin.validate_synced_value |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/models/features.py |
SyncedDataMixin.sync |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/features.py |
SyncedDataMixin.sync_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/features.py |
model_is_public |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/models/features.py |
get_model_features |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/features.py |
has_feature |
|
53% |
15 |
7 |
0 |
|
62% |
8 |
3 |
|
57% |
| netbox/models/features.py |
register_models |
|
100% |
19 |
0 |
0 |
|
94% |
18 |
1 |
|
97% |
| netbox/models/features.py |
(no function) |
|
100% |
138 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/lookups.py |
Ancestor.as_sql |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/lookups.py |
AncestorOrEqual.as_sql |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/lookups.py |
Descendant.as_sql |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/lookups.py |
DescendantOrEqual.as_sql |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/lookups.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/ltree.py |
LtreeField.db_type |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/ltree.py |
LtreeField.get_prep_value |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/models/ltree.py |
SortPathField.deconstruct |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/ltree.py |
LtreeQuerySet.bulk_create |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/models/ltree.py |
LtreeQuerySet.add_related_count |
|
77% |
30 |
7 |
0 |
|
67% |
6 |
2 |
|
75% |
| netbox/models/ltree.py |
LtreeModelBase.__new__ |
|
100% |
12 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/models/ltree.py |
LtreeModel.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/ltree.py |
LtreeModel.from_db |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/ltree.py |
LtreeModel._parent_creates_cycle |
|
29% |
7 |
5 |
0 |
|
17% |
6 |
1 |
|
23% |
| netbox/models/ltree.py |
LtreeModel._has_sort_path |
|
60% |
5 |
2 |
0 |
|
100% |
0 |
0 |
|
60% |
| netbox/models/ltree.py |
LtreeModel.clean |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| netbox/models/ltree.py |
LtreeModel.save |
|
61% |
28 |
11 |
0 |
|
36% |
14 |
3 |
|
52% |
| netbox/models/ltree.py |
LtreeModel.level |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/models/ltree.py |
LtreeModel.get_level |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/ltree.py |
LtreeModel._tree_order_field |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/ltree.py |
LtreeModel.get_ancestors |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/models/ltree.py |
LtreeModel.get_descendants |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/models/ltree.py |
LtreeModel.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/ltree.py |
LtreeModel.rebuild_sort_paths |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/ltree.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/models/mixins.py |
WeightMixin.abs_weight |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/mixins.py |
WeightMixin.save |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/models/mixins.py |
WeightMixin.clean |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/models/mixins.py |
DistanceMixin.abs_distance |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/models/mixins.py |
DistanceMixin.save |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/models/mixins.py |
DistanceMixin.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/models/mixins.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/monkey.py |
get_unique_validators |
|
100% |
11 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| netbox/monkey.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/navigation/__init__.py |
MenuItemButton.__post_init__ |
|
100% |
2 |
0 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/navigation/__init__.py |
MenuItemButton.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/navigation/__init__.py |
MenuItemButton.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/navigation/__init__.py |
MenuItem.__post_init__ |
|
100% |
2 |
0 |
0 |
|
50% |
2 |
1 |
|
75% |
| netbox/navigation/__init__.py |
MenuItem.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/navigation/__init__.py |
MenuItem.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/navigation/__init__.py |
Menu.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/navigation/__init__.py |
get_model_item |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/navigation/__init__.py |
get_model_buttons |
|
100% |
6 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/navigation/__init__.py |
(no function) |
|
100% |
34 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/navigation/menu.py |
get_menus |
|
56% |
9 |
4 |
0 |
|
50% |
4 |
2 |
|
54% |
| netbox/navigation/menu.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/object_actions.py |
ObjectAction.get_url |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/object_actions.py |
ObjectAction.get_url_params |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/object_actions.py |
ObjectAction.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/object_actions.py |
ObjectAction.render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/object_actions.py |
CloneObject.get_url |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/object_actions.py |
BulkExport.get_context |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/object_actions.py |
BulkEdit.get_context |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/object_actions.py |
(no function) |
|
100% |
80 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/plugins/__init__.py |
PluginConfig.get_jinja_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/__init__.py |
PluginConfig._load_resource |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/plugins/__init__.py |
PluginConfig.ready |
|
0% |
33 |
33 |
0 |
|
0% |
22 |
0 |
|
0% |
| netbox/plugins/__init__.py |
PluginConfig.validate |
|
0% |
15 |
15 |
0 |
|
0% |
16 |
0 |
|
0% |
| netbox/plugins/__init__.py |
_load_plugin_graphql_schemas |
|
29% |
7 |
5 |
0 |
|
17% |
6 |
1 |
|
23% |
| netbox/plugins/__init__.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/plugins/navigation.py |
PluginMenu.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenu.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenuItem.__init__ |
|
0% |
16 |
16 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenuItem.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenuItem.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenuButton.__init__ |
|
0% |
14 |
14 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenuButton.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/navigation.py |
PluginMenuButton.url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/navigation.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/plugins/registration.py |
register_jinja_filters |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_template_extensions |
|
0% |
10 |
10 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_menu |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_menu_items |
|
0% |
7 |
7 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_graphql_schema |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/registration.py |
_register_graphql_extensions |
|
0% |
46 |
46 |
0 |
|
0% |
30 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_graphql_type_extensions |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_graphql_filter_extensions |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_user_preferences |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/registration.py |
register_serializer_resolver |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/plugins/registration.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/plugins/templates.py |
PluginTemplateExtension.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.render |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.head |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.navbar |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.list_buttons |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.buttons |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.alerts |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.left_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.right_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
PluginTemplateExtension.full_width_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/templates.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/plugins/urls.py |
(no function) |
|
50% |
20 |
10 |
0 |
|
17% |
6 |
1 |
|
42% |
| netbox/plugins/utils.py |
get_installed_plugins |
|
38% |
8 |
5 |
0 |
|
25% |
4 |
1 |
|
33% |
| netbox/plugins/utils.py |
get_plugin_config |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/utils.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/plugins/views.py |
InstalledPluginsAPIView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/views.py |
InstalledPluginsAPIView._get_plugin_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/views.py |
InstalledPluginsAPIView.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/views.py |
PluginsAPIRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/views.py |
PluginsAPIRootView._get_plugin_entry |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/plugins/views.py |
PluginsAPIRootView.get |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/plugins/views.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/preferences.py |
get_page_lengths |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/preferences.py |
get_csv_delimiters |
|
100% |
7 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/preferences.py |
(no function) |
|
69% |
16 |
5 |
0 |
|
17% |
6 |
1 |
|
55% |
| netbox/registry.py |
Registry.__getitem__ |
|
50% |
4 |
2 |
0 |
|
100% |
0 |
0 |
|
50% |
| netbox/registry.py |
Registry.__setitem__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/registry.py |
Registry.__delitem__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/registry.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/scaffold.py |
_bundled_data_dir |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/scaffold.py |
_config_template |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/scaffold.py |
_contrib_dir |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/scaffold.py |
_write |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/scaffold.py |
scaffold_instance |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/scaffold.py |
main |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/scaffold.py |
(no function) |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/__init__.py |
SearchIndex.get_field_type |
|
90% |
10 |
1 |
0 |
|
88% |
8 |
1 |
|
89% |
| netbox/search/__init__.py |
SearchIndex.get_attr_type |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/search/__init__.py |
SearchIndex.get_field_value |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/search/__init__.py |
SearchIndex.get_category |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/__init__.py |
SearchIndex.to_cache |
|
47% |
19 |
10 |
0 |
|
42% |
12 |
1 |
|
45% |
| netbox/search/__init__.py |
get_indexer |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/__init__.py |
register_search |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/__init__.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/backends.py |
SearchBackend.get_object_types |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.search |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.caching_handler |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.removal_handler |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.cache |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.remove |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.clear |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.count |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
SearchBackend.size |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
CachedValueSearchBackend.caching_handler |
|
73% |
11 |
3 |
0 |
|
100% |
0 |
0 |
|
73% |
| netbox/search/backends.py |
CachedValueSearchBackend.removal_handler |
|
73% |
11 |
3 |
0 |
|
100% |
0 |
0 |
|
73% |
| netbox/search/backends.py |
CachedValueSearchBackend.search |
|
0% |
40 |
40 |
0 |
|
0% |
24 |
0 |
|
0% |
| netbox/search/backends.py |
CachedValueSearchBackend.cache |
|
76% |
25 |
6 |
0 |
|
75% |
16 |
4 |
|
76% |
| netbox/search/backends.py |
CachedValueSearchBackend._remove_by_id |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/search/backends.py |
CachedValueSearchBackend.remove |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
CachedValueSearchBackend._is_missing_cache_table |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
CachedValueSearchBackend._is_stale_index_target |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/backends.py |
CachedValueSearchBackend._apply_deferred_updates |
|
54% |
35 |
16 |
0 |
|
42% |
12 |
1 |
|
51% |
| netbox/search/backends.py |
CachedValueSearchBackend.clear |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/search/backends.py |
CachedValueSearchBackend.count |
|
100% |
4 |
0 |
0 |
|
50% |
2 |
1 |
|
83% |
| netbox/search/backends.py |
CachedValueSearchBackend.size |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/backends.py |
get_backend |
|
60% |
5 |
2 |
0 |
|
100% |
0 |
0 |
|
60% |
| netbox/search/backends.py |
(no function) |
|
100% |
52 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/deferred.py |
mark_for_deferred_indexing |
|
86% |
22 |
3 |
0 |
|
75% |
8 |
2 |
|
83% |
| netbox/search/deferred.py |
mark_for_deferred_indexing.flush |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/deferred.py |
_pending_batch |
|
100% |
4 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/search/deferred.py |
_flush |
|
64% |
14 |
5 |
0 |
|
67% |
6 |
2 |
|
65% |
| netbox/search/deferred.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/jobs.py |
SearchCacheJob.run |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/jobs.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/signals.py |
caching_handler |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/signals.py |
removal_handler |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/signals.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/search/utils.py |
get_indexer |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/search/utils.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/settings.py |
_setting |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/settings.py |
(no function) |
|
71% |
403 |
116 |
0 |
|
42% |
130 |
42 |
|
64% |
| netbox/settings_utils.py |
resolve_install_paths |
|
62% |
13 |
5 |
0 |
|
50% |
2 |
1 |
|
60% |
| netbox/settings_utils.py |
secret_key_hint |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/settings_utils.py |
parse_job_timeout |
|
56% |
9 |
4 |
0 |
|
50% |
4 |
2 |
|
54% |
| netbox/settings_utils.py |
validate_webhook_default_timeout |
|
50% |
4 |
2 |
0 |
|
50% |
4 |
2 |
|
50% |
| netbox/settings_utils.py |
_import_module |
|
33% |
6 |
4 |
0 |
|
0% |
2 |
0 |
|
25% |
| netbox/settings_utils.py |
_import_from_path |
|
0% |
24 |
24 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/settings_utils.py |
get_configuration_dir |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/settings_utils.py |
load_configuration |
|
25% |
16 |
12 |
0 |
|
20% |
10 |
2 |
|
23% |
| netbox/settings_utils.py |
load_ldap_config |
|
0% |
14 |
14 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/settings_utils.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/signals.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
DateColumn.render |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
DateColumn.value |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
DateColumn.from_field |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/tables/columns.py |
DateTimeColumn.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
DateTimeColumn.render |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
DateTimeColumn.value |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
DateTimeColumn.from_field |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/tables/columns.py |
DurationColumn.render |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/tables/columns.py |
DurationColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ManyToManyColumn.value |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
TemplateColumn.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
TemplateColumn.render |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
TemplateColumn.value |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/columns.py |
ToggleColumn.__init__ |
|
100% |
5 |
0 |
0 |
|
50% |
2 |
1 |
|
86% |
| netbox/tables/columns.py |
ToggleColumn.header |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
BooleanColumn.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
BooleanColumn.render |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/tables/columns.py |
BooleanColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ActionsColumn.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
ActionsColumn.header |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ActionsColumn.render |
|
0% |
35 |
35 |
0 |
|
0% |
20 |
0 |
|
0% |
| netbox/tables/columns.py |
ChoiceFieldColumn.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
ChoiceFieldColumn.render |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/columns.py |
ChoiceFieldColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ContentTypeColumn.render |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
ContentTypeColumn.value |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
ContentTypesColumn.__init__ |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| netbox/tables/columns.py |
ContentTypesColumn.transform |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ContentTypesColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ColorColumn.render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ColorColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ColoredLabelColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
ColoredLabelColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
LinkedCountColumn.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
LinkedCountColumn.render |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/columns.py |
LinkedCountColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
TagColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
TagColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn.__init__ |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn.unset_alias |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn.get_ordering_annotation |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn.order |
|
0% |
8 |
8 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn._linkify_item |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn.render |
|
0% |
43 |
43 |
0 |
|
0% |
34 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomFieldColumn.value |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomLinkColumn.__init__ |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomLinkColumn._render_customlink |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomLinkColumn.render |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
CustomLinkColumn.value |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/columns.py |
TreeColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
TreeColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
UtilizationColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
UtilizationColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
MarkdownColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
MarkdownColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
ArrayColumn.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
ArrayColumn.render |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/tables/columns.py |
ChoicesColumn.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
ChoicesColumn.render |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/columns.py |
DistanceColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/columns.py |
DictColumn.render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/columns.py |
(no function) |
|
100% |
137 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/tables.py |
BaseTable.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable._get_columns |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.available_columns |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.selected_columns |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.objects_count |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable._set_columns |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable._apply_prefetching |
|
0% |
28 |
28 |
0 |
|
0% |
20 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable._get_custom_field_ordering_columns |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable._apply_ordering_annotations |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable._apply_ordering_tie_breaker |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.order_by |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.configure |
|
0% |
33 |
33 |
0 |
|
0% |
30 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.configuration |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
BaseTable.config_params |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
NetBoxTable.__init__ |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/tables.py |
NetBoxTable.configure |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/tables.py |
NetBoxTable._restrict_customlink_columns |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/tables/tables.py |
NetBoxTable.htmx_url |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
SearchTable.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/tables.py |
SearchTable.render_field |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/tables/tables.py |
SearchTable.render_value |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/tables/tables.py |
(no function) |
|
100% |
92 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/tables/template_code.py |
(no function) |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/actions.py |
PanelAction.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/actions.py |
PanelAction.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/actions.py |
PanelAction.render |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/actions.py |
LinkAction.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/actions.py |
LinkAction.get_url |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/ui/actions.py |
LinkAction.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/actions.py |
AddObject.__init__ |
|
70% |
10 |
3 |
0 |
|
50% |
2 |
1 |
|
67% |
| netbox/ui/actions.py |
CopyContent.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/actions.py |
CopyContent.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/actions.py |
(no function) |
|
100% |
24 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
MapURLMixin.map_url |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
ObjectAttribute.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/ui/attrs.py |
ObjectAttribute.get_value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
ObjectAttribute.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
ObjectAttribute.render |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
TextAttr.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
TextAttr.get_value |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
TextAttr.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
ArrayAttr.get_value |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
NumericAttr.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
NumericAttr.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
ChoiceAttr._resolve_target |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
ChoiceAttr.get_value |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
ChoiceAttr.get_context |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
BooleanAttr.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
BooleanAttr.get_value |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
ImageAttr.__init__ |
|
86% |
7 |
1 |
0 |
|
50% |
4 |
2 |
|
73% |
| netbox/ui/attrs.py |
ImageAttr.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
RelatedObjectAttr.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
RelatedObjectAttr.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
RelatedObjectListAttr.__init__ |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| netbox/ui/attrs.py |
RelatedObjectListAttr._get_items |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/ui/attrs.py |
RelatedObjectListAttr.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
RelatedObjectListAttr.render |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
NestedObjectAttr.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
NestedObjectAttr.get_context |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
GenericForeignKeyAttr.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
GenericForeignKeyAttr._get_nodes |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/ui/attrs.py |
GenericForeignKeyAttr.get_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
AddressAttr.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
AddressAttr.get_context |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
GPSCoordinatesAttr.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
GPSCoordinatesAttr.render |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
DateTimeAttr.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
DateTimeAttr.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
DurationAttr.get_value |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
TemplatedAttr.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
TemplatedAttr.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/attrs.py |
compute_weight_display |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/ui/attrs.py |
compute_diameter_display |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
compute_flow_rate_display |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/attrs.py |
compute_distance_display |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/ui/attrs.py |
WeightAttr.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
WeightAttr.render |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
DistanceAttr.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
DistanceAttr.render |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
DiameterAttr.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
DiameterAttr.render |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
FlowRateAttr.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/attrs.py |
FlowRateAttr.render |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/attrs.py |
(no function) |
|
100% |
119 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/breadcrumbs.py |
filtered_list_url |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/breadcrumbs.py |
object_view_url |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/breadcrumbs.py |
get_root_breadcrumb |
|
0% |
8 |
8 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/breadcrumbs.py |
Breadcrumb.__init__ |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| netbox/ui/breadcrumbs.py |
Breadcrumb.resolve |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/breadcrumbs.py |
Breadcrumb.get_label |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/breadcrumbs.py |
Breadcrumb.get_url |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/breadcrumbs.py |
Breadcrumb.render |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/ui/breadcrumbs.py |
Breadcrumb._is_iterable |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/breadcrumbs.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/layout.py |
Layout.__init__ |
|
80% |
10 |
2 |
0 |
|
75% |
8 |
2 |
|
78% |
| netbox/ui/layout.py |
Layout.__iter__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/layout.py |
Layout.__repr__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/layout.py |
Row.__init__ |
|
75% |
4 |
1 |
0 |
|
75% |
4 |
1 |
|
75% |
| netbox/ui/layout.py |
Row.__iter__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/layout.py |
Row.__repr__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/layout.py |
Column.__init__ |
|
50% |
10 |
5 |
0 |
|
40% |
10 |
2 |
|
45% |
| netbox/ui/layout.py |
Column.__iter__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/layout.py |
Column.__repr__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/layout.py |
SimpleLayout.__init__ |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/layout.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/panels.py |
Panel.__init__ |
|
100% |
5 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| netbox/ui/panels.py |
Panel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
Panel.should_render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
Panel.render |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/panels.py |
ObjectPanel.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| netbox/ui/panels.py |
ObjectPanel.get_context |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/panels.py |
ObjectAttributesPanelMeta.__new__ |
|
100% |
14 |
0 |
0 |
|
92% |
12 |
1 |
|
96% |
| netbox/ui/panels.py |
ObjectAttributesPanel.__init__ |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| netbox/ui/panels.py |
ObjectAttributesPanel._name_to_label |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
ObjectAttributesPanel.get_context |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/ui/panels.py |
CommentsPanel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/panels.py |
CommentsPanel.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
JSONPanel.__init__ |
|
100% |
4 |
0 |
0 |
|
50% |
2 |
1 |
|
83% |
| netbox/ui/panels.py |
JSONPanel.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
RelatedObjectsPanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
ObjectsTablePanel.__init__ |
|
86% |
7 |
1 |
0 |
|
50% |
2 |
1 |
|
78% |
| netbox/ui/panels.py |
ObjectsTablePanel.model |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
ObjectsTablePanel.get_context |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/ui/panels.py |
ObjectsTablePanel.should_render |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/panels.py |
TemplatePanel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/panels.py |
TemplatePanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
TextCodePanel.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/panels.py |
TextCodePanel.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
PluginContentPanel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/panels.py |
PluginContentPanel.render |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
ContextTablePanel.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/panels.py |
ContextTablePanel._resolve_table |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/panels.py |
ContextTablePanel.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
ContextTablePanel.should_render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/panels.py |
(no function) |
|
100% |
76 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/ui/utils.py |
is_coordinate_map_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/ui/utils.py |
build_coords_url |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/ui/utils.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/urls.py |
(no function) |
|
85% |
20 |
3 |
0 |
|
50% |
4 |
2 |
|
79% |
| netbox/utils.py |
get_data_backend_choices |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/utils.py |
register_data_backend |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/utils.py |
register_data_backend._wrapper |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/utils.py |
register_model_feature |
|
67% |
6 |
2 |
0 |
|
50% |
4 |
2 |
|
60% |
| netbox/utils.py |
register_model_feature.decorator |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/utils.py |
register_request_processor |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/utils.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/errors.py |
StaticMediaFailureView.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/errors.py |
handler_404 |
|
50% |
4 |
2 |
0 |
|
50% |
2 |
1 |
|
50% |
| netbox/views/errors.py |
handler_500 |
|
67% |
6 |
2 |
0 |
|
100% |
0 |
0 |
|
67% |
| netbox/views/errors.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/__init__.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/base.py |
BaseObjectView.dispatch |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/base.py |
BaseObjectView.get_queryset |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/base.py |
BaseObjectView.get_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/base.py |
BaseObjectView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/base.py |
BaseMultiObjectView.dispatch |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/base.py |
BaseMultiObjectView.get_queryset |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/base.py |
BaseMultiObjectView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/base.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/bulk_views.py |
_delay_mptt_updates |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
_rebuild_mptt_tree |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
ObjectListView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
ObjectListView.export_yaml |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
ObjectListView.export_table |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
ObjectListView.export_template |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
ObjectListView.get_queryset |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
ObjectListView.get |
|
0% |
32 |
32 |
0 |
|
0% |
16 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.get_pattern_context |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.render_pattern_template |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.apply_pattern_template_fields |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.get_model_form_data |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.add_model_form_errors |
|
0% |
12 |
12 |
0 |
|
0% |
12 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView._create_objects |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView._get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.get |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkCreateView.post |
|
0% |
27 |
27 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView.prep_related_object_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView._get_form_fields |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView._compile_form_errors |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView._save_object |
|
0% |
25 |
25 |
0 |
|
0% |
18 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView.save_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView._process_import_records |
|
0% |
32 |
32 |
0 |
|
0% |
20 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView.create_and_update_objects |
|
0% |
23 |
23 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView.get |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkImportView.post |
|
0% |
35 |
35 |
0 |
|
0% |
16 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkEditView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkEditView.pre_save_operations |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkEditView.post_save_operations |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkEditView._update_objects |
|
0% |
55 |
55 |
0 |
|
0% |
40 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkEditView.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkEditView.post |
|
0% |
56 |
56 |
0 |
|
0% |
30 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkRenameView.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkRenameView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkRenameView._rename_objects |
|
0% |
22 |
22 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkRenameView.post |
|
0% |
38 |
38 |
0 |
|
0% |
20 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkDeleteView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkDeleteView.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkDeleteView.post |
|
0% |
55 |
55 |
0 |
|
0% |
26 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkComponentCreateView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
BulkComponentCreateView.post |
|
0% |
74 |
74 |
0 |
|
0% |
40 |
0 |
|
0% |
| netbox/views/generic/bulk_views.py |
(no function) |
|
100% |
126 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/feature_views.py |
ObjectChangeLogView.get |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectImageAttachmentsView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectJournalView.get |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectJobsView.get_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectJobsView.get_jobs |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectJobsView.get |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectSyncDataView.post |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
BulkSyncDataView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
BulkSyncDataView.post |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectContactsView.dispatch |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
ObjectContactsView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/feature_views.py |
(no function) |
|
100% |
54 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/mixins.py |
ActionsMixin.get_permitted_actions |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/mixins.py |
TableMixin.get_table |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/mixins.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/object_views.py |
ObjectView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectView.get_template_name |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectChildrenView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectChildrenView.prep_table_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectChildrenView.get |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.dispatch |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.get_object |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.alter_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.get_extra_addanother_params |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.get |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectEditView.post |
|
0% |
50 |
50 |
0 |
|
0% |
22 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectDeleteView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectDeleteView._get_dependent_objects |
|
0% |
14 |
14 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectDeleteView._handle_protected_objects |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectDeleteView.get |
|
0% |
12 |
12 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ObjectDeleteView.post |
|
0% |
30 |
30 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ComponentCreateView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ComponentCreateView.alter_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ComponentCreateView.initialize_form |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ComponentCreateView.get |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
ComponentCreateView.post |
|
0% |
52 |
52 |
0 |
|
0% |
34 |
0 |
|
0% |
| netbox/views/generic/object_views.py |
(no function) |
|
100% |
73 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/generic/utils.py |
get_prerequisite_model |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| netbox/views/generic/utils.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/htmx.py |
ObjectSelectorView.get |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| netbox/views/htmx.py |
ObjectSelectorView._get_model |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| netbox/views/htmx.py |
ObjectSelectorView._get_form_class |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/htmx.py |
ObjectSelectorView._get_filterset_class |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| netbox/views/htmx.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/views/misc.py |
HomeView.get |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/views/misc.py |
SearchView.get |
|
0% |
22 |
22 |
0 |
|
0% |
10 |
0 |
|
0% |
| netbox/views/misc.py |
MediaView.get |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| netbox/views/misc.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| netbox/wsgi.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| reports/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| scripts/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/serializers.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/serializers_/contacts.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/serializers_/nested.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/serializers_/tenants.py |
(no function) |
|
100% |
29 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/urls.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/api/views.py |
TenancyRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/api/views.py |
(no function) |
|
100% |
31 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/apps.py |
TenancyConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/apps.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/choices.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/filtersets.py |
ContactFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| tenancy/filtersets.py |
ContactAssignmentFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| tenancy/filtersets.py |
TenantFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| tenancy/filtersets.py |
(no function) |
|
100% |
70 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/forms/__init__.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/forms/bulk_edit.py |
(no function) |
|
100% |
45 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/forms/bulk_import.py |
(no function) |
|
100% |
40 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/forms/filtersets.py |
(no function) |
|
100% |
43 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/forms/forms.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/forms/model_forms.py |
(no function) |
|
100% |
51 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/graphql/enums.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/graphql/filter_mixins.py |
(no function) |
|
89% |
18 |
2 |
0 |
|
50% |
2 |
1 |
|
85% |
| tenancy/graphql/filters.py |
(no function) |
|
89% |
84 |
9 |
0 |
|
50% |
2 |
1 |
|
88% |
| tenancy/graphql/mixins.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/graphql/schema.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/graphql/types.py |
(no function) |
|
76% |
29 |
7 |
0 |
|
50% |
2 |
1 |
|
74% |
| tenancy/models/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/models/contacts.py |
ContactGroupManager.annotate_contacts |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/models/contacts.py |
Contact.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/models/contacts.py |
ContactAssignment.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| tenancy/models/contacts.py |
ContactAssignment.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/models/contacts.py |
ContactAssignment.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| tenancy/models/contacts.py |
ContactAssignment.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/models/contacts.py |
(no function) |
|
100% |
59 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/models/tenants.py |
TenantGroup.delete |
|
83% |
6 |
1 |
0 |
|
50% |
2 |
1 |
|
75% |
| tenancy/models/tenants.py |
Tenant.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/models/tenants.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/search.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/tables/__init__.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/tables/columns.py |
TenantColumn.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/tables/columns.py |
TenantColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/tables/columns.py |
TenantGroupColumn.__init__ |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| tenancy/tables/columns.py |
TenantGroupColumn.value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/tables/columns.py |
(no function) |
|
100% |
18 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/tables/contacts.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/tables/template_code.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/tables/tenants.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/ui/panels.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| tenancy/views.py |
TenantGroupView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/views.py |
TenantView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/views.py |
ContactGroupView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/views.py |
ContactRoleView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/views.py |
ContactBulkEditView.post_save_operations |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| tenancy/views.py |
ContactAssignmentEditView.alter_object |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| tenancy/views.py |
ContactAssignmentEditView.get_extra_addanother_params |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| tenancy/views.py |
(no function) |
|
100% |
240 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/mixins.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/nested.py |
NestedUserSerializer.get_display |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/api/serializers_/nested.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/owners.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/permissions.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/tokens.py |
TokenSerializer.get_fields |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| users/api/serializers_/tokens.py |
TokenSerializer.validate |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| users/api/serializers_/tokens.py |
TokenSerializer.create |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/api/serializers_/tokens.py |
TokenSerializer.to_representation |
|
80% |
5 |
1 |
0 |
|
50% |
4 |
2 |
|
67% |
| users/api/serializers_/tokens.py |
TokenProvisionSerializer.validate |
|
71% |
7 |
2 |
0 |
|
50% |
2 |
1 |
|
67% |
| users/api/serializers_/tokens.py |
(no function) |
|
100% |
32 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/serializers_/users.py |
UserSerializer.validate |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| users/api/serializers_/users.py |
UserSerializer.create |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/api/serializers_/users.py |
UserSerializer.update |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/api/serializers_/users.py |
UserSerializer.get_display |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| users/api/serializers_/users.py |
(no function) |
|
100% |
29 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/urls.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/views.py |
UsersRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/api/views.py |
TokenProvisionView.post |
|
50% |
4 |
2 |
0 |
|
100% |
0 |
0 |
|
50% |
| users/api/views.py |
TokenProvisionView.perform_create |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/api/views.py |
UserConfigViewSet.get_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/views.py |
UserConfigViewSet.list |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/views.py |
UserConfigViewSet.patch |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/api/views.py |
(no function) |
|
100% |
55 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/apps.py |
UsersConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/apps.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/choices.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/constants.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/filterset_mixins.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/filtersets.py |
GroupFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
UserFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
TokenFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
ObjectPermissionFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
ObjectPermissionFilterSet._check_action |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
OwnerGroupFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
OwnerFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/filtersets.py |
(no function) |
|
100% |
91 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/forms/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/forms/bulk_edit.py |
(no function) |
|
100% |
56 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/forms/bulk_import.py |
UserImportForm.save |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/forms/bulk_import.py |
TokenImportForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/bulk_import.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/forms/filtersets.py |
(no function) |
|
100% |
49 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/forms/model_forms.py |
UserConfigFormMetaclass.__new__ |
|
91% |
11 |
1 |
0 |
|
67% |
6 |
2 |
|
82% |
| users/forms/model_forms.py |
UserConfigForm.__init__ |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/model_forms.py |
UserConfigForm.save |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| users/forms/model_forms.py |
UserConfigForm.plugin_fields |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/forms/model_forms.py |
UserTokenForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/forms/model_forms.py |
UserTokenForm.save |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/forms/model_forms.py |
TokenForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/model_forms.py |
TokenForm.clean |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| users/forms/model_forms.py |
UserForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/model_forms.py |
UserForm.save |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/model_forms.py |
UserForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/forms/model_forms.py |
GroupForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/model_forms.py |
GroupForm.save |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/forms/model_forms.py |
get_object_types_choices |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/forms/model_forms.py |
ObjectPermissionForm.__init__ |
|
0% |
44 |
44 |
0 |
|
0% |
40 |
0 |
|
0% |
| users/forms/model_forms.py |
ObjectPermissionForm.clean |
|
0% |
29 |
29 |
0 |
|
0% |
24 |
0 |
|
0% |
| users/forms/model_forms.py |
ObjectPermissionForm.save |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/forms/model_forms.py |
(no function) |
|
100% |
105 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/graphql/filters.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/graphql/mixins.py |
(no function) |
|
86% |
7 |
1 |
0 |
|
50% |
2 |
1 |
|
78% |
| users/graphql/schema.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/graphql/types.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/__init__.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/owners.py |
OwnerGroup.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/owners.py |
OwnerGroup.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/owners.py |
Owner.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/owners.py |
Owner.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/owners.py |
(no function) |
|
100% |
27 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/permissions.py |
ObjectPermission.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.can_view |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.can_add |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.can_change |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.can_delete |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.list_constraints |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.get_registered_actions |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.get_additional_actions |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/models/permissions.py |
ObjectPermission.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/permissions.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/preferences.py |
UserConfig.get |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/models/preferences.py |
UserConfig.all |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/preferences.py |
UserConfig.set |
|
0% |
17 |
17 |
0 |
|
0% |
12 |
0 |
|
0% |
| users/models/preferences.py |
UserConfig.clear |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| users/models/preferences.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/tokens.py |
Token.v1 |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.v2 |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.partial |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/tokens.py |
Token.token |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.token |
|
78% |
9 |
2 |
0 |
|
62% |
8 |
3 |
|
71% |
| users/models/tokens.py |
Token.is_expired |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| users/models/tokens.py |
Token.is_active |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/tokens.py |
Token.get_auth_header_prefix |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| users/models/tokens.py |
Token.clean |
|
29% |
14 |
10 |
0 |
|
30% |
10 |
3 |
|
29% |
| users/models/tokens.py |
Token.save |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| users/models/tokens.py |
Token.generate_key |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.generate |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.update_digest |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/tokens.py |
Token.validate |
|
64% |
11 |
4 |
0 |
|
50% |
4 |
2 |
|
60% |
| users/models/tokens.py |
Token.validate_client_ip |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| users/models/tokens.py |
(no function) |
|
100% |
69 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/users.py |
Group.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/users.py |
Group.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
Group.natural_key |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
UserManager.create_user |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
UserManager.acreate_user |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
UserManager.create_superuser |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| users/models/users.py |
UserManager.acreate_superuser |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/models/users.py |
User.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
User.clean |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| users/models/users.py |
User.get_full_name |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/models/users.py |
User.get_short_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
User.email_user |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/models/users.py |
(no function) |
|
100% |
59 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/preferences.py |
UserPreference.__init__ |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/preferences.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/signals.py |
log_user_login_failed |
|
67% |
6 |
2 |
0 |
|
50% |
2 |
1 |
|
62% |
| users/signals.py |
set_language_on_login |
|
0% |
3 |
3 |
0 |
|
0% |
4 |
0 |
|
0% |
| users/signals.py |
create_userconfig |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| users/signals.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/tables.py |
(no function) |
|
100% |
70 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/ui/panels.py |
ObjectPermissionActionsPanel.get_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/ui/panels.py |
(no function) |
|
100% |
38 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/utils.py |
user_may_grant_token |
|
0% |
22 |
22 |
0 |
|
0% |
14 |
0 |
|
0% |
| users/utils.py |
clean_username |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/utils.py |
get_current_pepper |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| users/utils.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| users/views.py |
TokenView.get_extra_context |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/views.py |
TokenEditView.alter_object |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/views.py |
TokenBulkImportView.save_object |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| users/views.py |
UserView.get_extra_context |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/views.py |
OwnerView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| users/views.py |
(no function) |
|
100% |
234 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/api.py |
IsSuperuser.has_permission |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/api.py |
get_serializer_for_model |
|
31% |
16 |
11 |
0 |
|
17% |
6 |
1 |
|
27% |
| utilities/api.py |
get_graphql_type_for_model |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/api.py |
is_api_request |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/api.py |
is_graphql_request |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/api.py |
get_view_name |
|
100% |
6 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| utilities/api.py |
get_positional_errors |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| utilities/api.py |
_get_nested_serializer |
|
100% |
9 |
0 |
0 |
|
100% |
8 |
0 |
|
100% |
| utilities/api.py |
_get_serializer_fields |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/api.py |
get_prefetches_for_serializer |
|
93% |
28 |
2 |
0 |
|
86% |
14 |
2 |
|
90% |
| utilities/api.py |
get_annotations_for_serializer |
|
85% |
13 |
2 |
0 |
|
75% |
8 |
2 |
|
81% |
| utilities/api.py |
get_related_object_by_attrs |
|
91% |
22 |
2 |
0 |
|
67% |
6 |
2 |
|
86% |
| utilities/api.py |
(no function) |
|
100% |
32 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/apps.py |
get_installed_apps |
|
100% |
8 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| utilities/apps.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/choices.py |
Choice.__new__ |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/choices.py |
Choice.__getnewargs__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/choices.py |
Choice.__repr__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/choices.py |
ChoiceSetMeta.__new__ |
|
86% |
21 |
3 |
0 |
|
75% |
12 |
3 |
|
82% |
| utilities/choices.py |
ChoiceSetMeta.__new__.register |
|
90% |
10 |
1 |
0 |
|
88% |
8 |
1 |
|
89% |
| utilities/choices.py |
ChoiceSetMeta.__call__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/choices.py |
ChoiceSetMeta.__iter__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/choices.py |
ChoiceSet.values |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/choices.py |
ChoiceSet.as_enum |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/choices.py |
unpack_grouped_choices |
|
100% |
7 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| utilities/choices.py |
(no function) |
|
100% |
24 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/constants.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/conversion.py |
_normalized_measurement |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/conversion.py |
to_grams |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/conversion.py |
to_meters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/conversion.py |
to_millimeters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/conversion.py |
to_liters_per_minute |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/conversion.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/counters.py |
get_counters_for_model |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/counters.py |
update_counter |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/counters.py |
update_counts |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/counters.py |
post_save_receiver |
|
89% |
9 |
1 |
0 |
|
83% |
6 |
1 |
|
87% |
| utilities/counters.py |
_parent_is_being_deleted |
|
60% |
5 |
2 |
0 |
|
50% |
4 |
2 |
|
56% |
| utilities/counters.py |
pre_delete_receiver |
|
88% |
8 |
1 |
0 |
|
83% |
6 |
1 |
|
86% |
| utilities/counters.py |
post_delete_receiver |
|
86% |
7 |
1 |
0 |
|
83% |
6 |
1 |
|
85% |
| utilities/counters.py |
connect_counters |
|
100% |
14 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| utilities/counters.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/data.py |
get_config_value_ci |
|
57% |
7 |
3 |
0 |
|
33% |
6 |
2 |
|
46% |
| utilities/data.py |
deepmerge |
|
50% |
6 |
3 |
0 |
|
25% |
4 |
1 |
|
40% |
| utilities/data.py |
flatten_dict |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/data.py |
shallow_compare_dict |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/data.py |
deep_compare_dict |
|
0% |
18 |
18 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/data.py |
normalize_update_fields |
|
60% |
5 |
2 |
0 |
|
50% |
2 |
1 |
|
57% |
| utilities/data.py |
array_to_ranges |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/data.py |
array_to_string |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/data.py |
drange |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/data.py |
get_inclusive_integer_range_bounds |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/data.py |
normalize_integer_range |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/data.py |
check_ranges_overlap |
|
43% |
7 |
4 |
0 |
|
25% |
4 |
1 |
|
36% |
| utilities/data.py |
ranges_to_string_list |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/data.py |
ranges_to_string |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/data.py |
string_to_ranges |
|
0% |
15 |
15 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/data.py |
resolve_attr_path |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/data.py |
(no function) |
|
100% |
20 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/datetime.py |
local_now |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/datetime.py |
datetime_from_timestamp |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/datetime.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/debug.py |
show_toolbar |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/debug.py |
(no function) |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/error_handlers.py |
handle_protectederror |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/error_handlers.py |
handle_rest_api_exception |
|
67% |
9 |
3 |
0 |
|
50% |
2 |
1 |
|
64% |
| utilities/error_handlers.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/exceptions.py |
AbortRequest.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/exceptions.py |
PreconditionFailed.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/exceptions.py |
(no function) |
|
100% |
20 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/export.py |
TableExport.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/export.py |
TableExport.export |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/export.py |
_EchoBuffer.write |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/export.py |
stream_table_csv_response |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/export.py |
stream_table_csv_response.iter_records |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/export.py |
stream_table_csv_response.row_generator |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/export.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
ColorField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
ColorField.formfield |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
NaturalOrderingField.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
NaturalOrderingField.pre_save |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
NaturalOrderingField.deconstruct |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
RestrictedGenericForeignKeyDescriptor.get_prefetch_querysets |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
RestrictedGenericForeignKey.contribute_to_class |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
RestrictedGenericForeignKey.get_prefetch_querysets |
|
0% |
36 |
36 |
0 |
|
0% |
22 |
0 |
|
0% |
| utilities/fields.py |
RestrictedGenericForeignKey.get_prefetch_querysets.gfk_key |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/fields.py |
CounterCacheField.__init__ |
|
78% |
9 |
2 |
0 |
|
50% |
4 |
2 |
|
69% |
| utilities/fields.py |
CounterCacheField.deconstruct |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
GenericArrayForeignKey.__init__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
GenericArrayForeignKey.contribute_to_class |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/fields.py |
GenericArrayForeignKey.cache_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey.get_cache_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey._get_ids |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey.get_content_type_by_id |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey.get_content_type_of_obj |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey.get_content_type_for_model |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey.get_prefetch_querysets |
|
0% |
32 |
32 |
0 |
|
0% |
24 |
0 |
|
0% |
| utilities/fields.py |
GenericArrayForeignKey.__get__ |
|
0% |
22 |
22 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/fields.py |
(no function) |
|
100% |
45 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/filters.py |
multivalue_field_factory |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/filters.py |
multivalue_field_factory.NewField.to_python |
|
100% |
4 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/filters.py |
multivalue_field_factory.NewField.run_validators |
|
100% |
2 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/filters.py |
multivalue_field_factory.NewField.validate |
|
100% |
2 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/filters.py |
MultiValueArrayFilter.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/filters.py |
MultiValueArrayFilter.get_filter_predicate |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/filters.py |
MultiValueMACAddressFilter.filter |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/filters.py |
TreeNodeMultipleChoiceFilter.get_filter_predicate |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/filters.py |
TreeNodeMultipleChoiceFilter.filter |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/filters.py |
NullableCharFieldFilter.filter |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/filters.py |
NumericArrayFilter.filter |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| utilities/filters.py |
ContentTypeFilter.filter |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/filters.py |
MultiValueContentTypeFilter.filter |
|
82% |
11 |
2 |
0 |
|
100% |
4 |
0 |
|
87% |
| utilities/filters.py |
(no function) |
|
100% |
56 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/filtersets.py |
register_filterset |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/filtersets.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/bulk_import.py |
BulkImportForm.clean |
|
0% |
25 |
25 |
0 |
|
0% |
16 |
0 |
|
0% |
| utilities/forms/bulk_import.py |
BulkImportForm._detect_format |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/bulk_import.py |
BulkImportForm._clean_csv |
|
0% |
18 |
18 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/bulk_import.py |
BulkImportForm._clean_json |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/bulk_import.py |
BulkImportForm._clean_yaml |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/bulk_import.py |
(no function) |
|
100% |
24 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/constants.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/__init__.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/array.py |
NumericArrayField.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/array.py |
NumericArrayField.to_python |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/fields/array.py |
NumericRangeArrayField.__init__ |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| utilities/forms/fields/array.py |
NumericRangeArrayField.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/array.py |
NumericRangeArrayField.prepare_value |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/array.py |
NumericRangeArrayField.to_python |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/array.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/choices.py |
_map_choice_attr |
|
100% |
13 |
0 |
0 |
|
100% |
8 |
0 |
|
100% |
| utilities/forms/fields/choices.py |
_parent_choices_property |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| utilities/forms/fields/choices.py |
AttrChoiceMixin.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/choices.py |
AttrChoiceMixin._get_choices |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/choices.py |
AttrChoiceMixin._set_choices |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| utilities/forms/fields/choices.py |
TypedChoiceField.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/choices.py |
(no function) |
|
100% |
18 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/content_types.py |
ContentTypeChoiceMixin.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/content_types.py |
ContentTypeChoiceMixin.label_from_instance |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/content_types.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/csv.py |
CSVSelectWidget.value_omitted_from_data |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
CSVChoicesMixin.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/csv.py |
CSVMultipleChoiceField.to_python |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
CSVModelChoiceField.to_python |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
CSVModelMultipleChoiceField.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
CSVContentTypeField.prepare_value |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
CSVContentTypeField.to_python |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
CSVMultipleContentTypeField.prepare_value |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/fields/csv.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/dynamic.py |
DynamicChoiceField.get_bound_field |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/dynamic.py |
DynamicMultipleChoiceField.get_bound_field |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/dynamic.py |
DynamicModelChoiceMixin.__init__ |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/dynamic.py |
DynamicModelChoiceMixin.widget_attrs |
|
100% |
10 |
0 |
0 |
|
100% |
8 |
0 |
|
100% |
| utilities/forms/fields/dynamic.py |
DynamicModelChoiceMixin.get_bound_field |
|
0% |
33 |
33 |
0 |
|
0% |
24 |
0 |
|
0% |
| utilities/forms/fields/dynamic.py |
DynamicModelChoiceField.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/dynamic.py |
DynamicModelMultipleChoiceField.clean |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/dynamic.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/expandable.py |
ExpandableNameField.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/forms/fields/expandable.py |
ExpandableNameField.to_python |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/fields/expandable.py |
ExpandableNumericField.__init__ |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| utilities/forms/fields/expandable.py |
ExpandableIPNetworkField.__init__ |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| utilities/forms/fields/expandable.py |
ExpandableIPNetworkField.to_python |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/fields/expandable.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
BigIntegerField.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
PositiveBigIntegerField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
CommentField.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
SlugField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
SlugField.get_bound_field |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/fields/fields.py |
TagFilterField.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
TagFilterField.__init__.get_choices |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/fields.py |
JSONField.__init__ |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/forms/fields/fields.py |
JSONField.prepare_value |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/fields/fields.py |
MACAddressField.to_python |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/fields.py |
(no function) |
|
100% |
44 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.__init__ |
|
100% |
15 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.content_type_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.object_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.queryset |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField._set_object_queryset |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField._get_object_queryset |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField._sync_widget_refs |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField._resolve_subvalue |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField._get_content_type |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField._configure_object_field |
|
0% |
27 |
27 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.prepare |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.get_bound_field |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.clean |
|
0% |
20 |
20 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
GenericObjectChoiceField.compress |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/fields/generic.py |
(no function) |
|
100% |
31 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/forms.py |
DeleteForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/forms.py |
BulkRenameForm.clean |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/forms.py |
BulkDeleteForm.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/forms.py |
CSVModelForm.__init__ |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/forms.py |
CSVModelForm.clean |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/forms.py |
TableConfigForm.__init__ |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/forms.py |
TableConfigForm.table_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/forms.py |
(no function) |
|
100% |
36 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/mixins.py |
BackgroundJobMixin.__init__ |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/mixins.py |
CheckLastUpdatedMixin.clean |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/forms/mixins.py |
GenericObjectFormMixin.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/forms/mixins.py |
GenericObjectFormMixin._generic_object_fields |
|
0% |
3 |
3 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/mixins.py |
GenericObjectFormMixin._warn_missing_htmx_fieldsets |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/mixins.py |
GenericObjectFormMixin.clean |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/forms/mixins.py |
FilterModifierMixin.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/mixins.py |
FilterModifierMixin._enhance_fields_with_modifiers |
|
0% |
14 |
14 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/forms/mixins.py |
FilterModifierMixin._get_lookup_choices |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/mixins.py |
FilterModifierMixin._verify_lookups_with_filterset |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/mixins.py |
(no function) |
|
100% |
31 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/rendering.py |
FieldSet.__init__ |
|
67% |
6 |
2 |
0 |
|
25% |
4 |
1 |
|
50% |
| utilities/forms/rendering.py |
InlineFields.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/rendering.py |
TabbedGroups.__init__ |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| utilities/forms/rendering.py |
TabbedGroups.tabs |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/rendering.py |
M2MAddRemoveFields.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/rendering.py |
ObjectAttribute.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/rendering.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/utils.py |
parse_numeric_range |
|
0% |
20 |
20 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/forms/utils.py |
parse_alphanumeric_range |
|
0% |
24 |
24 |
0 |
|
0% |
18 |
0 |
|
0% |
| utilities/forms/utils.py |
expand_alphanumeric_pattern |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/utils.py |
expand_ipnetwork_pattern |
|
0% |
14 |
14 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/forms/utils.py |
get_capacity_unit_label |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/utils.py |
get_field_value |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/forms/utils.py |
get_selected_values |
|
0% |
18 |
18 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/forms/utils.py |
add_blank_choice |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/utils.py |
form_from_model |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/forms/utils.py |
restrict_form_fields |
|
0% |
3 |
3 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/utils.py |
parse_csv |
|
0% |
19 |
19 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/forms/utils.py |
validate_csv |
|
0% |
15 |
15 |
0 |
|
0% |
16 |
0 |
|
0% |
| utilities/forms/utils.py |
(no function) |
|
100% |
20 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/apiselect.py |
APISelect.get_context |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/widgets/apiselect.py |
APISelect.__init__ |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/forms/widgets/apiselect.py |
APISelect.__deepcopy__ |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/apiselect.py |
APISelect._process_query_param |
|
68% |
19 |
6 |
0 |
|
75% |
16 |
4 |
|
71% |
| utilities/forms/widgets/apiselect.py |
APISelect._process_query_params |
|
100% |
5 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| utilities/forms/widgets/apiselect.py |
APISelect._serialize_params |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/apiselect.py |
APISelect._add_dynamic_params |
|
71% |
7 |
2 |
0 |
|
100% |
2 |
0 |
|
78% |
| utilities/forms/widgets/apiselect.py |
APISelect._add_static_params |
|
71% |
7 |
2 |
0 |
|
100% |
2 |
0 |
|
78% |
| utilities/forms/widgets/apiselect.py |
APISelect.add_query_params |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/apiselect.py |
APISelect.add_query_param |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/apiselect.py |
(no function) |
|
100% |
20 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/datetime.py |
DatePicker.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/datetime.py |
DateTimePicker.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/datetime.py |
TimePicker.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/datetime.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/generic.py |
GenericObjectSelect.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/generic.py |
GenericObjectSelect.decompress |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/forms/widgets/generic.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/misc.py |
MarkdownWidget.__init__ |
|
75% |
4 |
1 |
0 |
|
50% |
2 |
1 |
|
67% |
| utilities/forms/widgets/misc.py |
NumberWithOptions.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/misc.py |
NumberWithOptions.get_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/misc.py |
SlugWidget.__init__ |
|
80% |
5 |
1 |
0 |
|
50% |
2 |
1 |
|
71% |
| utilities/forms/widgets/misc.py |
ArrayWidget.format_value |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/widgets/misc.py |
ChoicesWidget.format_value |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/forms/widgets/misc.py |
(no function) |
|
100% |
18 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/modifiers.py |
FilterModifierWidget.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/modifiers.py |
FilterModifierWidget.value_from_datadict |
|
0% |
22 |
22 |
0 |
|
0% |
18 |
0 |
|
0% |
| utilities/forms/widgets/modifiers.py |
FilterModifierWidget.get_context |
|
0% |
31 |
31 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/forms/widgets/modifiers.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/select.py |
AttrSelectMixin.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/select.py |
AttrSelectMixin.__deepcopy__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/select.py |
AttrSelectMixin.create_option |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/forms/widgets/select.py |
BulkEditNullBooleanSelect.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/select.py |
ClearableSelect.__init__ |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| utilities/forms/widgets/select.py |
ColorSelect.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/select.py |
HTMXSelect.__init__ |
|
90% |
10 |
1 |
0 |
|
83% |
6 |
1 |
|
88% |
| utilities/forms/widgets/select.py |
SelectMultipleBase.optgroups |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/forms/widgets/select.py |
SelectMultipleBase.create_option |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/select.py |
AvailableOptions.get_context |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/select.py |
SplitMultiSelectWidget.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/forms/widgets/select.py |
SplitMultiSelectWidget.get_context |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/select.py |
SplitMultiSelectWidget.value_from_datadict |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/forms/widgets/select.py |
(no function) |
|
100% |
36 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/html.py |
_attribute_filter |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/html.py |
clean_html |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/html.py |
foreground_color |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/html.py |
highlight |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/html.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/htmx.py |
htmx_partial |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/htmx.py |
htmx_current_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/htmx.py |
htmx_maybe_redirect_current_page |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/htmx.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/jinja2.py |
env_filter |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/jinja2.py |
sanitize_http_header |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/jinja2.py |
DataFileLoader.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/jinja2.py |
DataFileLoader.get_source |
|
0% |
11 |
11 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/jinja2.py |
DataFileLoader.cache_templates |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/jinja2.py |
_jinja2_filters |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/jinja2.py |
render_jinja2 |
|
0% |
18 |
18 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/jinja2.py |
validate_jinja2_syntax |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/jinja2.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/jobs.py |
is_background_request |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/jobs.py |
process_request_as_job |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/jobs.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/json.py |
CustomFieldJSONEncoder.default |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/json.py |
ConfigJSONEncoder.default |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/json.py |
JobLogDecoder.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/json.py |
JobLogDecoder._deserialize_entry |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/json.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/jsonschema.py |
JSONSchemaProperty.to_form_field |
|
0% |
31 |
31 |
0 |
|
0% |
30 |
0 |
|
0% |
| utilities/jsonschema.py |
JSONSchemaProperty.field_class |
|
0% |
15 |
15 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/jsonschema.py |
validate_schema |
|
67% |
9 |
3 |
0 |
|
75% |
4 |
1 |
|
69% |
| utilities/jsonschema.py |
(no function) |
|
100% |
50 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/ltree.py |
ltree_trigger_sql |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/ltree.py |
InstallLtreeTriggers.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/ltree.py |
InstallLtreeTriggers.state_forwards |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/ltree.py |
InstallLtreeTriggers.database_forwards |
|
100% |
2 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/ltree.py |
InstallLtreeTriggers.database_backwards |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/ltree.py |
InstallLtreeTriggers.describe |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/ltree.py |
ReinstallLtreeTriggers.database_backwards |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/ltree.py |
ReinstallLtreeTriggers.describe |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/ltree.py |
(no function) |
|
100% |
22 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/management/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/management/commands/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/management/commands/calculate_cached_counts.py |
Command.collect_models |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/management/commands/calculate_cached_counts.py |
Command.handle |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/management/commands/calculate_cached_counts.py |
(no function) |
|
0% |
9 |
9 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
Command.add_arguments |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
Command.get_models |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
Command.get_models.concrete_subclasses |
|
0% |
5 |
5 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
Command.check_reachable |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
Command.report_stale |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
Command.handle |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/management/commands/rebuild_ltree_paths.py |
(no function) |
|
0% |
14 |
14 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/markdown.py |
StrikethroughExtension.extendMarkdown |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/markdown.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/migration.py |
custom_deconstruct |
|
100% |
5 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/migration.py |
InstallDenormalizationTrigger.__init__ |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/migration.py |
InstallDenormalizationTrigger.function_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/migration.py |
InstallDenormalizationTrigger.trigger_name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/migration.py |
InstallDenormalizationTrigger.state_forwards |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/migration.py |
InstallDenormalizationTrigger.database_forwards |
|
100% |
14 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/migration.py |
InstallDenormalizationTrigger.database_backwards |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/migration.py |
InstallDenormalizationTrigger.describe |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/migration.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/mptt.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/mptt_to_ltree.py |
populate_paths_sql |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/mptt_to_ltree.py |
count_stale_rows_sql |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/mptt_to_ltree.py |
unreachable_rows_sql |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/mptt_to_ltree.py |
assert_paths_populated_sql |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/mptt_to_ltree.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/object_types.py |
object_type_identifier |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/object_types.py |
object_type_name |
|
0% |
9 |
9 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/object_types.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/ordering.py |
naturalize |
|
20% |
10 |
8 |
0 |
|
12% |
8 |
1 |
|
17% |
| utilities/ordering.py |
naturalize_interface |
|
90% |
20 |
2 |
0 |
|
79% |
14 |
3 |
|
85% |
| utilities/ordering.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/paginator.py |
EnhancedPaginator.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/paginator.py |
EnhancedPaginator._get_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/paginator.py |
EnhancedPaginator.get_page_lengths |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/paginator.py |
EnhancedPage.smart_pages |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/paginator.py |
get_paginate_count |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/paginator.py |
get_paginate_count._max_allowed |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/paginator.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/password_validation.py |
AlphanumericPasswordValidator.validate |
|
50% |
6 |
3 |
0 |
|
33% |
6 |
2 |
|
42% |
| utilities/password_validation.py |
AlphanumericPasswordValidator.get_help_text |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/password_validation.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/permissions.py |
ModelAction.__post_init__ |
|
50% |
4 |
2 |
0 |
|
50% |
4 |
2 |
|
50% |
| utilities/permissions.py |
ModelAction.__hash__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/permissions.py |
ModelAction.__eq__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/permissions.py |
register_model_actions |
|
80% |
5 |
1 |
0 |
|
75% |
4 |
1 |
|
78% |
| utilities/permissions.py |
get_permission_for_model |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/permissions.py |
resolve_permission |
|
67% |
6 |
2 |
0 |
|
100% |
0 |
0 |
|
67% |
| utilities/permissions.py |
resolve_permission_type |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/permissions.py |
permission_is_exempt |
|
80% |
5 |
1 |
0 |
|
50% |
4 |
2 |
|
67% |
| utilities/permissions.py |
qs_filter_from_constraints |
|
0% |
13 |
13 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/permissions.py |
qs_filter_from_constraints._replace_tokens |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/permissions.py |
(no function) |
|
100% |
20 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/prefetch.py |
get_prefetchable_fields |
|
0% |
11 |
11 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/prefetch.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/proxy.py |
DefaultProxyRouter._get_protocol_from_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/proxy.py |
DefaultProxyRouter.route |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/proxy.py |
resolve_proxies |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/proxy.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/query.py |
count_related |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/query.py |
dict_to_filter_params |
|
100% |
7 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| utilities/query.py |
_is_mptt_model |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/query.py |
reapply_model_ordering |
|
89% |
9 |
1 |
0 |
|
83% |
6 |
1 |
|
87% |
| utilities/query.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/query_functions.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/querydict.py |
dict_to_querydict |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/querydict.py |
normalize_querydict |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/querydict.py |
prepare_cloned_fields |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/querydict.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/querysets.py |
chunked_update |
|
77% |
26 |
6 |
0 |
|
43% |
14 |
6 |
|
65% |
| utilities/querysets.py |
RestrictedPrefetch.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/querysets.py |
RestrictedPrefetch.get_current_querysets |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/querysets.py |
RestrictedQuerySet.restrict |
|
27% |
11 |
8 |
0 |
|
17% |
6 |
1 |
|
24% |
| utilities/querysets.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/relations.py |
get_related_models |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/relations.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/release.py |
_find_release_base_path |
|
30% |
10 |
7 |
0 |
|
17% |
6 |
1 |
|
25% |
| utilities/release.py |
ReleaseInfo.full_version |
|
83% |
6 |
1 |
0 |
|
50% |
4 |
2 |
|
70% |
| utilities/release.py |
ReleaseInfo.name |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/release.py |
ReleaseInfo.asdict |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/release.py |
load_release_data |
|
80% |
15 |
3 |
0 |
|
50% |
6 |
3 |
|
71% |
| utilities/release.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/request.py |
NetBoxFakeRequest.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/request.py |
copy_safe_request |
|
0% |
13 |
13 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/request.py |
get_safe_request_context |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/request.py |
get_client_ip |
|
46% |
13 |
7 |
0 |
|
75% |
4 |
1 |
|
53% |
| utilities/request.py |
safe_for_redirect |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/request.py |
apply_request_processors |
|
71% |
7 |
2 |
0 |
|
100% |
2 |
0 |
|
78% |
| utilities/request.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/rqworker.py |
NetBoxRQWorker.heartbeat |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/rqworker.py |
get_queue_for_model |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/rqworker.py |
_is_live_worker |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/rqworker.py |
get_workers_for_queue |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/rqworker.py |
get_all_workers |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/rqworker.py |
any_workers_for_queue |
|
38% |
8 |
5 |
0 |
|
17% |
6 |
1 |
|
29% |
| utilities/rqworker.py |
get_rq_retry |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/rqworker.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/secret_key.py |
generate_secret_key |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/secret_key.py |
(no function) |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/security.py |
validate_peppers |
|
55% |
11 |
5 |
0 |
|
58% |
12 |
5 |
|
57% |
| utilities/security.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/serialization.py |
serialize_object |
|
93% |
14 |
1 |
0 |
|
90% |
10 |
1 |
|
92% |
| utilities/serialization.py |
deserialize_object |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/serialization.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/serializers/json.py |
Serializer._value_from_field |
|
100% |
5 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| utilities/serializers/json.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/socks.py |
ProxyHTTPConnection.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/socks.py |
ProxyHTTPConnection._new_conn |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/socks.py |
ProxyPoolManager.__init__ |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/socks.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/string.py |
humanize_duration |
|
0% |
24 |
24 |
0 |
|
0% |
16 |
0 |
|
0% |
| utilities/string.py |
enum_key |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/string.py |
remove_linebreaks |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/string.py |
title |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/string.py |
trailing_slash |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/string.py |
(no function) |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/tables.py |
get_table_configs |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/tables.py |
get_table_for_model |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/tables.py |
get_table_ordering |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/tables.py |
linkify_phone |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/tables.py |
register_table_column |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/tables.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/builtins/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/builtins/filters.py |
linkify |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
bettertitle |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
fgcolor |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
getattr_ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
meta |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
placeholder |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
split |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
tzoffset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
content_type |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
content_type_id |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
render_markdown |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
render_json |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
render_yaml |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
isodate |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
isotime |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
isodatetime |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
truncate_middle |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/builtins/filters.py |
(no function) |
|
100% |
52 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/builtins/tags.py |
tag |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
customfield_value |
|
0% |
15 |
15 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
badge |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
checkmark |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
copy_content |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
htmx_table |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
formaction |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
static_with_params |
|
79% |
14 |
3 |
0 |
|
67% |
6 |
2 |
|
75% |
| utilities/templatetags/builtins/tags.py |
render |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
render_breadcrumbs |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/builtins/tags.py |
(no function) |
|
100% |
31 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/buttons.py |
action_buttons |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
bookmark_button |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
subscribe_button |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
clone_button |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
edit_button |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
delete_button |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
sync_button |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
add_button |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
import_button |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
export_button |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
bulk_edit_button |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
bulk_delete_button |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/buttons.py |
(no function) |
|
100% |
36 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/form_helpers.py |
getfield |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
any_required |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
widget_type |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
render_field_with_aria |
|
0% |
25 |
25 |
0 |
|
0% |
20 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
render_fieldset |
|
0% |
30 |
30 |
0 |
|
0% |
26 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
render_field |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
render_custom_fields |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
render_form |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
render_errors |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/form_helpers.py |
(no function) |
|
100% |
29 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/helpers.py |
viewname |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
validated_viewname |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
ActionURLNode.__init__ |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
ActionURLNode.__repr__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
ActionURLNode.render |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
action_url |
|
0% |
17 |
17 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
_format_speed |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
humanize_speed |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
_humanize_capacity |
|
0% |
15 |
15 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
humanize_disk_capacity |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
humanize_ram_capacity |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
divide |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
percentage |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
as_range |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
meters_to_feet |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
kg_to_pounds |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
display_weight |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
display_distance |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
display_diameter |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
display_flow_rate |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
startswith |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
get_key |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
get_item |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
status_from_tag |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
icon_from_status |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
utilization_graph |
|
0% |
10 |
10 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
table_config_form |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
applied_filters |
|
0% |
63 |
63 |
0 |
|
0% |
44 |
0 |
|
0% |
| utilities/templatetags/helpers.py |
(no function) |
|
100% |
68 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/navigation.py |
nav |
|
75% |
20 |
5 |
0 |
|
75% |
16 |
4 |
|
75% |
| utilities/templatetags/navigation.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/perms.py |
_check_permission |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
can_view |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
can_add |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
can_change |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
can_delete |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
can_sync |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
can_run |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/perms.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/plugins.py |
_get_registered_content |
|
33% |
18 |
12 |
0 |
|
33% |
6 |
2 |
|
33% |
| utilities/templatetags/plugins.py |
plugin_head |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/plugins.py |
plugin_navbar |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/plugins.py |
plugin_list_buttons |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/plugins.py |
plugin_buttons |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/plugins.py |
plugin_alerts |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/plugins.py |
plugin_left_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/plugins.py |
plugin_right_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/plugins.py |
plugin_full_width_page |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/templatetags/plugins.py |
(no function) |
|
100% |
24 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/templatetags/tabs.py |
model_view_tabs |
|
0% |
22 |
22 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/templatetags/tabs.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/testing/__init__.py |
(no function) |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APITestCase.setUp |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APITestCase._get_view_namespace |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APITestCase._get_detail_url |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APITestCase._get_list_url |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GetObjectViewTestCase.test_get_object_anonymous |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GetObjectViewTestCase.test_get_object_without_permission |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GetObjectViewTestCase.test_get_object |
|
0% |
13 |
13 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GetObjectViewTestCase.test_options_object |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.ListObjectsViewTestCase.test_list_objects_anonymous |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.ListObjectsViewTestCase.test_list_objects_brief |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.ListObjectsViewTestCase.test_list_objects_without_permission |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.ListObjectsViewTestCase.test_list_objects |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.ListObjectsViewTestCase.test_options_objects |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.CreateObjectViewTestCase.test_create_object_without_permission |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.CreateObjectViewTestCase.test_create_object |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.CreateObjectViewTestCase.test_bulk_create_objects |
|
0% |
27 |
27 |
0 |
|
0% |
18 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.CreateObjectViewTestCase.test_bulk_create_objects_invalid_item |
|
0% |
12 |
12 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_update_object_without_permission |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_update_object |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_update_object_with_etag |
|
0% |
18 |
18 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_bulk_update_objects |
|
0% |
27 |
27 |
0 |
|
0% |
18 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_bulk_update_objects_string_id |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_bulk_update_objects_validation_error |
|
0% |
22 |
22 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_bulk_update_objects_nonexistent_id |
|
0% |
24 |
24 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_bulk_update_objects_malformed_entry |
|
0% |
19 |
19 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.UpdateObjectViewTestCase.test_bulk_update_objects_duplicate_id |
|
0% |
23 |
23 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_delete_object_without_permission |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_delete_object |
|
0% |
15 |
15 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_bulk_delete_objects |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_bulk_delete_objects_nonexistent_id |
|
0% |
17 |
17 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_bulk_delete_objects_malformed_entry |
|
0% |
14 |
14 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_bulk_delete_objects_duplicate_id |
|
0% |
16 |
16 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.DeleteObjectViewTestCase.test_bulk_delete_objects_no_body |
|
0% |
11 |
11 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase.get_graphql_type_class |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._get_graphql_base_name |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._build_query_with_filter |
|
0% |
25 |
25 |
0 |
|
0% |
20 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._graphql_literal |
|
0% |
14 |
14 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._render_graphql_filter_value |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._build_graphql_filter_string |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._build_filtered_query |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._build_graphql_id_list_query |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._graphql_type_exposes_id |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._get_model_graphql_filter_class |
|
0% |
10 |
10 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._get_graphql_filter_field_names |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._collect_filter_class_annotation_names |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._assert_graphql_filter_class_present |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._get_nonempty_field_value |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._get_model_field_for_filter_field |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._iter_filter_class_annotations |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._unwrap_filter_annotation |
|
0% |
36 |
36 |
0 |
|
0% |
20 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._classify_filter_annotation |
|
0% |
33 |
33 |
0 |
|
0% |
28 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_id_filter_tests |
|
0% |
14 |
14 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_str_lookup_filter_tests |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_filter_lookup_filter_tests |
|
0% |
10 |
10 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_comparison_lookup_filter_tests |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_numeric_filter_tests |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_date_lookup_filter_tests |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_range_lookup_filter_tests |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_array_lookup_filter_tests |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._emit_range_array_lookup_filter_tests |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._iter_auto_graphql_filter_tests |
|
0% |
28 |
28 |
0 |
|
0% |
20 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._iter_legacy_graphql_filter_tests |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._coerce_graphql_filter_test |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._iter_explicit_graphql_filter_tests |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._get_expected_id_set |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._assert_graphql_filter_test |
|
0% |
17 |
17 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._coerce_graphql_query_test |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._build_query |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase.test_graphql_get_object |
|
0% |
26 |
26 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase.test_graphql_list_objects |
|
0% |
24 |
24 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase._assert_graphql_filter_tests_exist |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase.test_graphql_filter_objects |
|
0% |
18 |
18 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLTestCase.test_graphql_extra_queries |
|
0% |
17 |
17 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.get_graphql_schema |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.iter_test_module_names |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.import_graphql_test_modules |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.import_graphql_test_module |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.unwrap_graphql_type |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.get_schema_field_type_class |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.get_graphql_type_model |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.get_schema_type_classes |
|
0% |
14 |
14 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.iter_graphql_testcase_classes |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.get_testcase_type_class |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.get_testcase_type_classes |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.format_type_class |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
APIViewTestCases.GraphQLSchemaCoverageTestCase.test_schema_types_have_graphql_test_coverage |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/api.py |
(no function) |
|
0% |
176 |
176 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.setUp |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.cleanupSubTest |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.add_permissions |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.remove_permissions |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.assertObjectChange |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.assertHttpStatus |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/base.py |
TestCase.assertNotCacheable |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/base.py |
ModelTestCase._get_queryset |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/base.py |
ModelTestCase.prepare_instance |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/base.py |
ModelTestCase.model_to_dict |
|
0% |
38 |
38 |
0 |
|
0% |
34 |
0 |
|
0% |
| utilities/testing/base.py |
ModelTestCase.assertInstanceEqual |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/base.py |
(no function) |
|
0% |
37 |
37 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/filtersets.py |
BaseFilterSetTestMixin.get_m2m_filter_name |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/filtersets.py |
BaseFilterSetTestMixin.get_filters_for_model_field |
|
0% |
17 |
17 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/testing/filtersets.py |
BaseFilterSetTestMixin.test_id |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/filtersets.py |
BaseFilterSetTestMixin.test_missing_filters |
|
0% |
22 |
22 |
0 |
|
0% |
16 |
0 |
|
0% |
| utilities/testing/filtersets.py |
ChangeLoggedFilterSetTestMixin.test_created |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/filtersets.py |
ChangeLoggedFilterSetTestMixin.test_last_updated |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/filtersets.py |
(no function) |
|
0% |
25 |
25 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/mixins.py |
RQQueueTestMixin.clear_rq_queues |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/mixins.py |
RQQueueTestMixin.run_rq_jobs |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/mixins.py |
RQQueueTestMixin.setUp |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/mixins.py |
RQQueueTestMixin.tearDown |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/mixins.py |
(no function) |
|
0% |
13 |
13 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/query_counts.py |
_is_update_mode |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/query_counts.py |
_is_parallel_test_run |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/query_counts.py |
_baseline_path |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/query_counts.py |
_load_baseline |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/query_counts.py |
_record_update |
|
0% |
14 |
14 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/query_counts.py |
assert_expected_query_count |
|
0% |
24 |
24 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/query_counts.py |
(no function) |
|
0% |
25 |
25 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/tables.py |
ModelTableTestCase.validate_table_test_case |
|
0% |
4 |
4 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/tables.py |
ModelTableTestCase.get_request |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/tables.py |
ModelTableTestCase.get_table |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/tables.py |
ModelTableTestCase.is_queryset_source_view |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/tables.py |
ModelTableTestCase.get_queryset_sources |
|
0% |
16 |
16 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/testing/tables.py |
ModelTableTestCase.iter_orderable_columns |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/tables.py |
TableTestCases.StandardTableTestCase.setUpClass |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/tables.py |
TableTestCases.StandardTableTestCase.test_every_orderable_column_renders |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/tables.py |
(no function) |
|
0% |
25 |
25 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
post_data |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/testing/utils.py |
create_test_device |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/utils.py |
create_test_virtualmachine |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
create_test_nat_ip_pair |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/utils.py |
create_test_user |
|
0% |
8 |
8 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/utils.py |
create_tags |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
extract_form_failures |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
disable_warnings |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
disable_logging |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
add_custom_field_data |
|
0% |
6 |
6 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/utils.py |
get_random_string |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
PinnedConnectionRouter.__init__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/utils.py |
PinnedConnectionRouter._check |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/utils.py |
(no function) |
|
0% |
35 |
35 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ModelViewTestCase._get_base_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ModelViewTestCase._get_url |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.GetObjectViewTestCase.test_get_object_anonymous |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.GetObjectViewTestCase.test_get_object_without_permission |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.GetObjectViewTestCase.test_get_object_with_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.GetObjectViewTestCase.test_get_object_with_constrained_permission |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.GetObjectChangelogViewTestCase.test_get_object_changelog |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateObjectViewTestCase.test_create_object_without_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateObjectViewTestCase.test_create_object_with_permission |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateObjectViewTestCase.test_create_object_with_constrained_permission |
|
0% |
16 |
16 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.EditObjectViewTestCase.test_edit_object_without_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.EditObjectViewTestCase.test_edit_object_with_permission |
|
0% |
19 |
19 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.EditObjectViewTestCase.test_edit_object_with_constrained_permission |
|
0% |
13 |
13 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.DeleteObjectViewTestCase.test_delete_object_without_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.DeleteObjectViewTestCase.test_delete_object_with_permission |
|
0% |
17 |
17 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.DeleteObjectViewTestCase.test_delete_object_with_constrained_permission |
|
0% |
14 |
14 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.ListObjectsViewTestCase.test_list_objects_anonymous |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.ListObjectsViewTestCase.test_list_objects_without_permission |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.ListObjectsViewTestCase.test_list_objects_with_permission |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.ListObjectsViewTestCase.test_list_objects_with_constrained_permission |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.ListObjectsViewTestCase.test_export_objects |
|
0% |
11 |
11 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.ListObjectsViewTestCase.test_export_objects_anonymous |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateMultipleObjectsViewTestCase.test_create_multiple_objects_without_permission |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateMultipleObjectsViewTestCase.test_create_multiple_objects_with_permission |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateMultipleObjectsViewTestCase.test_create_multiple_objects_with_constrained_permission |
|
0% |
15 |
15 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.CreateMultipleObjectsViewTestCase.test_create_multiple_objects_addanother |
|
0% |
15 |
15 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase.get_scenarios |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase._get_csv_data |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase._get_update_csv_data |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase.test_bulk_import_objects_without_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase.test_bulk_import_objects_with_permission |
|
0% |
10 |
10 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase._test_bulk_import_with_permission_scenario |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase.test_bulk_update_objects_without_change_permission |
|
0% |
24 |
24 |
0 |
|
0% |
10 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase.test_bulk_update_objects_with_permission |
|
0% |
25 |
25 |
0 |
|
0% |
12 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase.test_bulk_import_objects_with_constrained_permission |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkImportObjectsViewTestCase._test_bulk_import_constrained_scenario |
|
0% |
10 |
10 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkEditObjectsViewTestCase.test_bulk_edit_objects_without_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkEditObjectsViewTestCase.test_bulk_edit_objects_with_permission |
|
0% |
20 |
20 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkEditObjectsViewTestCase.test_bulk_edit_objects_with_constrained_permission |
|
0% |
17 |
17 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkDeleteObjectsViewTestCase.test_bulk_delete_objects_without_permission |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkDeleteObjectsViewTestCase.test_bulk_delete_objects_with_permission |
|
0% |
16 |
16 |
0 |
|
0% |
6 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkDeleteObjectsViewTestCase.test_bulk_delete_objects_with_constrained_permission |
|
0% |
13 |
13 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkRenameObjectsViewTestCase.test_bulk_rename_objects_without_permission |
|
0% |
7 |
7 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkRenameObjectsViewTestCase.test_bulk_rename_objects_with_permission |
|
0% |
11 |
11 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkRenameObjectsViewTestCase.test_bulk_rename_objects_with_changelog_message |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkRenameObjectsViewTestCase.test_bulk_rename_objects_with_constrained_permission |
|
0% |
15 |
15 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkRenameObjectsViewTestCase.test_bulk_rename_label_field |
|
0% |
15 |
15 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
ViewTestCases.BulkRenameObjectsViewTestCase.test_bulk_rename_name_and_label_fields |
|
0% |
16 |
16 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/testing/views.py |
(no function) |
|
0% |
119 |
119 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/tracking.py |
Tracker.__init__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/tracking.py |
Tracker.__contains__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/tracking.py |
Tracker.set |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/tracking.py |
Tracker.get |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/tracking.py |
Tracker.clear |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| utilities/tracking.py |
TrackingModelMixin.__init__ |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/tracking.py |
TrackingModelMixin.tracker |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/tracking.py |
TrackingModelMixin.save |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/tracking.py |
TrackingModelMixin.__setattr__ |
|
64% |
11 |
4 |
0 |
|
58% |
12 |
3 |
|
61% |
| utilities/tracking.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/urls.py |
get_model_urls |
|
87% |
15 |
2 |
0 |
|
83% |
6 |
1 |
|
86% |
| utilities/urls.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/validators.py |
EnhancedURLValidator.__call__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/validators.py |
ExclusionValidator.compare |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/validators.py |
MultipleOfValidator.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/validators.py |
MultipleOfValidator.__call__ |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/validators.py |
url_scheme_is_allowed |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/validators.py |
validate_regex |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/validators.py |
(no function) |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/views.py |
ConditionalLoginRequiredMixin.dispatch |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| utilities/views.py |
TokenConditionalLoginRequiredMixin.dispatch |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/views.py |
ContentTypePermissionRequiredMixin.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/views.py |
ContentTypePermissionRequiredMixin.has_permission |
|
0% |
5 |
5 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/views.py |
ContentTypePermissionRequiredMixin.dispatch |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/views.py |
ObjectPermissionRequiredMixin.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/views.py |
ObjectPermissionRequiredMixin.has_permission |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/views.py |
ObjectPermissionRequiredMixin.dispatch |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/views.py |
GetReturnURLMixin.get_return_url |
|
0% |
13 |
13 |
0 |
|
0% |
8 |
0 |
|
0% |
| utilities/views.py |
GetRelatedModelsMixin.RelatedObjectCount.name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/views.py |
GetRelatedModelsMixin.get_related_models |
|
0% |
7 |
7 |
0 |
|
0% |
2 |
0 |
|
0% |
| utilities/views.py |
ViewTab.__init__ |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/views.py |
ViewTab.render |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/views.py |
ViewTab._get_badge_value |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| utilities/views.py |
get_viewname |
|
87% |
15 |
2 |
0 |
|
70% |
10 |
3 |
|
80% |
| utilities/views.py |
get_action_url |
|
67% |
3 |
1 |
0 |
|
50% |
2 |
1 |
|
60% |
| utilities/views.py |
get_default_template |
|
0% |
6 |
6 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/views.py |
register_model_view |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utilities/views.py |
register_model_view._wrapper |
|
100% |
6 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| utilities/views.py |
get_view |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| utilities/views.py |
(no function) |
|
100% |
54 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/serializers.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/serializers_/clusters.py |
(no function) |
|
100% |
39 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/serializers_/nested.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/serializers_/virtualmachines.py |
VirtualMachineSerializer.get_config_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/api/serializers_/virtualmachines.py |
VMInterfaceSerializer.validate |
|
0% |
25 |
25 |
0 |
|
0% |
16 |
0 |
|
0% |
| virtualization/api/serializers_/virtualmachines.py |
(no function) |
|
100% |
82 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/urls.py |
(no function) |
|
100% |
13 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/views.py |
VirtualizationRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/api/views.py |
VMInterfaceViewSet.get_bulk_destroy_queryset |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/api/views.py |
(no function) |
|
100% |
39 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/apps.py |
VirtualizationConfig.ready |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/apps.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/choices.py |
(no function) |
|
100% |
26 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/filtersets.py |
ClusterFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/filtersets.py |
VirtualMachineTypeFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/filtersets.py |
VirtualMachineFilterSet.search |
|
0% |
12 |
12 |
0 |
|
0% |
6 |
0 |
|
0% |
| virtualization/filtersets.py |
VirtualMachineFilterSet._has_primary_ip |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/filtersets.py |
VMInterfaceFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/filtersets.py |
VirtualDiskFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/filtersets.py |
(no function) |
|
100% |
104 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/__init__.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/bulk_create.py |
VirtualMachineBulkAddComponentForm.clean_tags |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/bulk_create.py |
(no function) |
|
100% |
15 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/bulk_edit.py |
VirtualMachineTypeBulkEditForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/bulk_edit.py |
VirtualMachineBulkEditForm.__init__ |
|
0% |
4 |
4 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/bulk_edit.py |
VMInterfaceBulkEditForm.__init__ |
|
0% |
25 |
25 |
0 |
|
0% |
12 |
0 |
|
0% |
| virtualization/forms/bulk_edit.py |
VirtualDiskBulkEditForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/bulk_edit.py |
(no function) |
|
100% |
87 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/bulk_import.py |
VMInterfaceImportForm.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
6 |
0 |
|
0% |
| virtualization/forms/bulk_import.py |
VMInterfaceImportForm.clean_enabled |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/forms/bulk_import.py |
(no function) |
|
100% |
71 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/filtersets.py |
VirtualMachineTypeFilterForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/filtersets.py |
VirtualDiskFilterForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/filtersets.py |
(no function) |
|
100% |
89 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/model_forms.py |
ClusterAddDevicesForm.__init__ |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
ClusterAddDevicesForm.clean |
|
0% |
7 |
7 |
0 |
|
0% |
8 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
VirtualMachineTypeForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
VirtualMachineForm.__init__ |
|
0% |
22 |
22 |
0 |
|
0% |
10 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
VirtualMachineForm._populate_virtual_machine_type_defaults |
|
0% |
12 |
12 |
0 |
|
0% |
10 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
VMComponentForm.__init__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
VirtualDiskForm.__init__ |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/forms/model_forms.py |
(no function) |
|
100% |
103 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/forms/object_create.py |
(no function) |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/graphql/enums.py |
(no function) |
|
100% |
6 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/graphql/filter_mixins.py |
(no function) |
|
93% |
15 |
1 |
0 |
|
50% |
2 |
1 |
|
88% |
| virtualization/graphql/filters.py |
(no function) |
|
94% |
85 |
5 |
0 |
|
50% |
2 |
1 |
|
93% |
| virtualization/graphql/schema.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/graphql/types.py |
ClusterType.scope |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/graphql/types.py |
(no function) |
|
89% |
37 |
4 |
0 |
|
50% |
2 |
1 |
|
87% |
| virtualization/models/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/models/clusters.py |
Cluster.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/clusters.py |
Cluster.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/clusters.py |
Cluster.clean |
|
0% |
16 |
16 |
0 |
|
0% |
16 |
0 |
|
0% |
| virtualization/models/clusters.py |
(no function) |
|
100% |
41 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/models/virtualmachines.py |
VirtualMachineType.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VirtualMachine.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VirtualMachine.clean |
|
10% |
29 |
26 |
0 |
|
4% |
26 |
1 |
|
7% |
| virtualization/models/virtualmachines.py |
VirtualMachine.save |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VirtualMachine.apply_type_defaults |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VirtualMachine.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VirtualMachine.get_start_on_boot_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VirtualMachine.primary_ip |
|
0% |
7 |
7 |
0 |
|
0% |
6 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
ComponentModel.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
ComponentModel.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
ComponentModel.parent_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VMInterface.clean |
|
0% |
11 |
11 |
0 |
|
0% |
10 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
VMInterface.l2vpn_termination |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/models/virtualmachines.py |
(no function) |
|
100% |
108 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/object_actions.py |
BulkAddComponents.get_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/object_actions.py |
(no function) |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/search.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/signals.py |
update_virtualmachine_disk |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/signals.py |
update_virtualmachine_site |
|
0% |
2 |
2 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/signals.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/tables/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/tables/clusters.py |
(no function) |
|
100% |
36 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/tables/template_code.py |
(no function) |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/tables/virtualmachines.py |
VirtualMachineTypeTable.render_default_memory |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/tables/virtualmachines.py |
VirtualMachineTable.render_memory |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/tables/virtualmachines.py |
VirtualMachineTable.render_disk |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/tables/virtualmachines.py |
VirtualDiskTable.render_size |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/tables/virtualmachines.py |
(no function) |
|
100% |
77 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/ui/panels.py |
(no function) |
|
100% |
56 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| virtualization/views.py |
ClusterTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
ClusterGroupView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
ClusterView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
ClusterVirtualMachinesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
ClusterDevicesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
ClusterAddDevicesView.get |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
ClusterAddDevicesView.post |
|
0% |
12 |
12 |
0 |
|
0% |
4 |
0 |
|
0% |
| virtualization/views.py |
VirtualMachineTypeView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
VirtualMachineInterfacesView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
VirtualMachineVirtualDisksView.get_children |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
VMInterfaceView.get_extra_context |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| virtualization/views.py |
VirtualMachineBulkAddInterfaceView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
VirtualMachineBulkAddVirtualDiskView.get_required_permission |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| virtualization/views.py |
(no function) |
|
100% |
382 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/serializers.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/serializers_/crypto.py |
(no function) |
|
100% |
44 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/serializers_/l2vpn.py |
(no function) |
|
100% |
28 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/serializers_/tunnels.py |
(no function) |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/urls.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/api/views.py |
VPNRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/api/views.py |
(no function) |
|
100% |
48 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/apps.py |
VPNConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/apps.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/choices.py |
(no function) |
|
100% |
111 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/constants.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/filtersets.py |
TunnelFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
IKEProposalFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
IKEPolicyFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
IPSecProposalFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
IPSecPolicyFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
IPSecProfileFilterSet.search |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
L2VPNFilterSet.search |
|
0% |
8 |
8 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
L2VPNTerminationFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/filtersets.py |
L2VPNTerminationFilterSet.filter_assigned_object |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/filtersets.py |
L2VPNTerminationFilterSet.filter_site |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/filtersets.py |
L2VPNTerminationFilterSet.filter_region |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/filtersets.py |
(no function) |
|
100% |
137 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/forms/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/forms/bulk_edit.py |
(no function) |
|
100% |
71 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/forms/bulk_import.py |
TunnelTerminationImportForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| vpn/forms/bulk_import.py |
TunnelTerminationImportForm.save |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/forms/bulk_import.py |
L2VPNTerminationImportForm.__init__ |
|
0% |
6 |
6 |
0 |
|
0% |
6 |
0 |
|
0% |
| vpn/forms/bulk_import.py |
L2VPNTerminationImportForm.clean |
|
0% |
9 |
9 |
0 |
|
0% |
8 |
0 |
|
0% |
| vpn/forms/bulk_import.py |
(no function) |
|
100% |
88 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/forms/filtersets.py |
(no function) |
|
100% |
87 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/forms/model_forms.py |
TunnelCreateForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
4 |
0 |
|
0% |
| vpn/forms/model_forms.py |
TunnelCreateForm.clean |
|
0% |
8 |
8 |
0 |
|
0% |
8 |
0 |
|
0% |
| vpn/forms/model_forms.py |
TunnelCreateForm.save |
|
0% |
6 |
6 |
0 |
|
0% |
4 |
0 |
|
0% |
| vpn/forms/model_forms.py |
TunnelTerminationForm.__init__ |
|
0% |
13 |
13 |
0 |
|
0% |
6 |
0 |
|
0% |
| vpn/forms/model_forms.py |
TunnelTerminationForm.clean |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/forms/model_forms.py |
L2VPNTerminationForm.__init__ |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| vpn/forms/model_forms.py |
L2VPNTerminationForm.clean |
|
0% |
9 |
9 |
0 |
|
0% |
4 |
0 |
|
0% |
| vpn/forms/model_forms.py |
(no function) |
|
100% |
114 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/graphql/enums.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/graphql/filters.py |
(no function) |
|
96% |
91 |
4 |
0 |
|
50% |
2 |
1 |
|
95% |
| vpn/graphql/schema.py |
(no function) |
|
100% |
25 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/graphql/types.py |
L2VPNTerminationType.assigned_object |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/graphql/types.py |
(no function) |
|
88% |
40 |
5 |
0 |
|
50% |
2 |
1 |
|
86% |
| vpn/models/__init__.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/models/crypto.py |
IKEProposal.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/crypto.py |
IKEPolicy.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/crypto.py |
IKEPolicy.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| vpn/models/crypto.py |
IPSecProposal.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/crypto.py |
IPSecProposal.clean |
|
100% |
3 |
0 |
0 |
|
50% |
2 |
1 |
|
80% |
| vpn/models/crypto.py |
IPSecPolicy.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/models/crypto.py |
IPSecProfile.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/crypto.py |
(no function) |
|
100% |
69 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/models/l2vpn.py |
L2VPN.__str__ |
|
100% |
3 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| vpn/models/l2vpn.py |
L2VPN.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/l2vpn.py |
L2VPN.can_add_termination |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/models/l2vpn.py |
L2VPNTermination.__str__ |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/models/l2vpn.py |
L2VPNTermination.clean |
|
0% |
11 |
11 |
0 |
|
0% |
8 |
0 |
|
0% |
| vpn/models/l2vpn.py |
L2VPNTermination.assigned_object_parent |
|
0% |
8 |
8 |
0 |
|
0% |
6 |
0 |
|
0% |
| vpn/models/l2vpn.py |
L2VPNTermination.assigned_object_site |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/l2vpn.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/models/tunnels.py |
Tunnel.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/tunnels.py |
Tunnel.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/tunnels.py |
TunnelTermination.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/tunnels.py |
TunnelTermination.get_absolute_url |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/tunnels.py |
TunnelTermination.get_role_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/tunnels.py |
TunnelTermination.clean |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/models/tunnels.py |
TunnelTermination.to_objectchange |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/models/tunnels.py |
(no function) |
|
100% |
48 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/search.py |
(no function) |
|
100% |
42 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/tables/__init__.py |
(no function) |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/tables/crypto.py |
(no function) |
|
100% |
58 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/tables/l2vpn.py |
(no function) |
|
100% |
30 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/tables/tunnels.py |
(no function) |
|
100% |
38 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/ui/panels.py |
(no function) |
|
100% |
71 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| vpn/views.py |
TunnelGroupView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/views.py |
TunnelEditView.dispatch |
|
0% |
3 |
3 |
0 |
|
0% |
2 |
0 |
|
0% |
| vpn/views.py |
IKEPolicyView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/views.py |
IPSecPolicyView.get_extra_context |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/views.py |
L2VPNView.get_extra_context |
|
0% |
5 |
5 |
0 |
|
100% |
0 |
0 |
|
0% |
| vpn/views.py |
(no function) |
|
100% |
388 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/serializers.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/serializers_/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/serializers_/nested.py |
(no function) |
|
100% |
16 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/serializers_/wirelesslans.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/serializers_/wirelesslinks.py |
(no function) |
|
100% |
21 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/urls.py |
(no function) |
|
100% |
9 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/api/views.py |
WirelessRootView.get_view_name |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/api/views.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/apps.py |
WirelessConfig.ready |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/apps.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/choices.py |
(no function) |
|
100% |
223 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/constants.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/filtersets.py |
WirelessLANFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| wireless/filtersets.py |
WirelessLinkFilterSet.search |
|
0% |
4 |
4 |
0 |
|
0% |
2 |
0 |
|
0% |
| wireless/filtersets.py |
(no function) |
|
100% |
46 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/forms/__init__.py |
(no function) |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/forms/bulk_edit.py |
(no function) |
|
100% |
44 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/forms/bulk_import.py |
WirelessLinkImportForm.__init__ |
|
0% |
14 |
14 |
0 |
|
0% |
6 |
0 |
|
0% |
| wireless/forms/bulk_import.py |
(no function) |
|
100% |
44 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/forms/filtersets.py |
(no function) |
|
100% |
43 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/forms/model_forms.py |
(no function) |
|
100% |
51 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/graphql/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/graphql/enums.py |
(no function) |
|
100% |
8 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/graphql/filter_mixins.py |
(no function) |
|
92% |
13 |
1 |
0 |
|
50% |
2 |
1 |
|
87% |
| wireless/graphql/filters.py |
(no function) |
|
91% |
35 |
3 |
0 |
|
50% |
2 |
1 |
|
89% |
| wireless/graphql/schema.py |
(no function) |
|
100% |
11 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/graphql/types.py |
WirelessLANType.scope |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/graphql/types.py |
(no function) |
|
86% |
21 |
3 |
0 |
|
50% |
2 |
1 |
|
83% |
| wireless/models.py |
WirelessLAN.__str__ |
|
100% |
1 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/models.py |
WirelessLAN.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/models.py |
WirelessLink.__str__ |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/models.py |
WirelessLink.get_status_color |
|
0% |
1 |
1 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/models.py |
WirelessLink.clean |
|
0% |
5 |
5 |
0 |
|
0% |
4 |
0 |
|
0% |
| wireless/models.py |
WirelessLink.save |
|
0% |
3 |
3 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/models.py |
(no function) |
|
100% |
58 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/search.py |
(no function) |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/signals.py |
update_connected_interfaces |
|
0% |
18 |
18 |
0 |
|
0% |
10 |
0 |
|
0% |
| wireless/signals.py |
nullify_connected_interfaces |
|
0% |
9 |
9 |
0 |
|
0% |
6 |
0 |
|
0% |
| wireless/signals.py |
(no function) |
|
100% |
12 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/tables/__init__.py |
(no function) |
|
100% |
2 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/tables/wirelesslan.py |
(no function) |
|
100% |
33 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/tables/wirelesslink.py |
(no function) |
|
100% |
19 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/ui/__init__.py |
(no function) |
|
100% |
0 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/ui/panels.py |
WirelessLinkInterfacePanel.__init__ |
|
100% |
3 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/ui/panels.py |
WirelessLinkInterfacePanel.get_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/ui/panels.py |
(no function) |
|
100% |
28 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/urls.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/utils.py |
get_channel_attr |
|
0% |
7 |
7 |
0 |
|
0% |
4 |
0 |
|
0% |
| wireless/utils.py |
(no function) |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| wireless/views.py |
WirelessLANGroupView.get_extra_context |
|
0% |
2 |
2 |
0 |
|
100% |
0 |
0 |
|
0% |
| wireless/views.py |
(no function) |
|
100% |
128 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |