panels-origin/api/document_serve_test.ts
Cursor Agent 17d9393b9e
fix(padron): vista previa inline, eliminar y reemplazar documentos
- Sirve documentos con Content-Type real e inline por defecto (query disposition)
- DocumentPreviewDialog reconstruye blob con MIME correcto para PDF/imagen
- RPC y DELETE para eliminar documentos del expediente; botón en UI
- Permiso IAM documents.delete; store archiva todas las versiones previas del tipo
- Limpia FileUpload tras subir; is_current robusto en listas vigente/histórico

Co-authored-by: alberto.martinez <alberto.martinez@mrdev.mx>
2026-09-16 21:11:11 +00:00

13 lines
798 B
TypeScript

import { documentServeHeaders, wantsInlineDocumentDisposition } from "./document_serve.ts";
Deno.test("documentServeHeaders inline uses mime", () => {
const h = documentServeHeaders({ original_name: "a.pdf", mime: "application/pdf" }, { inline: true });
if (h["Content-Type"] !== "application/pdf") throw new Error(h["Content-Type"]);
if (!h["Content-Disposition"].startsWith("inline;")) throw new Error(h["Content-Disposition"]);
});
Deno.test("wantsInlineDocumentDisposition", () => {
if (!wantsInlineDocumentDisposition("http://x/doc")) throw new Error("default inline");
if (wantsInlineDocumentDisposition("http://x/doc?disposition=attachment")) throw new Error("attachment");
if (!wantsInlineDocumentDisposition("http://x/doc?disposition=inline")) throw new Error("inline");
});