import { detectTableVariant } from "../lib/table-content"; const VARIANT_LABEL = { one: "سبز (one)", two: "زرد (two)", } as const; const FIXTURES = [ { label: "جدول مزایا (سبز)", input: { headers: ["
ویژگی
", "توضیح
"], rows: [ ["سرعت
", "اجرای سریع فرآیند
"], ["انعطاف
", "قابلیت سفارشیسازی
"], ], }, expected: "one" as const, }, { label: "جدول معایب و محدودیت (زرد)", input: { headers: ["محدودیت
", "توضیح
"], rows: [ ["هزینه
", "افزایش هزینه نگهداری
"], ["پیچیدگی
", "نیاز به آموزش تیم
"], ], }, expected: "two" as const, }, { label: "جدول مقایسه خنثی (سبز)", input: { headers: ["گزینه
", "کاربرد
"], rows: [ ["Workflow
", "مسیر ثابت
"], ["Agent
", "تصمیمگیری
"], ], }, expected: "one" as const, }, ]; let passed = 0; for (const [index, fixture] of FIXTURES.entries()) { const detected = detectTableVariant(fixture.input); const ok = detected === fixture.expected; if (ok) passed += 1; console.log(`--- ${index + 1}. ${fixture.label}`); console.log(`انتظار: ${VARIANT_LABEL[fixture.expected]}`); console.log(`تشخیص: ${VARIANT_LABEL[detected]} ${ok ? "OK" : "FAIL"}`); console.log(""); } console.log(`نتیجه: ${passed}/${FIXTURES.length} درست`); process.exit(passed === FIXTURES.length ? 0 : 1);