import assert from 'node:assert/strict'; import fs from 'node:fs/promises'; import os from 'node:os'; import path from 'node:path'; import test from 'node:test'; import { canPreviewAsset, renderAssetPreviewHtml } from './mindspace-asset-preview.mjs'; test('canPreviewAsset covers common workspace file types', () => { assert.equal(canPreviewAsset('text/html'), true); assert.equal(canPreviewAsset('application/pdf'), true); assert.equal( canPreviewAsset('application/vnd.openxmlformats-officedocument.wordprocessingml.document'), true, ); assert.equal(canPreviewAsset('application/vnd.ms-excel'), false); }); test('renderAssetPreviewHtml renders csv as table', () => { const html = renderAssetPreviewHtml({ asset: { displayName: '导出', filename: 'export.csv', mimeType: 'text/csv', }, buffer: Buffer.from('name,value\nfoo,1\nbar,2\n'), downloadUrl: '/api/mindspace/v1/assets/a/download?inline=1', }); assert.match(html, /