126 lines
12 KiB
Plaintext
126 lines
12 KiB
Plaintext
$ TSX_TSCONFIG_PATH=../../tsconfig.json node --import tsx --test src/api/application/application-coincidence.test.ts src/api/domain/resource-catalog.test.ts src/api/domain/resource.test.ts src/api/domain/resource-template-propagation.test.ts src/api/application/resource-lifecycle.test.ts src/web/catalog/shared/catalog.test.tsx src/web/resources/shared/resources.test.tsx src/web/resources/shared/resource-values.test.ts src/api/domain/template-sections.test.ts src/web/catalog-fields/select/catalog-field-selection.test.tsx src/api/domain/directory-domain.test.ts src/api/domain/network-share.test.ts src/api/domain/resource-scope.test.ts src/api/infrastructure/persistence/resource-scope-reader.test.ts src/api/application/resource-scope.test.ts src/api/application/resource-reference-contracts.test.ts src/api/domain/global-resource.test.ts src/web/global-applications/shared/global-applications.test.tsx src/api/domain/operating-system-identity.test.ts src/api/application/global-operating-system-contracts.test.ts src/api/application/global-operating-system-policy.test.ts src/web/resources/shared/ui/resource-characteristic-control.test.tsx
|
||
✔ R2.6: nombre y proveedor son señales, nunca equivalencia confirmada (1.699913ms)
|
||
✔ R2.6: preserva tildes, puntuación, abreviaturas, ediciones, versiones y números (0.580805ms)
|
||
✔ R2.6: homónimos genéricos se mantienen débiles y los UUID nunca se sustituyen (46.548773ms)
|
||
✔ F2: SO global público tipado, sin contaminación de aplicaciones ni perfiles (23.178785ms)
|
||
✔ F2: elegibilidad de SO exige stock real y campos globales (0.321003ms)
|
||
✔ F2: contrato 3 y gates de SO independientes; aplicaciones no abren SO (0.307002ms)
|
||
✔ F3: cualquier escritor valida identidad publicada, corrección documental e historial (43.431848ms)
|
||
✔ recurso: activar/desactivar conserva datos e historial y repetir estado no añade revisiones (14.141413ms)
|
||
✔ recurso: valida identidades y rechaza actuar sobre recursos ajenos (3.098925ms)
|
||
✔ recurso: propaga el bloqueo por asociaciones y permite desactivar (1.761114ms)
|
||
✔ recurso: elimina y la repetición devuelve ausencia sin efectos adicionales (1.309911ms)
|
||
✔ elegibilidad global exige serie exacta y campos globales; las copias no elevan ámbito (1.830514ms)
|
||
✔ schemas discriminan owner, propósito, OS local y proyecciones privadas (57.498361ms)
|
||
✔ requests acotan lotes, consulta, paginación y rechazan privilegios o integración (9.851179ms)
|
||
✔ búsqueda literal conserva ñ, puntuación y espacios; pagina tras filtrar con desempate UUID (16.752234ms)
|
||
✔ R2.5 admite gates configurables; los valores predeterminados siguen cerrados (0.481304ms)
|
||
✔ R2.5: software y perfil se habilitan por separado y requieren catálogo (0.361603ms)
|
||
✔ R2.5: perfil no depende de software ni abre asociaciones con catálogo cerrado (1.539512ms)
|
||
✔ lectores locales: excluyen global y otra compañía incluso si el repositorio los entrega; stockKey no depende del nombre (21.125569ms)
|
||
✔ HTTP actual sin MariaDB: aislamiento con 15 compañías, 50 recursos locales, alta, edición, estado e historial (441.397533ms)
|
||
✔ DNS: normalización explícita, etiqueta única heredada, punto raíz y política ASCII IDN (9.070873ms)
|
||
✔ capacidad estable: la plantilla renombrada sigue siendo dominio y una copia arbitraria no (7.771562ms)
|
||
✔ alta, edición, DNS y archivo usan Resource y conservan su identidad e historial (17.795442ms)
|
||
✔ catálogo: DNS obligatorio protegido, NetBIOS opcional e inicialización idempotente (20.136661ms)
|
||
✔ identificadores de campo: mayúsculas no cambian identidad ni permiten duplicados (5.468044ms)
|
||
✔ global: crear exige UUID v7 y conserva identidad y propietario en edición e idempotencia (37.623302ms)
|
||
✔ global: captura por stockKey, sin depender del nombre traducido de la plantilla (3.901332ms)
|
||
✔ SMB acepta \\NAS-01\Finanzas (4.606937ms)
|
||
✔ SMB acepta \\files.example.local\Docs (0.399103ms)
|
||
✔ SMB acepta \\192.168.5.10\C$ (2.366018ms)
|
||
✔ SMB acepta \\samba\Diseño\Año 2026 (0.447604ms)
|
||
✔ SMB acepta \\NAS\Docs\ (0.590605ms)
|
||
✔ SMB rechaza "" (0.686905ms)
|
||
✔ SMB rechaza "\\\\" (0.582205ms)
|
||
✔ SMB rechaza "\\\\host" (0.369603ms)
|
||
✔ SMB rechaza "\\\\\\share" (2.023717ms)
|
||
✔ SMB rechaza "\\\\host\\\\" (2.093316ms)
|
||
✔ SMB rechaza "C:\\Datos" (0.295903ms)
|
||
✔ SMB rechaza "https://host/share" (0.215702ms)
|
||
✔ SMB rechaza "\\\\host\\share\\.." (0.441004ms)
|
||
✔ SMB rechaza "\\\\host\\share\\." (0.151401ms)
|
||
✔ SMB rechaza "\\\\?\\UNC\\host\\share" (0.145201ms)
|
||
✔ SMB rechaza "\\\\host\\share\\\\child" (0.923908ms)
|
||
✔ SMB rechaza "\\\\host\\share." (0.123801ms)
|
||
✔ SMB rechaza "\\\\host\\ share" (0.097201ms)
|
||
✔ SMB rechaza "\\\\ho st\\share" (0.082901ms)
|
||
✔ SMB rechaza "\\\\host\\bad\u0000" (0.524505ms)
|
||
✔ SMB rechaza "\\\\host\\bad\ud800" (0.299903ms)
|
||
✔ SMB rechaza "\\\\host\\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" (0.212102ms)
|
||
✔ SMB: comparación conservadora, alias y Unicode sin transformaciones destructivas (0.564105ms)
|
||
✔ SMB: semántica por stockKey y protección del catálogo sin bloquear etiquetas u obligatoriedad (35.828588ms)
|
||
✔ SMB: alta validada y diagnóstico histórico sin conversión ni revisión (33.387968ms)
|
||
✔ SMB: nuevas altas fijan integración access y rechazan contexto incompatible (37.266499ms)
|
||
✔ F1: identidad completa, edición conocida/no aplicable/desconocida e inactivos (20.083861ms)
|
||
✔ F1: normalización conservadora no equipara ediciones, releases ni ausencia desconocida (0.495804ms)
|
||
✔ F1: evolución de stock personalizada e idempotente; no elimina campos ni cambia obligatoriedad (57.930365ms)
|
||
✔ F1: un catálogo anterior evoluciona sin sobrescribir bindings ni recursos particulares (50.349204ms)
|
||
✔ catálogo de recursos: serie idempotente, UUID v7, características opcionales y protección (83.426968ms)
|
||
✔ ámbitos, tipos, listas, campos externos y disponibilidad por compañía (19.875959ms)
|
||
✔ licencias: ampliar un catálogo previo conserva identidades y disponibilidad (137.840603ms)
|
||
✔ plantillas globales de serie editables: conserva identidad, asociaciones, disponibilidad y cambios al reiniciar (20.478764ms)
|
||
✔ campos globales de serie editables: listas ampliables, tipo fijo y opciones existentes conservadas (31.988256ms)
|
||
✔ sistema operativo: plantilla con uso explícito, copia y ampliación sin sobrescribir definiciones (20.02926ms)
|
||
✔ iconos de recursos: todas las plantillas de serie tienen su icono y el arranque no repone los retirados (46.129369ms)
|
||
✔ iconos de recursos: cambiar y retirar el icono conserva identidad y asociaciones, con guardado idempotente (21.712374ms)
|
||
✔ iconos de recursos: claves desconocidas, cadenas vacías e iconos de campos se rechazan (9.329074ms)
|
||
✔ ámbito: pares válidos y rechazo runtime de propietarios contradictorios o ausentes (17.687141ms)
|
||
✔ ámbito: proyección preparada separada; HTTP local conserva exactamente su contrato (6.445151ms)
|
||
✔ ámbito: edición y propagación locales conservan propietario, UUID e historia; globales son solo lectura (3.402127ms)
|
||
✔ Resource: propaga altas, orden y retiradas conservando cero/falso, valores e historial; repetir no genera revisiones (77.254018ms)
|
||
✔ Resource: los campos retirados no impiden añadir una plantilla completa y no se fusionan por nombre (13.70791ms)
|
||
✔ Resource: retirar secciones conserva solo las necesarias y mover o reincorporar campos aplica el destino (1.053209ms)
|
||
✔ recursos: tipos, valores opcionales y obligatorios, cero/falso y campos desconocidos (14.88912ms)
|
||
✔ recurso: identidad estable, historial, desactivación e idempotencia (3.419128ms)
|
||
✔ buzón como recurso: correo válido, cuenta opcional, cambios auditados y tipo fijo (4.757938ms)
|
||
✔ secciones: nombres, identidades, referencias y un solo nivel (13.941711ms)
|
||
✔ secciones: igualdad, orden, identidad y persistencia JSON (3.028324ms)
|
||
✔ secciones: plantillas globales y locales conservan separación y UUID al editar (5.028041ms)
|
||
✔ secciones de serie: el arranque conserva una plantilla sin grupos y su disponibilidad (25.837306ms)
|
||
✔ especificación: secciones capturadas, edición posterior y obligatoriedad independiente (27.987024ms)
|
||
✔ lector legacy: roundtrip conserva UUID, revisiones, valores, actor, fecha y DTO sin columna scope (60.487383ms)
|
||
✔ lector: solo el adaptador legacy conocido interpreta ausencia; ningún ámbito inválido usa fallback (7.262458ms)
|
||
✔ proyecciones operativas: global sintético se rechaza antes de SQL, el recurso local sin integración no crea proyección (160.026378ms)
|
||
✔ escritor scoped: envía company explícito, preserva la salida legacy y rechaza global (2.60512ms)
|
||
✔ selección múltiple añade un lote sin duplicados y conserva las reglas y el orden existentes (5.089634ms)
|
||
✔ añadir desde una sección asigna solo los campos nuevos a su destino y conserva los existentes (1.894213ms)
|
||
✔ la selección respeta el límite del schema, valida identificadores y rechaza el conjunto vacío (1.829113ms)
|
||
✔ el listado reutiliza tabla, búsqueda y casillas traducidas y conserva las selecciones bloqueadas (139.883942ms)
|
||
✔ L04.2: campos de recursos recuperan orden y página sin heredar otra pestaña (210.977417ms)
|
||
✔ el catálogo muestra plantillas de serie y acción de alta sin formularios junto al listado (145.583478ms)
|
||
✔ los formularios tienen ayuda inferior y selección de campos en diálogo con alta rápida (58.885096ms)
|
||
✔ iconos de recursos: catálogo y selector traducido conservan la selección al editar y copiar (302.953133ms)
|
||
✔ catálogo global: lectura mínima y navegación traducidas, sin administración para ordinarios (53.413359ms)
|
||
✔ R2.4: mutación global invalida solo instalaciones cacheadas que usan su UUID (5.183435ms)
|
||
✔ R2.5: cambio global invalida configuraciones afectadas y preserva otras compañías (2.038913ms)
|
||
✔ SO global: lectura pública es/en conserva identidad estructurada y navegación propia (14.714699ms)
|
||
✔ SO global: invalida software y su catálogo sin refrescar aplicaciones ni perfiles (2.332616ms)
|
||
✔ la integración de buzón conserva su configuración explícita y no inventa referencias (1.387811ms)
|
||
✔ los valores iniciales toleran catálogo pendiente y limitan el nombre sin cambiar la entrada (1.339411ms)
|
||
✔ nombre propuesto: prioriza los identificadores de cada plantilla y limita su longitud (21.132869ms)
|
||
✔ nombre propuesto: contempla campos personalizados y descarta valores no identificativos (0.393603ms)
|
||
✔ paso de campos: exige valores obligatorios y acepta cero y respuestas negativas (0.693206ms)
|
||
✔ paso de campos: requiere la dirección de buzón aunque la plantilla la marque opcional (10.10018ms)
|
||
✔ recursos: listado con alta modal y sin formulario visible, en español e inglés (168.306127ms)
|
||
✔ Recursos: las pestañas incluyen plantillas vacías e inactivas y combinan identidad y búsqueda (461.579092ms)
|
||
✔ recurso: ayuda inferior, plantilla con alta rápida y sin asignaciones de recursos (31.277909ms)
|
||
✔ licencia: formulario reutilizable con campos opcionales y ayuda antes de guardar (52.151549ms)
|
||
✔ asistencia: alta de recurso con plantilla específica y características opcionales (17.362316ms)
|
||
✔ alta por pasos: solo muestra la plantilla inicialmente y traduce su navegación (24.271862ms)
|
||
✔ indicador de alta: conserva la plantilla elegida y explica el paso actual en ambos idiomas (22.589651ms)
|
||
✔ recursos: resumen de plantilla con unidades, booleanos traducidos, cero y límite de cuatro (35.994041ms)
|
||
✔ recursos: ficha lateral compacta traducida con cierre, acciones y contenido relacionado (32.164215ms)
|
||
✔ recursos: inventario y panel usan el icono vigente de la plantilla sin cambiar la especificación (28.619992ms)
|
||
✔ dominio: el formulario traduce el contexto pendiente y solo presenta un entorno confirmado (22.602363ms)
|
||
✔ SMB: formulario explica acceso automático o histórico sin selectores incompatibles, es/en (13.390298ms)
|
||
✔ campo declarativo: traduce opciones propias y conserva valores que coinciden con el prototipo (43.687047ms)
|
||
ℹ tests 116
|
||
ℹ suites 0
|
||
ℹ pass 116
|
||
ℹ fail 0
|
||
ℹ cancelled 0
|
||
ℹ skipped 0
|
||
ℹ todo 0
|
||
ℹ duration_ms 7616.147191
|