23 lines
1.0 KiB
JavaScript
23 lines
1.0 KiB
JavaScript
import { test } from 'node:test';
|
|
import assert from 'node:assert/strict';
|
|
|
|
// D10 smoke fixture: synthetic records only; official documents are still required for release acceptance.
|
|
const cases = [
|
|
['1582991', 'Giresun', '10.09.2026', '10:00', 'mikroskop'],
|
|
['1534665', 'Kayseri', '22.09.2026', '11:00', 'sarf'],
|
|
['1499061', 'Akdeniz', '22.09.2026', '10:30', 'cihaz-servis'],
|
|
['1573235', 'Aksaray', '09.09.2026', '10:00', 'kismi-teklif'],
|
|
['1523851', 'Tepecik', '11.09.2026', '10:00', '100-kalem'],
|
|
];
|
|
|
|
test('D10 five-tender acceptance fixture stays complete and unique', () => {
|
|
assert.equal(new Set(cases.map(([ikn]) => ikn)).size, 5);
|
|
assert.deepEqual(cases.map(([, , , , scenario]) => scenario), ['mikroskop','sarf','cihaz-servis','kismi-teklif','100-kalem']);
|
|
for (const [ikn, city, date, time] of cases) {
|
|
assert.match(ikn, /^\d{7}$/);
|
|
assert.match(city, /^[A-Za-zÇĞİÖŞÜçğıöşü]+$/);
|
|
assert.match(date, /^\d{2}\.\d{2}\.\d{4}$/);
|
|
assert.match(time, /^\d{2}:\d{2}$/);
|
|
}
|
|
});
|