Coverage report: 44%

Files Functions Classes

coverage.py v7.8.0, created at 2026-02-06 03:32 -0600

File class statements missing excluded coverage
__init__.py (no class) 1 0 0 100%
anonymise/__init__.py (no class) 3 0 0 100%
anonymise/altermethod.py AlterMethod 159 159 0 0%
anonymise/altermethod.py (no class) 31 4 0 87%
anonymise/anonregex.py DateRegexNames 0 0 0 100%
anonymise/anonregex.py (no class) 147 112 0 24%
anonymise/constants.py AlterMethodType 0 0 0 100%
anonymise/constants.py Decision 0 0 0 100%
anonymise/constants.py IndexType 0 0 0 100%
anonymise/constants.py ScrubMethod 0 0 0 100%
anonymise/constants.py ScrubSrc 0 0 0 100%
anonymise/constants.py SrcFlag 0 0 0 100%
anonymise/constants.py AnonymiseConfigKeys 0 0 0 100%
anonymise/constants.py AnonymiseConfigDefaults 0 0 0 100%
anonymise/constants.py AnonymiseDatabaseSafeConfigKeys 0 0 0 100%
anonymise/constants.py AnonymiseDatabaseSafeConfigDefaults 0 0 0 100%
anonymise/constants.py AnonymiseColumnComments 0 0 0 100%
anonymise/constants.py HashConfigKeys 0 0 0 100%
anonymise/constants.py PatientInfoConstants 0 0 0 100%
anonymise/constants.py (no class) 255 0 0 100%
anonymise/dd.py ScrubSourceFieldInfo 0 0 0 100%
anonymise/dd.py DDTableSummary 0 0 0 100%
anonymise/dd.py DataDictionary 372 372 0 0%
anonymise/dd.py (no class) 180 29 0 84%
anonymise/ddr.py DDRLabels 0 0 0 100%
anonymise/ddr.py DataDictionaryRow 432 432 0 0%
anonymise/ddr.py (no class) 183 9 0 95%
anonymise/scrub.py ScrubberBase 3 3 0 0%
anonymise/scrub.py WordList 70 70 0 0%
anonymise/scrub.py Replacer 2 2 0 0%
anonymise/scrub.py NonspecificReplacer 24 24 0 0%
anonymise/scrub.py NonspecificScrubber 56 56 0 0%
anonymise/scrub.py PersonalizedScrubber 117 117 0 0%
anonymise/scrub.py (no class) 79 7 0 91%
common/__init__.py (no class) 0 0 0 100%
common/bugfix_flashtext.py KeywordProcessorFixed 90 90 0 0%
common/bugfix_flashtext.py (no class) 3 0 0 100%
common/constants.py CratePath 0 0 0 100%
common/constants.py DockerConstants 0 0 0 100%
common/constants.py EnvVar 0 0 0 100%
common/constants.py CrateCommand 0 0 0 100%
common/constants.py HelpUrl 21 21 0 0%
common/constants.py (no class) 138 0 0 100%
common/logfunc.py (no class) 9 4 0 56%
common/regex_helpers.py (no class) 83 49 0 41%
common/spreadsheet.py SpreadsheetFileExtensions 0 0 0 100%
common/spreadsheet.py (no class) 115 83 0 28%
common/sql.py IndexCreationInfo 3 3 0 0%
common/sql.py SchemaId 22 22 0 0%
common/sql.py TableId 17 17 0 0%
common/sql.py ColumnId 18 18 0 0%
common/sql.py JoinInfo 3 3 0 0%
common/sql.py ReflectedColumnInfo 26 26 0 0%
common/sql.py ViewMaker 52 52 0 0%
common/sql.py TransactionSizeLimiter 20 20 0 0%
common/sql.py WhereCondition 48 48 0 0%
common/sql.py (no class) 534 294 0 45%
common/stringfunc.py (no class) 67 46 0 31%
conftest.py (no class) 201 121 0 40%
crateweb/__init__.py (no class) 0 0 0 100%
crateweb/anonymise_api/__init__.py (no class) 0 0 0 100%
crateweb/config/__init__.py (no class) 0 0 0 100%
crateweb/config/apps.py ConsentAppConfig 0 0 0 100%
crateweb/config/apps.py ResearchAppConfig 0 0 0 100%
crateweb/config/apps.py UserProfileAppConfig 0 0 0 100%
crateweb/config/apps.py CoreAppConfig 0 0 0 100%
crateweb/config/apps.py ApiConfig 0 0 0 100%
crateweb/config/apps.py (no class) 12 0 0 100%
crateweb/config/constants.py ResearchDbInfoKeys 0 0 0 100%
crateweb/config/constants.py ClinicalDatabaseType 0 0 0 100%
crateweb/config/constants.py UrlNames 0 0 0 100%
crateweb/config/constants.py AdminSiteNames 0 0 0 100%
crateweb/config/constants.py UrlKeys 0 0 0 100%
crateweb/config/constants.py (no class) 139 0 0 100%
crateweb/config/test_settings.py (no class) 15 0 0 100%
crateweb/consent/__init__.py (no class) 1 0 0 100%
crateweb/consent/celery.py (no class) 10 2 0 80%
crateweb/consent/constants.py EthicsDocInfo 0 0 0 100%
crateweb/consent/constants.py EthicsInfo 1 1 0 0%
crateweb/consent/constants.py CPFTEthics2022 2 2 0 0%
crateweb/consent/constants.py (no class) 26 0 0 100%
crateweb/consent/forms.py SingleNhsNumberForm 0 0 0 100%
crateweb/consent/forms.py AbstractContactRequestForm 7 7 0 0%
crateweb/consent/forms.py SuperuserSubmitContactRequestForm 5 5 0 0%
crateweb/consent/forms.py ResearcherSubmitContactRequestForm 7 7 0 0%
crateweb/consent/forms.py ClinicianSubmitContactRequestForm 13 13 0 0%
crateweb/consent/forms.py ClinicianResponseForm 0 0 0 100%
crateweb/consent/forms.py ClinicianResponseForm.Meta 0 0 0 100%
crateweb/consent/forms.py TeamRepAdminForm 2 2 0 0%
crateweb/consent/forms.py TeamRepAdminForm.Meta 0 0 0 100%
crateweb/consent/forms.py (no class) 47 0 0 100%
crateweb/consent/models.py Study 20 19 0 5%
crateweb/consent/models.py Study.Meta 0 0 0 100%
crateweb/consent/models.py Leaflet 12 12 0 0%
crateweb/consent/models.py Decision 3 3 0 0%
crateweb/consent/models.py Decision.Meta 0 0 0 100%
crateweb/consent/models.py ClinicianInfoHolder 22 22 0 0%
crateweb/consent/models.py PatientLookupBase 59 59 0 0%
crateweb/consent/models.py PatientLookupBase.Meta 0 0 0 100%
crateweb/consent/models.py DummyPatientSourceInfo 1 1 0 0%
crateweb/consent/models.py DummyPatientSourceInfo.Meta 0 0 0 100%
crateweb/consent/models.py PatientLookup 18 18 0 0%
crateweb/consent/models.py TeamInfo 3 3 0 0%
crateweb/consent/models.py TeamRep 0 0 0 100%
crateweb/consent/models.py TeamRep.Meta 0 0 0 100%
crateweb/consent/models.py CharityPaymentRecord 0 0 0 100%
crateweb/consent/models.py ConsentMode 80 80 0 0%
crateweb/consent/models.py ContactRequest 259 259 0 0%
crateweb/consent/models.py ClinicianResponse 41 41 0 0%
crateweb/consent/models.py PatientResponse 22 22 0 0%
crateweb/consent/models.py Letter 34 34 0 0%
crateweb/consent/models.py Email 67 67 0 0%
crateweb/consent/models.py EmailAttachment 11 11 0 0%
crateweb/consent/models.py EmailTransmission 1 1 0 0%
crateweb/consent/models.py DummyObjectCollection 5 5 0 0%
crateweb/consent/models.py (no class) 542 52 0 90%
crateweb/consent/storage.py CustomFileSystemStorage 3 3 0 0%
crateweb/consent/storage.py (no class) 11 0 0 100%
crateweb/consent/tasks.py (no class) 85 59 0 31%
crateweb/consent/teamlookup.py (no class) 20 9 0 55%
crateweb/consent/teamlookup_dummy.py (no class) 3 1 0 67%
crateweb/consent/teamlookup_rio.py (no class) 7 3 0 57%
crateweb/consent/teamlookup_systmone.py (no class) 10 4 0 60%
crateweb/consent/utils.py (no class) 84 59 0 30%
crateweb/core/__init__.py (no class) 0 0 0 100%
crateweb/core/admin.py QueryMgrAdmin 4 4 0 0%
crateweb/core/admin.py PatientExplorerAuditMgrAdmin 4 4 0 0%
crateweb/core/admin.py ArchiveTemplateAuditMgrAdmin 1 1 0 0%
crateweb/core/admin.py ArchiveAttachmentAuditMgrAdmin 1 1 0 0%
crateweb/core/admin.py StudyInline 0 0 0 100%
crateweb/core/admin.py StudyMgrAdmin 0 0 0 100%
crateweb/core/admin.py StudyResAdmin 2 2 0 0%
crateweb/core/admin.py LeafletMgrAdmin 0 0 0 100%
crateweb/core/admin.py LeafletResAdmin 3 3 0 0%
crateweb/core/admin.py EmailSentListFilter 5 5 0 0%
crateweb/core/admin.py EmailDevAdmin 22 22 0 0%
crateweb/core/admin.py EmailMgrAdmin 12 12 0 0%
crateweb/core/admin.py EmailResAdmin 5 5 0 0%
crateweb/core/admin.py DummyPatientSourceInfoDevAdmin 0 0 0 100%
crateweb/core/admin.py PatientLookupDevAdmin 1 1 0 0%
crateweb/core/admin.py ConsentModeInline 0 0 0 100%
crateweb/core/admin.py ConsentModeAdminForm 7 7 0 0%
crateweb/core/admin.py ConsentModeMgrAdmin 8 8 0 0%
crateweb/core/admin.py ConsentModeDevAdmin 1 1 0 0%
crateweb/core/admin.py TeamRepMgrAdmin 0 0 0 100%
crateweb/core/admin.py CharityPaymentRecordMgrAdmin 0 0 0 100%
crateweb/core/admin.py ClinicianRespondedListFilter 5 5 0 0%
crateweb/core/admin.py ContactRequestMgrAdmin 11 11 0 0%
crateweb/core/admin.py ContactRequestResAdmin 5 5 0 0%
crateweb/core/admin.py ContactRequestDevAdmin 7 7 0 0%
crateweb/core/admin.py ClinicianResponseDevAdmin 1 1 0 0%
crateweb/core/admin.py PatientResponseAdminForm 6 6 0 0%
crateweb/core/admin.py PatientResponseMgrAdmin 10 10 0 0%
crateweb/core/admin.py PatientResponseDevAdmin 1 1 0 0%
crateweb/core/admin.py LetterSendingStatusFilter 11 11 0 0%
crateweb/core/admin.py LetterDevAdmin 8 8 0 0%
crateweb/core/admin.py LetterMgrAdmin 1 1 0 0%
crateweb/core/admin.py LetterResAdmin 8 8 0 0%
crateweb/core/admin.py UserProfileInline 5 5 0 0%
crateweb/core/admin.py ExtendedUserMgrAdmin 1 1 0 0%
crateweb/core/admin.py MgrAdminSite 0 0 0 100%
crateweb/core/admin.py DevAdminSite 0 0 0 100%
crateweb/core/admin.py ResearcherAdminSite 0 0 0 100%
crateweb/core/admin.py (no class) 403 0 0 100%
crateweb/core/constants.py SettingsKeys 0 0 0 100%
crateweb/core/constants.py (no class) 26 0 0 100%
crateweb/core/utils.py JavascriptTreeNode 10 10 0 0%
crateweb/core/utils.py JavascriptLeafNode 5 5 0 0%
crateweb/core/utils.py JavascriptBranchNode 6 6 0 0%
crateweb/core/utils.py JavascriptTree 19 19 0 0%
crateweb/core/utils.py (no class) 102 51 0 50%
crateweb/extra/__init__.py (no class) 0 0 0 100%
crateweb/extra/admin.py ReadOnlyChangeList 5 5 0 0%
crateweb/extra/admin.py ReadOnlyModelAdmin 7 7 0 0%
crateweb/extra/admin.py AddOnlyModelAdmin 16 16 0 0%
crateweb/extra/admin.py EditOnlyModelAdmin 2 2 0 0%
crateweb/extra/admin.py EditOnceOnlyModelAdmin 2 2 0 0%
crateweb/extra/admin.py AllStaffReadOnlyModelAdmin 2 2 0 0%
crateweb/extra/admin.py (no class) 41 0 0 100%
crateweb/extra/pdf.py CratePdfPlan 9 9 0 0%
crateweb/extra/pdf.py (no class) 48 30 0 38%
crateweb/extra/salutation.py (no class) 40 34 0 15%
crateweb/research/__init__.py (no class) 0 0 0 100%
crateweb/research/errors.py DatabaseStructureNotUnderstood 0 0 0 100%
crateweb/research/errors.py (no class) 2 0 0 100%
crateweb/research/html_functions.py HtmlElementCounter 17 17 0 0%
crateweb/research/html_functions.py (no class) 125 82 0 34%
crateweb/research/models.py Highlight 16 16 0 0%
crateweb/research/models.py QueryBase 4 4 0 0%
crateweb/research/models.py QueryBase.Meta 0 0 0 100%
crateweb/research/models.py Query 192 192 0 0%
crateweb/research/models.py SitewideQuery 31 31 0 0%
crateweb/research/models.py QueryAudit 1 1 0 0%
crateweb/research/models.py PidLookup 2 2 0 0%
crateweb/research/models.py PidLookup.Meta 0 0 0 100%
crateweb/research/models.py TableQueryArgs 3 3 0 0%
crateweb/research/models.py PatientMultiQuery 130 130 0 0%
crateweb/research/models.py PatientExplorer 132 132 0 0%
crateweb/research/models.py PatientExplorer.Meta 0 0 0 100%
crateweb/research/models.py PatientExplorerAudit 1 1 0 0%
crateweb/research/models.py ArchiveTemplateAudit 1 1 0 0%
crateweb/research/models.py ArchiveAttachmentAudit 1 1 0 0%
crateweb/research/models.py (no class) 342 76 0 78%
crateweb/research/research_db_info.py PatientFieldPythonTypes 0 0 0 100%
crateweb/research/research_db_info.py ColumnInfo 31 31 0 0%
crateweb/research/research_db_info.py SingleResearchDatabase 154 154 0 0%
crateweb/research/research_db_info.py ResearchDatabaseInfo 165 165 0 0%
crateweb/research/research_db_info.py (no class) 131 1 0 99%
crateweb/research/sql_writer.py SelectElement 21 21 0 0%
crateweb/research/sql_writer.py (no class) 104 86 0 17%
crateweb/userprofile/__init__.py (no class) 0 0 0 100%
crateweb/userprofile/models.py UserProfile 4 4 0 0%
crateweb/userprofile/models.py (no class) 51 10 0 80%
nlp_manager/__init__.py (no class) 0 0 0 100%
nlp_manager/constants.py NlpConfigPrefixes 0 0 0 100%
nlp_manager/constants.py NlpDefConfigKeys 0 0 0 100%
nlp_manager/constants.py NlpDefValues 0 0 0 100%
nlp_manager/constants.py InputFieldConfigKeys 0 0 0 100%
nlp_manager/constants.py ProcessorConfigKeys 0 0 0 100%
nlp_manager/constants.py NlpOutputConfigKeys 0 0 0 100%
nlp_manager/constants.py DatabaseConfigKeys 0 0 0 100%
nlp_manager/constants.py CloudNlpConfigKeys 0 0 0 100%
nlp_manager/constants.py GateApiKeys 0 0 0 100%
nlp_manager/constants.py GateResultKeys 0 0 0 100%
nlp_manager/constants.py GateFieldNames 0 0 0 100%
nlp_manager/constants.py (no class) 123 3 0 98%
preprocess/__init__.py (no class) 0 0 0 100%
preprocess/constants.py (no class) 8 0 0 100%
preprocess/systmone_ddgen.py SystmOneContext 0 0 0 100%
preprocess/systmone_ddgen.py S1Table 0 0 0 100%
preprocess/systmone_ddgen.py CPFTTable 0 0 0 100%
preprocess/systmone_ddgen.py CrateView 0 0 0 100%
preprocess/systmone_ddgen.py S1GenericCol 0 0 0 100%
preprocess/systmone_ddgen.py CPFTGenericCol 0 0 0 100%
preprocess/systmone_ddgen.py CrateS1ViewCol 0 0 0 100%
preprocess/systmone_ddgen.py S1PatientCol 0 0 0 100%
preprocess/systmone_ddgen.py CPFTPatientCol 0 0 0 100%
preprocess/systmone_ddgen.py S1AddressCol 0 0 0 100%
preprocess/systmone_ddgen.py CPFTAddressCol 0 0 0 100%
preprocess/systmone_ddgen.py S1ContactCol 0 0 0 100%
preprocess/systmone_ddgen.py S1RelCol 0 0 0 100%
preprocess/systmone_ddgen.py CPFTOtherCol 0 0 0 100%
preprocess/systmone_ddgen.py S1HospNumCol 0 0 0 100%
preprocess/systmone_ddgen.py SystmOneSRESpecRow 36 36 0 0%
preprocess/systmone_ddgen.py SystmOneSRESpecs 18 18 0 0%
preprocess/systmone_ddgen.py ScrubSrcAlterMethodInfo 8 8 0 0%
preprocess/systmone_ddgen.py TableCommentWorking 30 30 0 0%
preprocess/systmone_ddgen.py (no class) 593 258 0 56%
preprocess/tests/__init__.py (no class) 0 0 0 100%
preprocess/tests/text_extractor_tests.py RowIdentifierProvider 1 0 0 100%
preprocess/tests/text_extractor_tests.py DocumentUidProvider 1 0 0 100%
preprocess/tests/text_extractor_tests.py SubfolderProvider 1 0 0 100%
preprocess/tests/text_extractor_tests.py IndexProvider 1 0 0 100%
preprocess/tests/text_extractor_tests.py PatientIdProvider 1 0 0 100%
preprocess/tests/text_extractor_tests.py SystmOneTextExtractorTests 147 0 0 100%
preprocess/tests/text_extractor_tests.py (no class) 37 0 0 100%
preprocess/text_extractor.py TextExtractor 48 3 0 94%
preprocess/text_extractor.py SystmOneTextExtractor 34 0 0 100%
preprocess/text_extractor.py (no class) 35 0 0 100%
testing/__init__.py (no class) 4 0 0 100%
testing/classes.py CrateTestCase 6 0 0 100%
testing/classes.py CommonDatabaseTestCase 6 6 0 0%
testing/classes.py DatabaseTestCase 0 0 0 100%
testing/classes.py SlowSecretDatabaseTestCase 0 0 0 100%
testing/classes.py DemoDatabaseTestCase 0 0 0 100%
testing/classes.py (no class) 31 1 0 97%
testing/factories.py AnonTestBaseFactory 0 0 0 100%
testing/factories.py SecretBaseFactory 0 0 0 100%
testing/factories.py SourceTestBaseFactory 0 0 0 100%
testing/factories.py Fake 0 0 0 100%
testing/factories.py DemoFactory 0 0 0 100%
testing/factories.py DemoFactory.Meta 0 0 0 100%
testing/factories.py DemoPatientFactory 12 12 0 0%
testing/factories.py DemoPatientFactory.Meta 0 0 0 100%
testing/factories.py DemoNoteFactory 2 2 0 0%
testing/factories.py DemoNoteFactory.Meta 0 0 0 100%
testing/factories.py DemoNoteFactory.Params 0 0 0 100%
testing/factories.py DemoFilenameDocFactory 2 2 0 0%
testing/factories.py DemoFilenameDocFactory.Meta 0 0 0 100%
testing/factories.py (no class) 62 5 0 92%
testing/models.py EnumColours 0 0 0 100%
testing/models.py Patient 5 5 0 0%
testing/models.py Note 0 0 0 100%
testing/models.py BlobDoc 4 4 0 0%
testing/models.py FilenameDoc 0 0 0 100%
testing/models.py (no class) 67 3 0 96%
testing/providers.py ChoiceProvider 2 2 0 0%
testing/providers.py DateFormatProvider 1 1 0 0%
testing/providers.py AgeProvider 1 1 0 0%
testing/providers.py SexProvider 1 1 0 0%
testing/providers.py ForenameProvider 5 5 0 0%
testing/providers.py FormattedDateOfBirthProvider 3 3 0 0%
testing/providers.py IncrementingDateProvider 3 3 0 0%
testing/providers.py FormattedIncrementingDateProvider 3 3 0 0%
testing/providers.py ConsistentDateOfBirthProvider 1 1 0 0%
testing/providers.py RelationshipProvider 1 1 0 0%
testing/providers.py AlcoholProvider 3 3 0 0%
testing/providers.py PatientNoteProvider 33 33 0 0%
testing/providers.py PatientFileProvider 28 28 0 0%
testing/providers.py NhsNumberProvider 1 1 0 0%
testing/providers.py (no class) 67 0 0 100%
version.py (no class) 8 1 0 88%
Total   9338 5197 0 44%

No items found using the specified filter.