Persist versioned document text reviews against source file hashes

This commit is contained in:
2026-09-06 09:47:12 +03:00
parent f073438922
commit 559a2feeda
7 changed files with 120 additions and 2 deletions
+15
View File
@@ -106,6 +106,21 @@ test('shared item extraction requires an owned tender document and matching tend
const retained=await fetch(base+'/api/me/documents/download?id='+tender.data.id,{headers:{Authorization:'Bearer '+token}});
assert.equal(retained.status,200);
assert.equal(await retained.text(),Buffer.from(body.icerikBase64,'base64').toString());
const reviewUrl='/api/me/documents/text-review?id='+tender.data.id;
assert.equal((await request(reviewUrl,'GET',null,other)).status,404);
const initialReview=await request(reviewUrl);
assert.equal(initialReview.data.review,null);
const correction={id:tender.data.id,fileHash:initialReview.data.fileHash,expectedRevision:0,
correctedText:'Sentetik belge metni tüm sayfalarla karşılaştırıldı. Bu gerçek ihale incelemesi değildir.',
note:'Sayfa 1 üzerinde sentetik test karşılaştırması yapıldı.',allPagesCompared:true};
assert.equal((await request('/api/me/documents/text-review','POST',{...correction,allPagesCompared:false})).status,400);
assert.equal((await request('/api/me/documents/text-review','POST',correction,other)).status,404);
const savedReview=await request('/api/me/documents/text-review','POST',correction);
assert.equal(savedReview.status,200);assert.equal(savedReview.data.review.revision,1);
assert.equal((await request(reviewUrl)).data.review.corrected_text,correction.correctedText);
assert.equal((await request('/api/me/documents/text-review','POST',correction)).status,409);
assert.equal((await request('/api/me/documents/text-review','POST',{...correction,expectedRevision:1,fileHash:'old-hash'})).status,409);
assert.equal((await request('/api/kalem/cikar','POST',{ikn:body.ikn,metin:'test'})).status,403);
await request('/api/me/documents?id='+company.data.id,'DELETE');
await request('/api/me/documents?id='+tender.data.id,'DELETE');