test : add unit tests for handle_caret handle_tilde and handle_wildcard helpers

Aperta
#2,274 1 commento 0 reazioni 1 assegnatario Vedi su GitHub

@tmdeveloper007 ci sta già lavorando.

Dal 3/8/2026.

  • #2279 di @tmdeveloper007 — chiusa senza merge
  • #2283 di @singhanurag0317-bit — chiusa senza merge

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

Summary of What Needs to be Done:
Add direct unit tests for the handle_caret, handle_tilde, and handle_wildcard helper functions in backend/secuscan/remediation.py. These are internal helpers used by semver_to_pep440. While semver_to_pep440 is tested in test_remediation_safety.py, the individual helpers are not tested directly, leaving edge cases uncovered.

Changes that Need to be Made:
Add tests to testing/backend/unit/test_remediation_safety.py (or create testing/backend/unit/test_remediation_helpers.py) covering:

  1. handle_caret (ver_str: str) -> List[str]:

    • handle_caret("1.2.3") == [">=1.2.3,<2.0.0"]
    • handle_caret("0.2.3") == [">=0.2.3,<0.3.0"]
    • handle_caret("0.0.3") == [">=0.0.3,<0.0.4"]
    • handle_caret("0.1.0") == [">=0.1.0,<0.2.0"]
    • handle_caret("0.0.1") == [">=0.0.1,<0.0.2"]
  2. handle_tilde (ver_str: str) -> List[str]:

    • handle_tilde("1.2.3") == [">=1.2.3,<1.3.0"]
    • handle_tilde("1.2") == [">=1.2.0,<1.3.0"]
    • handle_tilde("1") == [">=1.0.0,<2.0.0"]
  3. handle_wildcard (part: str) -> List[str]:

    • handle_wildcard("1") == [">=1.0.0,<2.0.0"]
    • handle_wildcard("1.2") == [">=1.2.0,<1.3.0"]
    • handle_wildcard("1.2.3") == [">=1.2.3,<1.3.0"]
    • handle_wildcard("x") raises ValueError or returns empty list
    • handle_wildcard("*") raises ValueError or returns empty list

Import from backend.secuscan.remediation directly. Note: These functions are prefixed with underscore in the module (e.g., _handle_caret). Use --noconftest for local runs.

Impact that it would Provide:

  • Reliability: Tests the individual components of semver_to_pep440 in isolation
  • Testing: Fills gaps left by existing semver_to_pep440 tests which only test the top-level function
  • Maintainability: Makes future changes to these helpers safer with direct coverage

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

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di utksh1/SecuScan

Tutte le issue di utksh1/SecuScan

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.