test : add unit tests for _gather_scan_summary in notification_service
Nessuno ha ancora preso questa issue.
- #2428 di @tmdeveloper007 — chiusa senza merge
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 35/100
Direzione di ricerca
Read backend/secuscan/notification_service.py to inspect _gather_scan_summary() and testing/backend/unit/test_notification_service.py for its existing fixtures and test patterns. Use the test_db fixture to cover the missing task, summary fields, severity counts, report link, error message, and tool name fallback. The issue reports a linked pull request, so check its status before starting; done means these behaviors have direct unit tests.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary of What Needs to be Done:
Add unit tests for the _gather_scan_summary() async helper function in backend/secuscan/notification_service.py. This function collects task status, severity counts, and a report link for a scan completion webhook. It queries the database for task and finding records.
The existing test file testing/backend/unit/test_notification_service.py has 36 tests that cover process_scan_completion_webhook and other delivery functions, but _gather_scan_summary is not directly imported or tested — it is only exercised indirectly through process_scan_completion_webhook.
Changes that Need to be Made:
Add a new test section (or new test class) in testing/backend/unit/test_notification_service.py:
- Import
_gather_scan_summaryfrombackend.secuscan.notification_service - Test that it returns None when the task_id does not exist in the database
- Test that it returns a summary dict with correct structure when the task exists
- Test that severity_counts correctly aggregates findings by severity
- Test that the report_link includes the task_id and uses the configured base_url
- Test that
error_messagefrom the task record is included in the summary - Test that
tool_namefalls back toplugin_idwhentool_nameis not set - Use the existing
test_dbfixture (AsyncDatabase) to set up test data
Impact that it would Provide:
- Directly validates the summary aggregation logic independent of webhook delivery
- Ensures severity counts are computed correctly regardless of webhook configuration
- Provides clear unit-level coverage for the helper before it is used in more complex flows
Note: This task is being handled by tmdeveloper007 — please assign to that account when picking it up.
- Lingua principale
- Python
- Stelle
- 36
- Fork
- 234
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di utksh1/SecuScan
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
area:frontend good first issue level:intermediate priority:low type:testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
-
area:frontend good first issue level:intermediate priority:low type:testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
area:frontend good first issue level:beginner priority:low type:testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
area:frontend good first issue level:intermediate priority:low type:testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Tutte le issue di utksh1/SecuScan
Issue simili
-
[BUG] HTTP lifecycle dispatch treats a NO_PROXY-only environment as corporate egress and skips the resolve-and-pinned sessionForse già presa @bodapatisaikrishna l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
[integration]: NoMacSandboxApertaexternal
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
langchain-ai/docs#7652 ·
I maintainer di solito rispondono entro 1 giorno
-
[oblt-aw][autodoc] Document new e2e-secret-leak-artifacts workflow and update e2e-all leaf listAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 79/100
elastic/oblt-aw#2513 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug p2
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
NCAR/CLM-Tutorial#113 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno