test: suite pytest per il gateway (21 test) + script di verifica pre-push
- conftest: FakeQdrant in-memory + mock embed (nessuna dipendenza da Qdrant/Ollama) - test: validazione (project_id, kind, expires_at, confidence, lunghezza), auth (422/401/429), idempotency (replay/409/key diverse), supersede (404/409/lineage), filtri search, meta, status, metrics - scripts/check.sh: esbuild (estensione) + pytest (gateway) - requirements-dev.txt: pytest
This commit is contained in:
Executable
+18
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
# Verifica pre-push di pi-qmem: sintassi estensione (esbuild) + test gateway (pytest).
|
||||
# Uso: ./scripts/check.sh (richiede: npx esbuild, python3 con pytest + deps gateway)
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
echo "── 1/2 Estensione: transpile esbuild ──"
|
||||
npx --no-install esbuild extensions/index.ts --outfile=/tmp/qmem-check.mjs
|
||||
echo "✅ estensione OK"
|
||||
|
||||
echo "── 2/2 Gateway: pytest ──"
|
||||
cd gateway
|
||||
if ! python3 -c "import pytest, fastapi, qdrant_client, httpx, pydantic" 2>/dev/null; then
|
||||
echo "⚠️ dipendenze mancanti: pip install -r requirements.txt -r requirements-dev.txt"
|
||||
exit 1
|
||||
fi
|
||||
python3 -m pytest tests/ -q
|
||||
echo "✅ gateway OK"
|
||||
Reference in New Issue
Block a user