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);