Coverage report: 97%

Files Functions Classes

coverage.py v7.11.0, created at 2025-10-22 21:34 +0000

File class statements missing excluded coverage
postrfp/__init__.py (no class) 0 0 0 100%
postrfp/auth/__init__.py (no class) 0 0 0 100%
postrfp/auth/endpoints.py (no class) 152 0 2 100%
postrfp/auth/policy.py AbstractIdentityPolicy 0 0 4 100%
postrfp/auth/policy.py JwtBearerPolicy 15 0 1 100%
postrfp/auth/policy.py PassthroughPolicy 0 0 2 100%
postrfp/auth/policy.py DevHeaderPolicy 17 0 1 100%
postrfp/auth/policy.py FallbackPolicy 9 0 1 100%
postrfp/auth/policy.py (no class) 53 2 16 96%
postrfp/authorisation/__init__.py (no class) 0 0 0 100%
postrfp/authorisation/actions.py (no class) 7 0 0 100%
postrfp/authorisation/errors.py ErrorType 0 0 0 100%
postrfp/authorisation/errors.py AuthorisationFailures 13 0 5 100%
postrfp/authorisation/errors.py (no class) 19 0 1 100%
postrfp/authorisation/perms.py (no class) 65 0 0 100%
postrfp/authorisation/roles.py CheckingSet 3 0 0 100%
postrfp/authorisation/roles.py (no class) 7 0 0 100%
postrfp/authorisation/vendor_actions.py (no class) 8 0 2 100%
postrfp/buyer/__init__.py (no class) 0 0 0 100%
postrfp/buyer/api/__init__.py (no class) 0 0 0 100%
postrfp/buyer/api/authorise.py AuthContext 0 0 0 100%
postrfp/buyer/api/authorise.py (no class) 118 0 0 100%
postrfp/buyer/api/buyer_authoriser.py (no class) 19 0 3 100%
postrfp/buyer/api/domain_permissions.py (no class) 40 0 0 100%
postrfp/buyer/api/endpoints/__init__.py (no class) 2 0 0 100%
postrfp/buyer/api/endpoints/answers.py (no class) 60 0 0 100%
postrfp/buyer/api/endpoints/attachments.py (no class) 74 1 0 99%
postrfp/buyer/api/endpoints/audit.py (no class) 60 1 0 98%
postrfp/buyer/api/endpoints/auth.py (no class) 148 7 0 95%
postrfp/buyer/api/endpoints/categories.py (no class) 38 0 0 100%
postrfp/buyer/api/endpoints/issues.py (no class) 97 0 0 100%
postrfp/buyer/api/endpoints/network.py StandardRelTypes 0 0 0 100%
postrfp/buyer/api/endpoints/network.py (no class) 101 0 0 100%
postrfp/buyer/api/endpoints/notes.py (no class) 61 0 0 100%
postrfp/buyer/api/endpoints/projects.py (no class) 277 0 0 100%
postrfp/buyer/api/endpoints/questions.py (no class) 130 0 0 100%
postrfp/buyer/api/endpoints/reports/__init__.py (no class) 3 0 0 100%
postrfp/buyer/api/endpoints/reports/msword.py (no class) 97 0 2 100%
postrfp/buyer/api/endpoints/reports/qtextxlsx.py (no class) 37 0 0 100%
postrfp/buyer/api/endpoints/reports/responses.py (no class) 6 0 0 100%
postrfp/buyer/api/endpoints/reports/yesnoqual.py (no class) 99 1 2 99%
postrfp/buyer/api/endpoints/scoring.py ScoreData 0 0 0 100%
postrfp/buyer/api/endpoints/scoring.py (no class) 220 5 0 98%
postrfp/buyer/api/endpoints/search.py (no class) 42 0 0 100%
postrfp/buyer/api/endpoints/sections.py (no class) 171 5 0 97%
postrfp/buyer/api/endpoints/tags.py (no class) 83 0 0 100%
postrfp/buyer/api/endpoints/webhooks.py (no class) 56 2 0 96%
postrfp/buyer/api/endpoints/weighting.py (no class) 79 2 0 97%
postrfp/buyer/api/fix/__init__.py (no class) 0 0 0 100%
postrfp/buyer/api/fix/orphan_questions.py (no class) 10 0 0 100%
postrfp/buyer/api/fix/qtables.py (no class) 42 0 0 100%
postrfp/buyer/api/io/__init__.py (no class) 0 0 0 100%
postrfp/buyer/api/io/excel_import.py XLCell 2 0 0 100%
postrfp/buyer/api/io/excel_import.py QRow 9 1 0 89%
postrfp/buyer/api/io/excel_import.py ExcelQImporter 37 1 0 97%
postrfp/buyer/api/io/excel_import.py (no class) 37 0 0 100%
postrfp/buyer/api/io/qbuilder.py ChoiceSetData 0 0 0 100%
postrfp/buyer/api/io/qbuilder.py NoParentQuestion 0 0 0 100%
postrfp/buyer/api/io/qbuilder.py QuestionnaireBuilder 105 0 0 100%
postrfp/buyer/api/io/qbuilder.py (no class) 54 0 3 100%
postrfp/buyer/api/io/streaming.py StreamingVisitor 26 0 4 100%
postrfp/buyer/api/io/streaming.py XmlExportVisitor 49 1 0 98%
postrfp/buyer/api/io/streaming.py (no class) 22 0 4 100%
postrfp/buyer/api/io/xml/importer.py XmlQuestionnaireImporter 50 0 0 100%
postrfp/buyer/api/io/xml/importer.py (no class) 25 0 0 100%
postrfp/buyer/fsm_endpoints.py (no class) 178 0 2 100%
postrfp/conf/__init__.py (no class) 2 0 0 100%
postrfp/conf/logHandlers.py PostmarkHandler 13 0 0 100%
postrfp/conf/logHandlers.py (no class) 9 0 0 100%
postrfp/conf/logconf.py (no class) 5 0 0 100%
postrfp/conf/settings.py RunMode 0 0 0 100%
postrfp/conf/settings.py Mailer 0 0 0 100%
postrfp/conf/settings.py AppSettings 29 0 0 100%
postrfp/conf/settings.py (no class) 71 0 0 100%
postrfp/fsm/__init__.py (no class) 3 0 0 100%
postrfp/fsm/schemas.py DbModel 0 0 0 100%
postrfp/fsm/schemas.py IdSchema 0 0 0 100%
postrfp/fsm/schemas.py StatusSchema 0 0 0 100%
postrfp/fsm/schemas.py TransitionSchema 2 0 0 100%
postrfp/fsm/schemas.py WorkflowSchema 30 1 0 97%
postrfp/fsm/schemas.py WorkflowSummary 0 0 0 100%
postrfp/fsm/schemas.py WorkflowList 0 0 0 100%
postrfp/fsm/schemas.py TransitionRequest 0 0 0 100%
postrfp/fsm/schemas.py TransitionResult 0 0 0 100%
postrfp/fsm/schemas.py EntityTypeSchema 0 0 0 100%
postrfp/fsm/schemas.py EntityTypeList 0 0 0 100%
postrfp/fsm/schemas.py (no class) 65 0 0 100%
postrfp/fsm/service.py (no class) 108 6 0 94%
postrfp/jobs/__init__.py (no class) 0 0 0 100%
postrfp/jobs/cli.py (no class) 10 10 9 0%
postrfp/jobs/events/__init__.py (no class) 2 0 0 100%
postrfp/jobs/events/action.py handles 6 1 0 83%
postrfp/jobs/events/action.py EventProcessor 65 6 3 91%
postrfp/jobs/events/action.py VendorStatusAction 4 0 0 100%
postrfp/jobs/events/action.py IssueReleased 17 0 0 100%
postrfp/jobs/events/action.py SectionAccess 10 1 0 90%
postrfp/jobs/events/action.py ProjectNoteHandler 23 0 0 100%
postrfp/jobs/events/action.py ScoreCommentHandler 22 0 1 100%
postrfp/jobs/events/action.py (no class) 104 0 10 100%
postrfp/jobs/events/webhooks.py (no class) 44 1 0 98%
postrfp/jobs/executor.py Executor 0 0 1 100%
postrfp/jobs/executor.py InlineExecutor 0 0 4 100%
postrfp/jobs/executor.py DaguExecutor 16 0 0 100%
postrfp/jobs/executor.py (no class) 46 3 4 93%
postrfp/jobs/offload.py (no class) 34 4 0 88%
postrfp/mail/__init__.py (no class) 0 0 0 100%
postrfp/mail/factory.py (no class) 14 5 0 64%
postrfp/mail/postmark.py (no class) 32 6 8 81%
postrfp/mail/protocol.py MailerProtocol 0 0 1 100%
postrfp/mail/protocol.py (no class) 4 0 2 100%
postrfp/mail/schemas.py OrmModel 0 0 0 100%
postrfp/mail/schemas.py Org 0 0 0 100%
postrfp/mail/schemas.py UserModel 0 0 0 100%
postrfp/mail/schemas.py Proj 0 0 0 100%
postrfp/mail/schemas.py Issue 0 0 0 100%
postrfp/mail/schemas.py ProjNote 0 0 0 100%
postrfp/mail/schemas.py ScoreSchema 0 0 0 100%
postrfp/mail/schemas.py EvtSchema 0 0 0 100%
postrfp/mail/schemas.py TemplateModelSchema 0 0 0 100%
postrfp/mail/schemas.py BaseEmail 0 0 0 100%
postrfp/mail/schemas.py PostmarkTemplateMessage 0 0 0 100%
postrfp/mail/schemas.py PostmarkBatchWithTemplates 0 0 0 100%
postrfp/mail/schemas.py PostmarkSimpleMessage 0 0 0 100%
postrfp/mail/schemas.py (no class) 73 0 2 100%
postrfp/mail/stub.py (no class) 34 1 0 97%
postrfp/model/__init__.py (no class) 18 0 0 100%
postrfp/model/acl.py Participant 8 4 2 50%
postrfp/model/acl.py ProjectPermission 0 0 4 100%
postrfp/model/acl.py SectionPermission 0 0 1 100%
postrfp/model/acl.py (no class) 41 0 8 100%
postrfp/model/audit/__init__.py (no class) 2 0 0 100%
postrfp/model/audit/event.py EventKlass 0 0 0 100%
postrfp/model/audit/event.py PropertyChanges 5 0 0 100%
postrfp/model/audit/event.py Status 0 0 0 100%
postrfp/model/audit/event.py AuditEvent 44 1 2 98%
postrfp/model/audit/event.py EventOrgACL 0 0 1 100%
postrfp/model/audit/event.py (no class) 83 0 9 100%
postrfp/model/audit/evt_types.py (no class) 92 0 0 100%
postrfp/model/audit/visible.py (no class) 11 0 0 100%
postrfp/model/composite.py QuestionMeta 0 0 1 100%
postrfp/model/composite.py (no class) 45 0 1 100%
postrfp/model/exc.py BusinessRuleViolation 1 0 0 100%
postrfp/model/exc.py DeadlineHasPassed 0 0 0 100%
postrfp/model/exc.py IllegalStatusAction 0 0 0 100%
postrfp/model/exc.py CosmeticQuestionEditViolation 0 0 0 100%
postrfp/model/exc.py QuestionnaireStructureException 0 0 0 100%
postrfp/model/exc.py WeightingsNotLoadedException 0 0 0 100%
postrfp/model/exc.py DuplicateDataProvided 1 0 0 100%
postrfp/model/exc.py ValidationFailure 9 0 0 100%
postrfp/model/exc.py DuplicateQuestionDefinition 1 0 0 100%
postrfp/model/exc.py (no class) 14 0 15 100%
postrfp/model/fsm.py Workflow 20 5 1 75%
postrfp/model/fsm.py Status 1 0 1 100%
postrfp/model/fsm.py Transition 1 0 1 100%
postrfp/model/fsm.py StatusAction 3 0 0 100%
postrfp/model/fsm.py (no class) 70 0 5 100%
postrfp/model/fsm_context/__init__.py (no class) 0 0 0 100%
postrfp/model/fsm_context/project_context.py ApprovalUser 0 0 0 100%
postrfp/model/fsm_context/project_context.py ProjCtxApproval 0 0 0 100%
postrfp/model/fsm_context/project_context.py ProjectContext 0 0 0 100%
postrfp/model/fsm_context/project_context.py (no class) 30 0 2 100%
postrfp/model/graph.py RelationshipType 0 0 1 100%
postrfp/model/graph.py Edge 1 1 1 0%
postrfp/model/graph.py (no class) 25 0 2 100%
postrfp/model/helpers.py (no class) 24 0 3 100%
postrfp/model/humans.py OrganisationType 0 0 0 100%
postrfp/model/humans.py ConsultantClientRelationship 2 0 1 100%
postrfp/model/humans.py Organisation 9 0 1 100%
postrfp/model/humans.py RespondentOrganisation 0 0 0 100%
postrfp/model/humans.py BuyerOrganisation 0 0 0 100%
postrfp/model/humans.py ConsultantOrganisation 0 0 0 100%
postrfp/model/humans.py RefreshToken 0 0 1 100%
postrfp/model/humans.py User 35 0 1 100%
postrfp/model/humans.py UserRole 0 0 1 100%
postrfp/model/humans.py CustomRole 0 0 1 100%
postrfp/model/humans.py CustomRolePermission 3 0 1 100%
postrfp/model/humans.py OrganisationCategory 0 0 1 100%
postrfp/model/humans.py FailedLoginAttempt 0 0 1 100%
postrfp/model/humans.py (no class) 169 0 17 100%
postrfp/model/issue.py IssueStatusType 6 0 0 100%
postrfp/model/issue.py Issue 19 0 4 100%
postrfp/model/issue.py Issue.Status 0 0 0 100%
postrfp/model/issue.py Score 6 0 1 100%
postrfp/model/issue.py ScoreComment 1 0 0 100%
postrfp/model/issue.py IssueAttachment 2 0 0 100%
postrfp/model/issue.py (no class) 133 1 6 99%
postrfp/model/meta.py Visitor 0 0 13 100%
postrfp/model/meta.py Base 3 0 1 100%
postrfp/model/meta.py AttachmentMixin 7 0 3 100%
postrfp/model/meta.py (no class) 33 0 21 100%
postrfp/model/misc.py Category 0 0 1 100%
postrfp/model/misc.py (no class) 30 0 4 100%
postrfp/model/notes.py NoteKindEnum 0 0 0 100%
postrfp/model/notes.py Distribution 0 0 0 100%
postrfp/model/notes.py ProjectNote 13 0 3 100%
postrfp/model/notes.py (no class) 36 0 3 100%
postrfp/model/notify.py ProjectWatchList 0 0 1 100%
postrfp/model/notify.py IssueWatchList 0 0 1 100%
postrfp/model/notify.py EmailNotification 6 0 4 100%
postrfp/model/notify.py EmailNotification.Status 0 0 0 100%
postrfp/model/notify.py DeliveryStatus 0 0 0 100%
postrfp/model/notify.py WebhookSubscription 30 22 1 27%
postrfp/model/notify.py (no class) 82 0 9 100%
postrfp/model/project.py LazyParticipants 14 1 0 93%
postrfp/model/project.py LazyRestrictedUsers 12 1 0 92%
postrfp/model/project.py Project 80 6 2 92%
postrfp/model/project.py ProjectAttachment 0 0 0 100%
postrfp/model/project.py ProjectField 0 0 4 100%
postrfp/model/project.py ProjectApproval 0 0 1 100%
postrfp/model/project.py PrintVisitor 0 0 32 100%
postrfp/model/project.py (no class) 152 0 23 100%
postrfp/model/questionnaire/__init__.py (no class) 0 0 0 100%
postrfp/model/questionnaire/answering.py AnswerReport 0 0 1 100%
postrfp/model/questionnaire/answering.py ResponseStatus 0 0 0 100%
postrfp/model/questionnaire/answering.py ResponseStatusCol 2 0 0 100%
postrfp/model/questionnaire/answering.py QuestionResponseState 0 0 0 100%
postrfp/model/questionnaire/answering.py Answer 1 1 1 0%
postrfp/model/questionnaire/answering.py AAttachment 0 0 1 100%
postrfp/model/questionnaire/answering.py (no class) 58 0 7 100%
postrfp/model/questionnaire/b36.py Node 1 1 0 0%
postrfp/model/questionnaire/b36.py (no class) 77 0 2 100%
postrfp/model/questionnaire/cte_weights.py (no class) 67 0 2 100%
postrfp/model/questionnaire/nodes.py _ModelDumpable 0 0 1 100%
postrfp/model/questionnaire/nodes.py ImportType 0 0 0 100%
postrfp/model/questionnaire/nodes.py NodeMixin 2 0 0 100%
postrfp/model/questionnaire/nodes.py Section 36 7 1 81%
postrfp/model/questionnaire/nodes.py QuestionDefinition 48 3 1 94%
postrfp/model/questionnaire/nodes.py SaveAnswersResult 3 0 0 100%
postrfp/model/questionnaire/nodes.py QuestionInstance 51 2 1 96%
postrfp/model/questionnaire/nodes.py (no class) 125 0 12 100%
postrfp/model/questionnaire/qelements.py ElementCode 0 0 0 100%
postrfp/model/questionnaire/qelements.py QElement 22 4 1 82%
postrfp/model/questionnaire/qelements.py Label 0 0 0 100%
postrfp/model/questionnaire/qelements.py Checkbox 3 0 0 100%
postrfp/model/questionnaire/qelements.py TextInput 5 0 0 100%
postrfp/model/questionnaire/qelements.py MultipleChoice 12 0 0 100%
postrfp/model/questionnaire/qelements.py SelectChoices 0 0 0 100%
postrfp/model/questionnaire/qelements.py RadioChoices 0 0 0 100%
postrfp/model/questionnaire/qelements.py QuestionAttachment 0 0 0 100%
postrfp/model/questionnaire/qelements.py SupportingAttachment 3 0 0 100%
postrfp/model/questionnaire/qelements.py ExternalMedia 0 0 0 100%
postrfp/model/questionnaire/qelements.py QAttachment 0 0 0 100%
postrfp/model/questionnaire/qelements.py (no class) 96 0 5 100%
postrfp/model/questionnaire/renumber.py (no class) 34 2 0 94%
postrfp/model/questionnaire/score_views.py QuestionScoreComponent 16 3 0 81%
postrfp/model/questionnaire/score_views.py SectionScoreComponent 15 8 0 47%
postrfp/model/questionnaire/score_views.py (no class) 36 0 0 100%
postrfp/model/questionnaire/weightings.py WeightingSet 0 0 1 100%
postrfp/model/questionnaire/weightings.py Weighting 0 0 1 100%
postrfp/model/questionnaire/weightings.py TotalWeighting 0 0 1 100%
postrfp/model/questionnaire/weightings.py (no class) 36 0 6 100%
postrfp/model/ref.py ContentRelationshipType 0 0 0 100%
postrfp/model/ref.py DateStamped 0 0 0 100%
postrfp/model/ref.py PolicyMixin 0 0 0 100%
postrfp/model/ref.py ContentSpec 3 0 1 100%
postrfp/model/ref.py Content 7 1 1 86%
postrfp/model/ref.py ContentRelationship 0 0 0 100%
postrfp/model/ref.py SubjectType 0 0 0 100%
postrfp/model/ref.py Subject 0 0 1 100%
postrfp/model/ref.py ContentRevision 0 0 0 100%
postrfp/model/ref.py ContentSpecMap 0 0 1 100%
postrfp/model/ref.py ContentQElementPair 0 0 1 100%
postrfp/model/ref.py (no class) 139 2 7 99%
postrfp/model/tags.py Tag 0 0 0 100%
postrfp/model/tags.py (no class) 17 0 0 100%
postrfp/ref/__init__.py (no class) 0 0 0 100%
postrfp/ref/exceptions.py PermissionDeniedError 17 17 0 0%
postrfp/ref/exceptions.py ContentPermissionDeniedError 3 3 0 0%
postrfp/ref/exceptions.py SubjectPermissionDeniedError 3 3 0 0%
postrfp/ref/exceptions.py (no class) 13 13 0 0%
postrfp/ref/handlers/__init__.py (no class) 2 0 0 100%
postrfp/ref/handlers/administrators.py (no class) 46 35 0 24%
postrfp/ref/handlers/designers.py (no class) 43 0 0 100%
postrfp/ref/handlers/editors.py (no class) 142 4 0 97%
postrfp/ref/handlers/readers.py (no class) 18 2 0 89%
postrfp/ref/handlers/subjects.py (no class) 73 0 0 100%
postrfp/ref/permissions.py AuthorizationResult 10 6 0 40%
postrfp/ref/permissions.py CELAuthorizationChecker 15 2 0 87%
postrfp/ref/permissions.py AuthorizationDeniedError 5 0 0 100%
postrfp/ref/permissions.py (no class) 29 4 0 86%
postrfp/ref/service/__init__.py (no class) 0 0 0 100%
postrfp/ref/service/auth_service.py (no class) 28 5 0 82%
postrfp/ref/service/content_service.py (no class) 64 5 1 92%
postrfp/ref/service/helpers.py HasIdColumn 0 0 0 100%
postrfp/ref/service/helpers.py (no class) 16 0 0 100%
postrfp/ref/service/reference_validator.py ContentReferenceValidator 72 9 0 88%
postrfp/ref/service/reference_validator.py (no class) 13 0 0 100%
postrfp/ref/service/search_service.py (no class) 19 2 0 89%
postrfp/shared/__init__.py (no class) 0 0 0 100%
postrfp/shared/attachments.py OrphanedAttachmentError 0 0 0 100%
postrfp/shared/attachments.py (no class) 106 0 3 100%
postrfp/shared/constants.py MimeTypes 0 0 0 100%
postrfp/shared/constants.py (no class) 13 0 2 100%
postrfp/shared/decorators.py http_auth 8 0 0 100%
postrfp/shared/decorators.py (no class) 29 0 0 100%
postrfp/shared/exceptions.py RoutingError 0 0 0 100%
postrfp/shared/exceptions.py AuthorizationFailure 14 0 4 100%
postrfp/shared/exceptions.py LacksPermission 2 0 0 100%
postrfp/shared/exceptions.py NotLoggedIn 0 0 0 100%
postrfp/shared/exceptions.py TimezoneError 0 0 0 100%
postrfp/shared/exceptions.py (no class) 9 0 9 100%
postrfp/shared/expression.py (no class) 14 2 0 86%
postrfp/shared/fetch/__init__.py (no class) 11 0 0 100%
postrfp/shared/fetch/answq.py (no class) 42 0 0 100%
postrfp/shared/fetch/audq.py (no class) 23 0 0 100%
postrfp/shared/fetch/autoscoreq.py AutoscoreEntry 0 0 0 100%
postrfp/shared/fetch/autoscoreq.py (no class) 103 25 0 76%
postrfp/shared/fetch/flattening.py ElementGrid 60 0 0 100%
postrfp/shared/fetch/flattening.py (no class) 109 8 0 93%
postrfp/shared/fetch/nodesq.py (no class) 36 5 0 86%
postrfp/shared/fetch/projq.py (no class) 41 0 0 100%
postrfp/shared/fetch/quesq.py (no class) 121 1 0 99%
postrfp/shared/fetch/scoreq.py ScoreTuple 0 0 0 100%
postrfp/shared/fetch/scoreq.py (no class) 123 6 3 95%
postrfp/shared/fetch/searchq.py (no class) 22 0 1 100%
postrfp/shared/fetch/secq.py (no class) 50 0 0 100%
postrfp/shared/fetch/userq.py (no class) 40 1 0 98%
postrfp/shared/fetch/view_scoring.py (no class) 20 0 0 100%
postrfp/shared/fetch/weightq.py QuestionWeight 0 0 0 100%
postrfp/shared/fetch/weightq.py SectionWeight 0 0 0 100%
postrfp/shared/fetch/weightq.py WeightingsData 0 0 0 100%
postrfp/shared/fetch/weightq.py (no class) 51 0 0 100%
postrfp/shared/fsm_entity.py FSMEntity 38 3 2 92%
postrfp/shared/fsm_entity.py (no class) 49 1 0 98%
postrfp/shared/init/__init__.py (no class) 0 0 0 100%
postrfp/shared/init/dbconfig.py (no class) 49 1 0 98%
postrfp/shared/init/sysconfig.py (no class) 31 2 24 94%
postrfp/shared/issue_transition.py (no class) 116 13 0 89%
postrfp/shared/movenodes.py EntityWithId 0 0 0 100%
postrfp/shared/movenodes.py PositionableEntity 0 0 0 100%
postrfp/shared/movenodes.py AbstractNodeMover 46 1 17 98%
postrfp/shared/movenodes.py SectionsMover 12 0 0 100%
postrfp/shared/movenodes.py QuestionsMover 12 0 0 100%
postrfp/shared/movenodes.py (no class) 33 0 16 100%
postrfp/shared/pager.py Pager 11 1 1 91%
postrfp/shared/pager.py (no class) 13 0 1 100%
postrfp/shared/password.py (no class) 27 0 0 100%
postrfp/shared/response.py XAccelResponse 2 0 0 100%
postrfp/shared/response.py XAccelAttachmentResponse 6 0 0 100%
postrfp/shared/response.py XAccelTempResponse 7 0 0 100%
postrfp/shared/response.py (no class) 19 0 0 100%
postrfp/shared/serial/__init__.py (no class) 5 0 0 100%
postrfp/shared/serial/authmodels.py UserDoc 0 0 0 100%
postrfp/shared/serial/authmodels.py Login 0 0 0 100%
postrfp/shared/serial/authmodels.py ResetDoc 0 0 0 100%
postrfp/shared/serial/authmodels.py Token 0 0 0 100%
postrfp/shared/serial/authmodels.py RefreshRequest 0 0 0 100%
postrfp/shared/serial/authmodels.py (no class) 16 0 0 100%
postrfp/shared/serial/common.py Id 0 0 0 100%
postrfp/shared/serial/common.py StringId 0 0 0 100%
postrfp/shared/serial/common.py TimestampedId 0 0 0 100%
postrfp/shared/serial/common.py ScoringModel 1 0 0 100%
postrfp/shared/serial/common.py Pagination 0 0 0 100%
postrfp/shared/serial/common.py (no class) 25 0 0 100%
postrfp/shared/serial/models.py OrgType 0 0 0 100%
postrfp/shared/serial/models.py Error 0 0 0 100%
postrfp/shared/serial/models.py ErrorList 0 0 0 100%
postrfp/shared/serial/models.py IdList 0 0 0 100%
postrfp/shared/serial/models.py Count 0 0 0 100%
postrfp/shared/serial/models.py ShortName 0 0 0 100%
postrfp/shared/serial/models.py AnswerAttachmentIds 0 0 0 100%
postrfp/shared/serial/models.py NewProjectIds 0 0 0 100%
postrfp/shared/serial/models.py NewClient 0 0 0 100%
postrfp/shared/serial/models.py BaseOrganisation 1 0 0 100%
postrfp/shared/serial/models.py Organisation 0 0 0 100%
postrfp/shared/serial/models.py Participant 0 0 0 100%
postrfp/shared/serial/models.py ParticipantList 0 0 0 100%
postrfp/shared/serial/models.py UpdateParticipant 0 0 0 100%
postrfp/shared/serial/models.py UpdateParticipantList 0 0 0 100%
postrfp/shared/serial/models.py UserType 0 0 0 100%
postrfp/shared/serial/models.py UserId 0 0 0 100%
postrfp/shared/serial/models.py EditableUser 0 0 0 100%
postrfp/shared/serial/models.py BaseUser 0 0 0 100%
postrfp/shared/serial/models.py UserList 0 0 0 100%
postrfp/shared/serial/models.py User 3 1 0 67%
postrfp/shared/serial/models.py FullUser 0 0 0 100%
postrfp/shared/serial/models.py ProjectUser 0 0 0 100%
postrfp/shared/serial/models.py OrgWithUsers 0 0 0 100%
postrfp/shared/serial/models.py BaseIssue 0 0 0 100%
postrfp/shared/serial/models.py NewIssue 8 0 0 100%
postrfp/shared/serial/models.py ListIssue 0 0 0 100%
postrfp/shared/serial/models.py IssuesList 0 0 0 100%
postrfp/shared/serial/models.py UpdateableIssue 0 0 0 100%
postrfp/shared/serial/models.py IssueStatuses 0 0 0 100%
postrfp/shared/serial/models.py Issue 0 0 0 100%
postrfp/shared/serial/models.py Issues 0 0 0 100%
postrfp/shared/serial/models.py VendorIssue 0 0 0 100%
postrfp/shared/serial/models.py IssueStatus 0 0 0 100%
postrfp/shared/serial/models.py IssueUseWorkflow 0 0 0 100%
postrfp/shared/serial/models.py RespondentNote 0 0 0 100%
postrfp/shared/serial/models.py ProjectNote 0 0 0 100%
postrfp/shared/serial/models.py ReadNote 0 0 0 100%
postrfp/shared/serial/models.py ReadNotes 0 0 0 100%
postrfp/shared/serial/models.py NewWeightSet 8 0 0 100%
postrfp/shared/serial/models.py WeightSet 0 0 0 100%
postrfp/shared/serial/models.py QWeight 0 0 0 100%
postrfp/shared/serial/models.py SecWeight 0 0 0 100%
postrfp/shared/serial/models.py Weightings 0 0 0 100%
postrfp/shared/serial/models.py WeightingsDoc 0 0 0 100%
postrfp/shared/serial/models.py ProjectWeightings 0 0 0 100%
postrfp/shared/serial/models.py ParentedWeighting 0 0 0 100%
postrfp/shared/serial/models.py Score 0 0 0 100%
postrfp/shared/serial/models.py SectionScore 0 0 0 100%
postrfp/shared/serial/models.py SectionScoreDoc 0 0 0 100%
postrfp/shared/serial/models.py SectionScoreDocs 0 0 0 100%
postrfp/shared/serial/models.py ScoreSet 0 0 0 100%
postrfp/shared/serial/models.py ScoringData 0 0 0 100%
postrfp/shared/serial/models.py ProjectPermission 0 0 0 100%
postrfp/shared/serial/models.py TargetUser 0 0 0 100%
postrfp/shared/serial/models.py TargetUserList 0 0 0 100%
postrfp/shared/serial/models.py TreeNode 0 0 0 100%
postrfp/shared/serial/models.py SummaryEvent 0 0 0 100%
postrfp/shared/serial/models.py FullEvent 0 0 0 100%
postrfp/shared/serial/models.py EvIssue 0 0 0 100%
postrfp/shared/serial/models.py AuditEvent 0 0 0 100%
postrfp/shared/serial/models.py AnsweredQElement 0 0 0 100%
postrfp/shared/serial/models.py ElementAnswer 0 0 0 100%
postrfp/shared/serial/models.py ElementAnswerList 0 0 0 100%
postrfp/shared/serial/models.py Answer 0 0 0 100%
postrfp/shared/serial/models.py AnswerLookup 0 0 0 100%
postrfp/shared/serial/models.py AnswerResponseState 0 0 0 100%
postrfp/shared/serial/models.py AllocatedTo 0 0 0 100%
postrfp/shared/serial/models.py AllocatedToList 1 0 0 100%
postrfp/shared/serial/models.py AnswerStats 0 0 0 100%
postrfp/shared/serial/models.py ImportableAnswers 0 0 0 100%
postrfp/shared/serial/models.py ImportableAnswersList 0 0 0 100%
postrfp/shared/serial/models.py AnsweredQuestion 0 0 0 100%
postrfp/shared/serial/models.py SingleRespondentQuestion 0 0 0 100%
postrfp/shared/serial/models.py Node 0 0 0 100%
postrfp/shared/serial/models.py NodeTypeEnum 0 0 0 100%
postrfp/shared/serial/models.py ProjectNode 0 0 0 100%
postrfp/shared/serial/models.py QI 0 0 0 100%
postrfp/shared/serial/models.py QuestionInstance 0 0 0 100%
postrfp/shared/serial/models.py ScoreGaps 0 0 0 100%
postrfp/shared/serial/models.py EditableSection 0 0 0 100%
postrfp/shared/serial/models.py Section 0 0 0 100%
postrfp/shared/serial/models.py FullSection 0 0 0 100%
postrfp/shared/serial/models.py SummarySection 0 0 0 100%
postrfp/shared/serial/models.py ParentId 0 0 0 100%
postrfp/shared/serial/models.py MoveSection 0 0 0 100%
postrfp/shared/serial/models.py SectionChildNodes 6 2 0 67%
postrfp/shared/serial/models.py WorkflowSection 0 0 0 100%
postrfp/shared/serial/models.py Nodes 0 0 0 100%
postrfp/shared/serial/models.py NodesList 0 0 0 100%
postrfp/shared/serial/models.py QElementStats 0 0 0 100%
postrfp/shared/serial/models.py QuestionnaireStats 0 0 0 100%
postrfp/shared/serial/models.py ProjectField 0 0 0 100%
postrfp/shared/serial/models.py NewCategory 0 0 0 100%
postrfp/shared/serial/models.py Category 0 0 0 100%
postrfp/shared/serial/models.py UpdateableProject 0 0 0 100%
postrfp/shared/serial/models.py NewProject 0 0 0 100%
postrfp/shared/serial/models.py FullProject 2 0 0 100%
postrfp/shared/serial/models.py ListProject 0 0 0 100%
postrfp/shared/serial/models.py ProjectList 0 0 0 100%
postrfp/shared/serial/models.py ProjectApproval 0 0 0 100%
postrfp/shared/serial/models.py Supplier 0 0 0 100%
postrfp/shared/serial/models.py AnswerAttachment 0 0 0 100%
postrfp/shared/serial/models.py Attachment 0 0 0 100%
postrfp/shared/serial/models.py IssueAttachment 0 0 0 100%
postrfp/shared/serial/models.py Watcher 5 0 0 100%
postrfp/shared/serial/models.py IssueWatchList 0 0 0 100%
postrfp/shared/serial/models.py AnswerImportResult 0 0 0 100%
postrfp/shared/serial/models.py ImportAnswers 0 0 0 100%
postrfp/shared/serial/models.py SectionImportDoc 0 0 0 100%
postrfp/shared/serial/models.py SectionImportResult 0 0 0 100%
postrfp/shared/serial/models.py TextReplace 0 0 0 100%
postrfp/shared/serial/models.py HitTypes 0 0 0 100%
postrfp/shared/serial/models.py SearchResult 0 0 0 100%
postrfp/shared/serial/models.py RelationshipType 0 0 0 100%
postrfp/shared/serial/models.py Relationship 0 0 0 100%
postrfp/shared/serial/models.py NetworkRelationship 0 0 0 100%
postrfp/shared/serial/models.py NewTag 3 0 0 100%
postrfp/shared/serial/models.py Tag 0 0 0 100%
postrfp/shared/serial/models.py TagAssigns 0 0 0 100%
postrfp/shared/serial/models.py TagGroup 0 0 0 100%
postrfp/shared/serial/models.py MatchedElement 0 0 0 100%
postrfp/shared/serial/models.py QSearchResult 0 0 0 100%
postrfp/shared/serial/models.py AnswerSearch 0 0 0 100%
postrfp/shared/serial/models.py AnswerSearchList 0 0 0 100%
postrfp/shared/serial/models.py ReplacedItem 0 0 0 100%
postrfp/shared/serial/models.py PublishProject 0 0 0 100%
postrfp/shared/serial/models.py PublishResult 0 0 0 100%
postrfp/shared/serial/models.py HttpHeader 0 0 0 100%
postrfp/shared/serial/models.py NewWebhook 4 0 0 100%
postrfp/shared/serial/models.py Webhook 0 0 0 100%
postrfp/shared/serial/models.py (no class) 588 0 0 100%
postrfp/shared/serial/qmodels.py ElTypes 0 0 0 100%
postrfp/shared/serial/qmodels.py IntIdModel 0 0 0 100%
postrfp/shared/serial/qmodels.py Choice 0 0 0 100%
postrfp/shared/serial/qmodels.py QElement 0 0 0 100%
postrfp/shared/serial/qmodels.py Checkbox 0 0 0 100%
postrfp/shared/serial/qmodels.py Label 0 0 0 100%
postrfp/shared/serial/qmodels.py TextInput 0 0 0 100%
postrfp/shared/serial/qmodels.py MultiChoice 0 0 0 100%
postrfp/shared/serial/qmodels.py SelectDropdown 0 0 0 100%
postrfp/shared/serial/qmodels.py RadioChoices 0 0 0 100%
postrfp/shared/serial/qmodels.py QuestionAttachment 0 0 0 100%
postrfp/shared/serial/qmodels.py UploadField 0 0 0 100%
postrfp/shared/serial/qmodels.py ElRow 0 0 0 100%
postrfp/shared/serial/qmodels.py ElGrid 0 0 0 100%
postrfp/shared/serial/qmodels.py QuestionDef 28 0 0 100%
postrfp/shared/serial/qmodels.py Question 0 0 0 100%
postrfp/shared/serial/qmodels.py RespondentAnswer 0 0 0 100%
postrfp/shared/serial/qmodels.py RespondentAnswers 0 0 0 100%
postrfp/shared/serial/qmodels.py ExcelImportResult 0 0 0 100%
postrfp/shared/serial/qmodels.py (no class) 76 0 0 100%
postrfp/shared/serial/refmodels.py ContentSchema 0 0 0 100%
postrfp/shared/serial/refmodels.py TagSummary 0 0 0 100%
postrfp/shared/serial/refmodels.py SubjectSummary 0 0 0 100%
postrfp/shared/serial/refmodels.py ContentDocument 0 0 0 100%
postrfp/shared/serial/refmodels.py ContentRelationships 0 0 0 100%
postrfp/shared/serial/refmodels.py ContentRelationshipDoc 0 0 0 100%
postrfp/shared/serial/refmodels.py PolicyRequest 0 0 0 100%
postrfp/shared/serial/refmodels.py PolicyResponse 0 0 0 100%
postrfp/shared/serial/refmodels.py PermissionUpdated 0 0 0 100%
postrfp/shared/serial/refmodels.py SubjectDocument 0 0 0 100%
postrfp/shared/serial/refmodels.py ContentQElementPairDocument 0 0 0 100%
postrfp/shared/serial/refmodels.py ContentSpecMapDocument 0 0 0 100%
postrfp/shared/serial/refmodels.py ListResponse 0 0 0 100%
postrfp/shared/serial/refmodels.py DeletionResponse 0 0 0 100%
postrfp/shared/serial/refmodels.py SchemaPointersResponse 0 0 0 100%
postrfp/shared/serial/refmodels.py (no class) 102 0 0 100%
postrfp/shared/serial/scoremodels.py AttrModel 0 0 0 100%
postrfp/shared/serial/scoremodels.py QuestionScore 0 0 0 100%
postrfp/shared/serial/scoremodels.py SectionScore 0 0 0 100%
postrfp/shared/serial/scoremodels.py ScoreSummary 0 0 0 100%
postrfp/shared/serial/scoremodels.py NodeScores 0 0 0 100%
postrfp/shared/serial/scoremodels.py IssueScores 0 0 0 100%
postrfp/shared/serial/scoremodels.py CalculatedScores 0 0 0 100%
postrfp/shared/serial/scoremodels.py (no class) 29 0 3 100%
postrfp/shared/tools.py (no class) 55 0 18 100%
postrfp/shared/types.py Authoriser 0 0 1 100%
postrfp/shared/types.py Adaptor 0 0 1 100%
postrfp/shared/types.py SuxHandler 0 0 5 100%
postrfp/shared/types.py SuxType 0 0 1 100%
postrfp/shared/types.py (no class) 19 0 22 100%
postrfp/shared/update.py (no class) 310 11 35 96%
postrfp/shared/utils.py benchmark 0 0 14 100%
postrfp/shared/utils.py (no class) 23 0 45 100%
postrfp/templates/__init__.py (no class) 20 0 0 100%
postrfp/vendor/__init__.py (no class) 0 0 0 100%
postrfp/vendor/api/__init__.py (no class) 1 0 0 100%
postrfp/vendor/api/attachments.py (no class) 75 1 0 99%
postrfp/vendor/api/audit.py (no class) 13 0 2 100%
postrfp/vendor/api/issue.py (no class) 58 1 0 98%
postrfp/vendor/api/questionnaire.py (no class) 132 0 0 100%
postrfp/vendor/api/reports.py (no class) 17 0 0 100%
postrfp/vendor/api/users.py (no class) 116 2 0 98%
postrfp/vendor/api/workflow.py (no class) 34 0 0 100%
postrfp/vendor/validation.py Validator 60 0 0 100%
postrfp/vendor/validation.py (no class) 19 0 0 100%
postrfp/web/__init__.py (no class) 0 0 0 100%
postrfp/web/adaptors/__init__.py (no class) 0 0 0 100%
postrfp/web/adaptors/auth.py (no class) 10 2 0 80%
postrfp/web/adaptors/core.py PagerArg 9 2 0 78%
postrfp/web/adaptors/core.py UserObject 4 0 0 100%
postrfp/web/adaptors/core.py (no class) 151 0 0 100%
postrfp/web/adaptors/ref.py (no class) 22 0 0 100%
postrfp/web/apps/__init__.py (no class) 6 0 0 100%
postrfp/web/apps/authentication.py TokenAuthenticationApp 4 0 1 100%
postrfp/web/apps/authentication.py (no class) 15 0 1 100%
postrfp/web/apps/buyer.py BuyerApp 5 0 0 100%
postrfp/web/apps/buyer.py (no class) 15 0 0 100%
postrfp/web/apps/fsm.py FsmApp 4 0 1 100%
postrfp/web/apps/fsm.py (no class) 15 0 1 100%
postrfp/web/apps/ref.py RefApp 4 0 1 100%
postrfp/web/apps/ref.py (no class) 15 1 1 93%
postrfp/web/apps/vendor.py VendorApp 1 0 1 100%
postrfp/web/apps/vendor.py (no class) 9 0 1 100%
postrfp/web/base.py WSGIApp 55 0 7 100%
postrfp/web/base.py (no class) 68 0 4 100%
postrfp/web/exception.py (no class) 96 2 0 98%
postrfp/web/ext/__init__.py (no class) 0 0 0 100%
postrfp/web/ext/apilinks.py Link 11 0 0 100%
postrfp/web/ext/apilinks.py (no class) 21 0 0 100%
postrfp/web/ext/apispec.py SuxPlugin 5 0 0 100%
postrfp/web/ext/apispec.py (no class) 46 4 2 91%
postrfp/web/ext/openapi_types.py OpenAPITypes 0 0 0 100%
postrfp/web/ext/openapi_types.py (no class) 8 0 0 100%
postrfp/web/ext/specs/__init__.py (no class) 0 0 0 100%
postrfp/web/hooks/__init__.py (no class) 4 0 0 100%
postrfp/web/hooks/mail_delivered.py DeliveredHook 5 0 0 100%
postrfp/web/hooks/mail_delivered.py BounceHook 6 0 0 100%
postrfp/web/hooks/mail_delivered.py (no class) 17 0 0 100%
postrfp/web/hooks/webapp.py WebhookApp 1 0 2 100%
postrfp/web/hooks/webapp.py PostmarkVars 4 0 0 100%
postrfp/web/hooks/webapp.py NotificationHook 25 1 1 96%
postrfp/web/hooks/webapp.py (no class) 23 0 2 100%
postrfp/web/middleware.py DevMiddleware 0 0 114 100%
postrfp/web/middleware.py DispatchingMiddleware 15 0 0 100%
postrfp/web/middleware.py (no class) 16 0 23 100%
postrfp/web/mounts.py (no class) 14 0 0 100%
postrfp/web/request.py HttpRequest 4 0 0 100%
postrfp/web/request.py (no class) 6 0 0 100%
postrfp/web/suxint/__init__.py (no class) 7 0 0 100%
postrfp/web/suxint/extractors.py ArgExtractor 62 0 2 100%
postrfp/web/suxint/extractors.py PathArg 13 0 0 100%
postrfp/web/suxint/extractors.py GetArg 9 0 0 100%
postrfp/web/suxint/extractors.py GetArgSet 20 0 0 100%
postrfp/web/suxint/extractors.py PostArg 13 0 0 100%
postrfp/web/suxint/extractors.py PostFileArg 10 0 0 100%
postrfp/web/suxint/extractors.py SchemaDocArg 18 0 0 100%
postrfp/web/suxint/extractors.py (no class) 62 0 1 100%
postrfp/web/suxint/handler.py Handler 54 0 3 100%
postrfp/web/suxint/handler.py DocString 9 0 0 100%
postrfp/web/suxint/handler.py (no class) 42 0 1 100%
postrfp/web/suxint/openapi.py (no class) 55 0 2 100%
postrfp/web/suxint/sux.py Sux 117 0 0 100%
postrfp/web/suxint/sux.py (no class) 31 0 0 100%
postrfp/web/suxint/validate.py (no class) 49 0 0 100%
Total   11699 360 785 97%

No items found using the specified filter.