Changeset 4d81de5 in Klonkt for test/channel-actor.test.js


Ignore:
Timestamp:
08/08/2026 05:30:29 AM (5 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
cf5073b
Parents:
34e63f0
git-author:
Robin <roboburr@…> (08/08/2026 05:28:46 AM)
git-committer:
Robin <roboburr@…> (08/08/2026 05:30:29 AM)
Message:

De feed vertelt ook WAT voor kanaal dit is

Funkwhale maakte van dev@… een kanaal en las de rss_url netjes uit
de Link-array op onze actor -- maar liet content_category leeg. Dat is de
aanwijzing: hij bouwt zo'n kanaal langs de RSS-kant op, en leest de categorie
daar. Niet uit category op de AP-actor.

Dus itunes-velden erbij op kanaalniveau: author, summary, image (de site-avatar,
absoluut gemaakt) en category. En per track de eigen artiest en hoes, naast de
duur die er al stond.

EN IK HEB MIJN EIGEN CATEGORIE-REGEL AANGESCHERPT. Die keek naar ELKE track,
ook een gated -- zodat een site met uitsluitend afgeschermde muziek toch "hier
is muziek" naar de hele fediverse riep. Dat botst met de regel die we overal
aanhouden: een gesloten track is AFWEZIG, niet stilletjes aanwezig. Nu tellen
alleen opengezette tracks, en zeggen de feed en de actor hetzelfde. Er staat
een test op die precies dat vastlegt: een gated track maakt er nog geen
muziekkanaal van.

Dat maakt de regel strenger dan hij vanmiddag was. Bewust: naar buiten toe is
een kanaal zonder publieke muziek geen muziekkanaal.

4 tests.

Co-Authored-By: Claude Opus 5 <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • test/channel-actor.test.js

    r34e63f0 r4d81de5  
    3636});
    3737
    38 test('met muziek is de category "music"', () => {
     38test('een GATED track maakt er nog geen muziekkanaal van', () => {
     39  // Aangescherpt: eerst telde elke track mee, ook een afgeschermde -- dan riep
     40  // een site met uitsluitend gated muziek toch "hier is muziek" naar buiten.
     41  // Afwezig is afwezig, ook in een categorie.
     42  db.prepare('INSERT INTO media (id, site_id, filename, storage_path, mime_type, size) VALUES (?,?,?,?,?,1)')
     43    .run('m0', 's1', 'dicht.mp3', 'audio/dicht.mp3', 'audio/mpeg');
     44  db.prepare('INSERT INTO audio_tracks (id, site_id, title, media_id, fedi_open) VALUES (?,?,?,?,0)')
     45    .run('t0', 's1', 'Achter de poort', 'm0');
     46  assert.equal(AP.buildActor(BASE, site()).category, undefined);
     47});
     48
     49test('met OPENGEZETTE muziek is de category "music"', () => {
    3950  db.prepare('INSERT INTO media (id, site_id, filename, storage_path, mime_type, size) VALUES (?,?,?,?,?,1)')
    4051    .run('m1', 's1', 'a.mp3', 'audio/a.mp3', 'audio/mpeg');
    41   db.prepare('INSERT INTO audio_tracks (id, site_id, title, media_id) VALUES (?,?,?,?)')
     52  db.prepare('INSERT INTO audio_tracks (id, site_id, title, media_id, fedi_open) VALUES (?,?,?,?,1)')
    4253    .run('t1', 's1', 'Een nummer', 'm1');
    4354  assert.equal(AP.buildActor(BASE, site()).category, 'music');
Note: See TracChangeset for help on using the changeset viewer.