18 lines
1.1 KiB
JavaScript
18 lines
1.1 KiB
JavaScript
import {test} from 'node:test';
|
|
import assert from 'node:assert/strict';
|
|
import {ihaleMetni,teklifDenetle,teklifTaslak} from '../server/ai-teklif.mjs';
|
|
test('an explicitly supplied short source is used intact instead of another tender announcement',async()=>{
|
|
const supplied='Geçerlilik 120 gündür. Numune istenir.';
|
|
const result=await ihaleMetni('2026/123',supplied,'Geçerlilik 60 gündür. '.repeat(20));
|
|
assert.deepEqual(result,{text:supplied,kaynak:'yüklenen'});
|
|
});
|
|
test('explicit empty or invalid sources fail without falling back to a different document',async()=>{
|
|
for(const text of ['', ' ', null, {}, 123]) {
|
|
await assert.rejects(ihaleMetni('2026/123',text,'Başka ilan '.repeat(30)),/kaynak metni boş veya geçersiz/);
|
|
}
|
|
});
|
|
test('audit and draft generation do not swallow explicit source validation errors',async()=>{
|
|
await assert.rejects(teklifDenetle({ikn:'2026/123',text:' ',taslak:'Sentetik taslak '.repeat(30)}),/kaynak metni boş veya geçersiz/);
|
|
await assert.rejects(teklifTaslak({ikn:'2026/123',text:' '}),/kaynak metni boş veya geçersiz/);
|
|
});
|