test(web): replace obsolete F3 inventory contract with F7 simplicity guard
This commit is contained in:
@@ -4,37 +4,59 @@ set -Eeuo pipefail
|
|||||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||||
LAYOUT="$ROOT/web-v2/src/layout/AppLayout.tsx"
|
LAYOUT="$ROOT/web-v2/src/layout/AppLayout.tsx"
|
||||||
APP="$ROOT/web-v2/src/app/App.tsx"
|
APP="$ROOT/web-v2/src/app/App.tsx"
|
||||||
PAGE="$ROOT/web-v2/src/pages/InventoryCreatePage.tsx"
|
CREATE_PAGE="$ROOT/web-v2/src/pages/InventoryCreatePage.tsx"
|
||||||
|
ADMIN_PAGE="$ROOT/web-v2/src/pages/AuthoritativeInventoryConfigPage.tsx"
|
||||||
|
API="$ROOT/web-v2/src/lib/inventoryStructureApi.ts"
|
||||||
|
|
||||||
for file in "$LAYOUT" "$APP" "$PAGE"; do
|
for file in "$LAYOUT" "$APP" "$CREATE_PAGE" "$ADMIN_PAGE" "$API"; do
|
||||||
test -f "$file" || {
|
test -f "$file" || {
|
||||||
echo "F4 WEB contract: falta $file"
|
echo "F7 WEB contract: falta $file"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
done
|
done
|
||||||
|
|
||||||
if grep -Fq "label: 'Relevamientos'" "$LAYOUT"; then
|
if grep -Fq "label: 'Relevamientos'" "$LAYOUT"; then
|
||||||
echo "F4 WEB contract: Relevamientos no debe volver al menú principal"
|
echo "F7 WEB contract: Relevamientos no debe volver al menú principal"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if grep -Fq 'path="/relevamiento/*"' "$APP"; then
|
if grep -Fq 'path="/relevamiento/*"' "$APP"; then
|
||||||
echo "F4 WEB contract: Survey/Relevamiento no debe volver a exponer rutas activas"
|
echo "F7 WEB contract: Survey/Relevamiento no debe volver a exponer rutas activas"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
grep -Fq 'path="/inventarios/nuevo"' "$APP"
|
grep -Fq 'path="/inventarios/nuevo"' "$APP"
|
||||||
grep -Fq 'InventoryCreatePage' "$APP"
|
grep -Fq 'InventoryCreatePage' "$APP"
|
||||||
|
|
||||||
for kind in AREA YACIMIENTO INSTALACION SUBINSTALACION; do
|
for kind in DEPARTAMENTO AREA YACIMIENTO INSTALACION SUBINSTALACION; do
|
||||||
grep -Fq "kind: '$kind'" "$PAGE"
|
grep -Fq "kind: '$kind'" "$CREATE_PAGE"
|
||||||
done
|
done
|
||||||
|
|
||||||
if grep -Fq "kind: 'EQUIPO'" "$PAGE"; then
|
if grep -Fq "kind: 'EQUIPO'" "$CREATE_PAGE"; then
|
||||||
echo "F4 WEB contract: el alta guiada no debe restaurar EQUIPO como quinto nivel estructural"
|
echo "F7 WEB contract: EQUIPO no debe restaurarse como nivel estructural"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
grep -Fq 'getInventoryFamilyFindings' "$PAGE"
|
# F7: Yacimiento elige una Empresa ya vinculada al Área; concesión deja de ser una decisión del alta cotidiana.
|
||||||
|
grep -Fq 'listCompaniesForInventoryArea' "$CREATE_PAGE"
|
||||||
|
if grep -Fq 'concessionTypeId' "$CREATE_PAGE"; then
|
||||||
|
echo "F7 WEB contract: el alta simple no debe exponer Tipo de concesión"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
echo 'F4 WEB contract: OK'
|
# El alta normal usa el endpoint simple; el endpoint histórico queda sólo por compatibilidad transitoria.
|
||||||
|
grep -Fq "'/inventory-structure/simple'" "$API"
|
||||||
|
|
||||||
|
# La configuración técnica visible se reduce a tipos, contención y campos sencillos.
|
||||||
|
grep -Fq 'Tipos y campos' "$ADMIN_PAGE"
|
||||||
|
grep -Fq 'Tipos de Instalación' "$ADMIN_PAGE"
|
||||||
|
grep -Fq 'Tipos de Subinstalación' "$ADMIN_PAGE"
|
||||||
|
grep -Fq '+ Agregar campo' "$ADMIN_PAGE"
|
||||||
|
|
||||||
|
# El catálogo de Hallazgos no debe mezclarse con el formulario de alta de Inventario.
|
||||||
|
if grep -Fq 'getInventoryFamilyFindings' "$CREATE_PAGE"; then
|
||||||
|
echo "F7 WEB contract: el alta simple no debe cargar catálogo de Hallazgos"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo 'F7 WEB contract: OK'
|
||||||
|
|||||||
Reference in New Issue
Block a user