Validation: add email-validator + phonenumbers; improve server-side validation; add tests; update templates and requirements #5

Merged
albert merged 1 commits from feat/app-factory into main 2025-12-21 23:03:00 +01:00
Owner
No description provided.
albert added 1 commit 2025-12-21 23:02:55 +01:00
albert merged commit 47ed7e7db5 into main 2025-12-21 23:03:00 +01:00
Author
Owner

Titel: Feature: App‑Factory, Validierung, vCard-Export, Tests

Kurzbeschreibung

  • Ersetzt das papierbasierte Anmeldeformular durch eine Flask-Webseite (App‑Factory).
  • Speichert deutsche Adressdaten inkl. Telefon und E‑Mail in SQLite.
  • Fügt serverseitige Validierung für PLZ, E‑Mail und Telefon hinzu (email-validator, phonenumbers mit Fallback).
  • Generiert vCard 4.0 nach erfolgreicher Einreichung und speichert sie unter vcards/.
  • Enthält Unit- und Integrationstests (pytest) und initiale Datenbank-Migrationen (Alembic/Flask‑Migrate).

Änderungen

  • Neue/überarbeitete Dateien:
    • application/ package (App‑Factory, routes.py, models.py, extensions.py)
    • utils.py (vCard-Generator)
    • templates/index.html (Formular/Fehlermeldungen)
    • tests/ (Unit- und Integrationstests)
    • migrations/ (gestampfte Basis)
    • requirements.txt (email-validator, phonenumbers)

Testen (lokal)

  1. Virtuelle Umgebung aktivieren / Python 3.11 verwenden.
  2. Abhängigkeiten installieren:
    pip install -r requirements.txt
    
  3. Tests ausführen:
    pytest -q
    

Migrationshinweise

  • migrations/ ist initialisiert und die DB wurde gestampft. Bei Modelländerungen bitte neue Migrationen mit flask db migrate und flask db upgrade erzeugen.

Review-Checklist

  • Validierung (E‑Mail / Telefon / PLZ) prüfen.
  • Formular-UI prüfen (templates/index.html).
  • vCard-Export testen (Erstellung in vcards/).
  • CI testen (siehe .github/workflows/ci.yml / .gitlab-ci.yml).

Zusätzliche Hinweise

  • email-validator wird ohne externe Lieferbarkeitschecks verwendet, damit Tests reproduzierbar sind.
Titel: Feature: App‑Factory, Validierung, vCard-Export, Tests Kurzbeschreibung - Ersetzt das papierbasierte Anmeldeformular durch eine Flask-Webseite (App‑Factory). - Speichert deutsche Adressdaten inkl. Telefon und E‑Mail in SQLite. - Fügt serverseitige Validierung für PLZ, E‑Mail und Telefon hinzu (`email-validator`, `phonenumbers` mit Fallback). - Generiert vCard 4.0 nach erfolgreicher Einreichung und speichert sie unter `vcards/`. - Enthält Unit- und Integrationstests (pytest) und initiale Datenbank-Migrationen (Alembic/Flask‑Migrate). Änderungen - Neue/überarbeitete Dateien: - `application/` package (App‑Factory, `routes.py`, `models.py`, `extensions.py`) - `utils.py` (vCard-Generator) - `templates/index.html` (Formular/Fehlermeldungen) - `tests/` (Unit- und Integrationstests) - `migrations/` (gestampfte Basis) - `requirements.txt` (`email-validator`, `phonenumbers`) Testen (lokal) 1. Virtuelle Umgebung aktivieren / Python 3.11 verwenden. 2. Abhängigkeiten installieren: ```bash pip install -r requirements.txt ``` 3. Tests ausführen: ```bash pytest -q ``` Migrationshinweise - `migrations/` ist initialisiert und die DB wurde gestampft. Bei Modelländerungen bitte neue Migrationen mit `flask db migrate` und `flask db upgrade` erzeugen. Review-Checklist - [ ] Validierung (E‑Mail / Telefon / PLZ) prüfen. - [ ] Formular-UI prüfen (templates/index.html). - [ ] vCard-Export testen (Erstellung in `vcards/`). - [ ] CI testen (siehe `.github/workflows/ci.yml` / `.gitlab-ci.yml`). Zusätzliche Hinweise - `email-validator` wird ohne externe Lieferbarkeitschecks verwendet, damit Tests reproduzierbar sind.
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: albert/CheckInCare#5
No description provided.