You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Listado de todas las features actuales con una prueba para cada una, a pasar
antes de publicar una versión. Cada feature indica:
✅ Auto: cubierta por una prueba automatizada (nombre del test).
🔍 Manual: pasos a verificar a mano (UI nativa, integración con el SO o
fidelidad visual que no se automatiza).
Cómo correr las pruebas automatizadas
npm run fixtures # genera el corpus sintético (tests/fixtures/)
npm test# unit (Vitest) — 44 pruebas
npm run build
npx playwright test# E2E (Playwright) — 25 pruebas
npm run lint && npm run typecheck
Para las pruebas manuales: npm run dev y abrir los fixtures de
tests/fixtures/ indicados en cada caso.
1. Apertura y formatos de entrada
Feature
Prueba
Abrir .msg (HTML/RTF/texto) por argv
✅ Auto · E2E apertura por argv renderiza metadatos, cuerpo y adjuntos
Abrir .eml (RFC 5322)
✅ Auto · E2E abre archivos .eml (RFC 5322); unit eml-adapter
Abrir .emlx (Apple Mail)
✅ Auto · unit abre archivos .emlx de Apple Mail
Detección por contenido (extensión renombrada)
✅ Auto · unit un .msg renombrado a .eml se detecta por contenido
Des-encapsular HTML desde RTF comprimido
✅ Auto · unit des-encapsula HTML desde RTF comprimido
RTF puro → conversión aproximada
✅ Auto · unit convierte RTF puro de forma aproximada
Texto plano envuelto en <pre>
✅ Auto · unit cae a texto plano envuelto en <pre>
Cadenas ANSI (001E) con codepage no latino (sin mojibake)
✅ Auto · unit decodifica cadenas ANSI (001E) según PR_MESSAGE_CODEPAGE
Cuerpo HTML binario decodificado por PR_INTERNET_CPID
✅ Auto · cubierto vía decodeHtmlBytes (unit de adapter)
Mensajes anidados (.msg/.eml) en ventana propia
🔍 Manual · abrir un correo con un .msg adjunto → clic en ↗ del chip → se abre ventana nueva
Abrir con doble clic / "Abrir con" del SO
🔍 Manual · asociar tipos y abrir un .msg desde el gestor de archivos
Arrastrar archivo a la ventana (drag-in)
🔍 Manual · arrastrar un .msg sobre la zona de bienvenida y sobre un correo abierto
2. Visualización del cuerpo
Feature
Prueba
Render del cuerpo en iframe sandbox
✅ Auto · E2E apertura por argv…
Imágenes inline cid: → data:
✅ Auto · E2E imagen inline cid: renderizada como data: URI; unit msg/eml
Zoom del cuerpo (solo el cuerpo, no la ventana)
✅ Auto · E2E zoom y modo oscuro afectan solo al cuerpo…
Modo oscuro del cuerpo (accesibilidad WCAG 1.4.3)
✅ Auto · E2E zoom y modo oscuro… + 🔍 Manual · abrir un correo con texto de colores y verificar legibilidad
Fidelidad visual del render (correos reales)
🔍 Manual · abrir correos reales y comparar con Outlook
3. Cabecera, metadatos y adjuntos
Feature
Prueba
Metadatos (asunto, de, para, cc, fechas)
✅ Auto · unit parsea metadatos… (msg y eml)
Limpieza del DN X.500 de Exchange → SMTP
✅ Auto · unit destinatarios de Exchange… y limpia el DN X.500…
Copiar dirección con un clic / copiar todas
🔍 Manual · clic en una dirección y en el botón ⧉ → portapapeles
Copiar metadatos (texto / JSON)
🔍 Manual · botones de la barra → pegar y verificar
Chips de adjuntos (reales vs inline)
✅ Auto · E2E apertura por argv…
Guardar un adjunto (integridad binaria)
✅ Auto · E2E guardar adjunto conserva integridad binaria
Guardar todos los adjuntos
🔍 Manual · "Guardar todos" → elegir carpeta
Abrir adjunto (temporal)
🔍 Manual · clic en chip → Abrir
Arrastrar adjunto hacia fuera (drag-out)
✅ Auto · E2E arrastrar un adjunto fuera inicia el drag nativo… + 🔍 Manual · arrastrar a Dolphin/Finder y a un correo nuevo