Coverage report: 87%

Files Functions Classes

coverage.py v7.10.7, created at 2025-09-23 17:56 +0000

File class statements missing excluded coverage
backend/app/__init__.py (no class) 0 0 0 100%
backend/app/config.py Settings 0 0 0 100%
backend/app/config.py (no class) 15 0 0 100%
backend/app/database.py (no class) 14 4 0 71%
backend/app/eis/__init__.py (no class) 0 0 0 100%
backend/app/eis/email_scraper.py GmailScraper 239 102 0 57%
backend/app/eis/email_scraper.py GmailScraperService 37 37 0 0%
backend/app/eis/email_scraper.py (no class) 63 2 0 97%
backend/app/eis/job_scraper.py JobScrapper 60 60 0 0%
backend/app/eis/job_scraper.py IndeedJobScraper 18 18 0 0%
backend/app/eis/job_scraper.py LinkedinJobScraper 17 17 0 0%
backend/app/eis/job_scraper.py (no class) 99 15 0 85%
backend/app/eis/location_parser.py LocationParser 81 0 0 100%
backend/app/eis/location_parser.py (no class) 9 0 0 100%
backend/app/eis/models.py JobAlertEmail 0 0 0 100%
backend/app/eis/models.py ScrapedJob 0 0 0 100%
backend/app/eis/models.py EisServiceLog 0 0 0 100%
backend/app/eis/models.py (no class) 47 0 0 100%
backend/app/eis/routers.py (no class) 27 14 0 48%
backend/app/eis/schemas.py JobAlertEmailCreate 0 0 0 100%
backend/app/eis/schemas.py JobAlertEmailUpdate 0 0 0 100%
backend/app/eis/schemas.py JobAlertEmailOut 0 0 0 100%
backend/app/eis/schemas.py ScrapedJobCreate 0 0 0 100%
backend/app/eis/schemas.py ScrapedJobUpdate 0 0 0 100%
backend/app/eis/schemas.py ScrapedJobOut 0 0 0 100%
backend/app/eis/schemas.py EisServiceLogCreate 0 0 0 100%
backend/app/eis/schemas.py EisServiceLogUpdate 0 0 0 100%
backend/app/eis/schemas.py EisServiceLogOut 0 0 0 100%
backend/app/eis/schemas.py (no class) 44 0 0 100%
backend/app/main.py (no class) 30 2 0 93%
backend/app/models.py CommonBase 2 0 0 100%
backend/app/models.py Owned 0 0 0 100%
backend/app/models.py Setting 0 0 0 100%
backend/app/models.py User 0 0 0 100%
backend/app/models.py Keyword 0 0 0 100%
backend/app/models.py Aggregator 0 0 0 100%
backend/app/models.py Company 0 0 0 100%
backend/app/models.py Location 8 0 0 100%
backend/app/models.py File 0 0 0 100%
backend/app/models.py Person 4 0 0 100%
backend/app/models.py Job 5 1 0 80%
backend/app/models.py Interview 0 0 0 100%
backend/app/models.py JobApplicationUpdate 0 0 0 100%
backend/app/models.py (no class) 128 0 0 100%
backend/app/oauth2.py (no class) 32 3 0 91%
backend/app/routers/__init__.py (no class) 128 26 0 80%
backend/app/routers/dashboard.py (no class) 48 0 0 100%
backend/app/routers/data_tables.py (no class) 31 4 0 87%
backend/app/routers/export.py (no class) 30 0 0 100%
backend/app/routers/login.py (no class) 17 1 0 94%
backend/app/routers/user.py (no class) 91 21 0 77%
backend/app/schemas.py Out 0 0 0 100%
backend/app/schemas.py OwnedOut 0 0 0 100%
backend/app/schemas.py SettingCreate 0 0 0 100%
backend/app/schemas.py SettingOut 0 0 0 100%
backend/app/schemas.py SettingUpdate 0 0 0 100%
backend/app/schemas.py UserCreate 0 0 0 100%
backend/app/schemas.py UserOut 0 0 0 100%
backend/app/schemas.py UserLogin 0 0 0 100%
backend/app/schemas.py UserUpdate 0 0 0 100%
backend/app/schemas.py Token 0 0 0 100%
backend/app/schemas.py TokenData 0 0 0 100%
backend/app/schemas.py KeywordCreate 0 0 0 100%
backend/app/schemas.py KeywordOut 0 0 0 100%
backend/app/schemas.py KeywordMinOut 0 0 0 100%
backend/app/schemas.py KeywordUpdate 0 0 0 100%
backend/app/schemas.py AggregatorCreate 0 0 0 100%
backend/app/schemas.py AggregatorOut 0 0 0 100%
backend/app/schemas.py AggregatorMinOut 0 0 0 100%
backend/app/schemas.py AggregatorUpdate 0 0 0 100%
backend/app/schemas.py CompanyCreate 0 0 0 100%
backend/app/schemas.py CompanyOut 0 0 0 100%
backend/app/schemas.py CompanyMinOut 0 0 0 100%
backend/app/schemas.py CompanyUpdate 0 0 0 100%
backend/app/schemas.py LocationCreate 0 0 0 100%
backend/app/schemas.py LocationOut 0 0 0 100%
backend/app/schemas.py LocationMinOut 0 0 0 100%
backend/app/schemas.py LocationUpdate 0 0 0 100%
backend/app/schemas.py FileCreate 0 0 0 100%
backend/app/schemas.py FileOut 0 0 0 100%
backend/app/schemas.py FileUpdate 0 0 0 100%
backend/app/schemas.py PersonCreate 0 0 0 100%
backend/app/schemas.py PersonOut 0 0 0 100%
backend/app/schemas.py PersonMinOut 0 0 0 100%
backend/app/schemas.py PersonUpdate 0 0 0 100%
backend/app/schemas.py JobCreate 0 0 0 100%
backend/app/schemas.py JobOut 31 0 0 100%
backend/app/schemas.py JobMinOut 0 0 0 100%
backend/app/schemas.py JobUpdate 0 0 0 100%
backend/app/schemas.py InterviewCreate 0 0 0 100%
backend/app/schemas.py InterviewOut 0 0 0 100%
backend/app/schemas.py InterviewAppOut 0 0 0 100%
backend/app/schemas.py InterviewMinOut 0 0 0 100%
backend/app/schemas.py InterviewUpdate 0 0 0 100%
backend/app/schemas.py JobApplicationUpdateCreate 0 0 0 100%
backend/app/schemas.py JobApplicationUpdateOut 0 0 0 100%
backend/app/schemas.py JobApplicationUpdateAppOut 0 0 0 100%
backend/app/schemas.py JobApplicationUpdateUpdate 0 0 0 100%
backend/app/schemas.py (no class) 227 0 0 100%
backend/app/utils.py AppLogger 43 18 0 58%
backend/app/utils.py (no class) 32 5 0 84%
backend/tests/__init__.py (no class) 0 0 0 100%
backend/tests/conftest.py CRUDTestBase 88 18 0 80%
backend/tests/conftest.py (no class) 124 0 0 100%
backend/tests/eis/__init__.py (no class) 0 0 0 100%
backend/tests/eis/test_email_scraper.py TestCleanEmailAddress 2 0 0 100%
backend/tests/eis/test_email_scraper.py TestGetUserIdFromEmail 11 0 0 100%
backend/tests/eis/test_email_scraper.py TestSaveEmailToDb 22 0 0 100%
backend/tests/eis/test_email_scraper.py TestExtractLinkedinJobIds 25 0 0 100%
backend/tests/eis/test_email_scraper.py TestExtractIndeedJobIds 19 0 0 100%
backend/tests/eis/test_email_scraper.py TestSaveJobsToDb 27 0 0 100%
backend/tests/eis/test_email_scraper.py TestSaveJobDataToDb 40 0 0 100%
backend/tests/eis/test_email_scraper.py TestProcessEmailJobs 20 0 0 100%
backend/tests/eis/test_email_scraper.py TestProcessUserEmails 95 4 0 96%
backend/tests/eis/test_email_scraper.py TestScrapeRemainingJobs 64 0 0 100%
backend/tests/eis/test_email_scraper.py (no class) 135 0 0 100%
backend/tests/eis/test_job_scraper.py MockLinkedinJobScraper 7 0 0 100%
backend/tests/eis/test_job_scraper.py MockIndeedJobScraper 7 0 0 100%
backend/tests/eis/test_job_scraper.py (no class) 26 0 0 100%
backend/tests/eis/test_location_parser.py TestLocationParser 81 0 0 100%
backend/tests/eis/test_location_parser.py (no class) 40 0 0 100%
backend/tests/eis/test_routers.py TestJobAlertEmailCRUD 0 0 0 100%
backend/tests/eis/test_routers.py TestScrapedJobCRUD 0 0 0 100%
backend/tests/eis/test_routers.py (no class) 18 0 0 100%
backend/tests/routers/__init__.py (no class) 0 0 0 100%
backend/tests/routers/test_dashboard.py TestDashboardRouter 17 0 0 100%
backend/tests/routers/test_dashboard.py (no class) 5 0 0 100%
backend/tests/routers/test_data_tables.py TestKeywordCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py TestAggregatorCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py TestCompanyCRUD 8 0 0 100%
backend/tests/routers/test_data_tables.py TestLocationCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py TestFileCRUD 32 0 0 100%
backend/tests/routers/test_data_tables.py TestPersonCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py TestJobCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py TestJobApplicationUpdateCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py TestInterviewCRUD 0 0 0 100%
backend/tests/routers/test_data_tables.py (no class) 78 0 0 100%
backend/tests/routers/test_export.py TestExport 5 0 0 100%
backend/tests/routers/test_export.py (no class) 3 0 0 100%
backend/tests/routers/test_login.py TestLogin 10 0 0 100%
backend/tests/routers/test_login.py (no class) 8 0 0 100%
backend/tests/routers/test_user.py TestUser 81 0 0 100%
backend/tests/routers/test_user.py (no class) 27 0 0 100%
backend/tests/test_utils.py TestPasswordUtils 17 0 0 100%
backend/tests/test_utils.py (no class) 6 0 0 100%
backend/tests/utils/__init__.py (no class) 0 0 0 100%
backend/tests/utils/create_data.py (no class) 109 7 0 94%
backend/tests/utils/files.py (no class) 46 11 0 76%
backend/tests/utils/seed_database.py (no class) 22 4 0 82%
backend/tests/utils/table_data.py (no class) 49 0 0 100%
Total   3031 394 0 87%

No items found using the specified filter.