Changeset 971d00b in Klonkt for test/messages-conversations.test.js
- Timestamp:
- 08/06/2026 06:48:32 AM (5 weeks ago)
- Branches:
- main
- Children:
- 99a7b40
- Parents:
- 39111c0
- git-author:
- Robin <roboburr@…> (08/06/2026 06:48:31 AM)
- git-committer:
- Claude (agent) <aiclaude@…> (08/06/2026 06:48:32 AM)
- File:
-
- 1 edited
-
test/messages-conversations.test.js (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
test/messages-conversations.test.js
r39111c0 r971d00b 132 132 assert.equal(a, b, 'dezelfde tegenpartij hoort dezelfde sleutel te geven'); 133 133 }); 134 135 test('een eigen bericht met media rendert als een post, niet als kale tekst', async () => { 136 // note-body (gedeeld met de Krant) leest media_json met een `type`; ap_outbox 137 // bewaart attachments met een `mediaType`. Zonder vertaling viel een foto die 138 // JIJ meestuurde weg. 139 const db = (await import('../src/config/database.js')).default; 140 db.prepare('INSERT INTO users (id, username, email, password_hash, role) VALUES (?,?,?,?,?)') 141 .run('mu', 'mu', 'mu@test', 'x', 'god'); 142 db.prepare('INSERT INTO sites (id, slug, title, owner_id) VALUES (?,?,?,?)').run('ms', 'media', 'Media', 'mu'); 143 db.prepare(`INSERT INTO ap_outbox (id, site_slug, post_id, post_slug, to_handle, content, attachments, created_at) 144 VALUES ('om1','media','pm1','een-post','@anna@a.test','<p>kijk</p>',?,'2026-08-06 09:00:00')`) 145 .run(JSON.stringify([{ url: '/media/foto.png', mediaType: 'image/png', name: 'foto' }])); 146 147 const t = AP.getMessages('media', 50, 0).find((i) => i.type === 'thread'); 148 const sent = t.messages.find((m) => m.type === 'sent'); 149 assert.deepEqual(JSON.parse(sent.media_json), [{ url: '/media/foto.png', type: 'image/png', name: 'foto' }]); 150 }); 151 152 test('een eigen bericht zonder of met kapotte media houdt gewoon zijn tekst', async () => { 153 const db = (await import('../src/config/database.js')).default; 154 db.prepare('INSERT INTO sites (id, slug, title, owner_id) VALUES (?,?,?,?)').run('ms2', 'media2', 'M2', 'mu'); 155 db.prepare(`INSERT INTO ap_outbox (id, site_slug, post_id, post_slug, to_handle, content, attachments, created_at) 156 VALUES ('om2','media2','pm2','p','@anna@a.test','<p>a</p>','geen json','2026-08-06 09:00:00'), 157 ('om3','media2','pm3','p','@bo@b.test','<p>b</p>',NULL,'2026-08-06 09:01:00')`).run(); 158 const threads = AP.getMessages('media2', 50, 0).filter((i) => i.type === 'thread'); 159 const alle = threads.flatMap((t) => t.messages); 160 assert.equal(alle.length, 2, 'geen bericht mag verdwijnen door kapotte media'); 161 for (const m of alle) assert.equal(m.media_json, null); 162 });
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)