Give topic and institution subscription sets independent identities

This commit is contained in:
2026-09-06 12:56:37 +03:00
parent 0a0c01baf1
commit f50468e768
5 changed files with 105 additions and 14 deletions
+10
View File
@@ -16,3 +16,13 @@ test('subscription writes validate criteria and deletion is account scoped in th
assert.equal(statSync(join(dir,'notify.sqlite')).mode&0o777,0o600);
assert.equal(subscriptions.remove(rows[0].id,'owner'),true);assert.deepEqual(subscriptions.list('owner'),[]);
});
test('distinct topic and institution sets coexist while equivalent subscriptions retain delivery history',()=>{
const one=subscriptions.subscribe('sets',{konular:['Laboratuvar','TEST'],kurumlar:['Hastane A']})[0];
subscriptions.markSent(one.id,['tender-1']);
subscriptions.subscribe('sets',{konular:['test',' laboratuvar '],kurumlar:['hastane a','Hastane A']});
let rows=subscriptions.list('sets');assert.equal(rows.length,1);assert.equal(rows[0].id,one.id);assert.deepEqual(rows[0].sonGorulenler,['tender-1']);
subscriptions.subscribe('sets',{konular:['Cihaz'],kurumlar:['Hastane A']});
subscriptions.subscribe('sets',{konular:['Laboratuvar','TEST'],kurumlar:['Hastane B']});
rows=subscriptions.list('sets');assert.equal(rows.length,3);assert.equal(rows.find(row=>row.id===one.id).sonGorulenler[0],'tender-1');
});