const test = require('node:test'); const assert = require('node:assert/strict'); const { registerFontSweepTask } = require('../src/web/lib/background-tasks/tasks-scheduled/font-sweep'); test('font sweep registers a generic cleanup recurring task without player metadata', async () => { let registeredTask = null; const calls = []; registerFontSweepTask({ backgroundTaskQueue: { registerRecurringTask(task) { registeredTask = task; } }, mediaDir: '/tmp/media', uploadSyncService: { async pushUploadFileToPlayer(uploadPath, mediaDir) { calls.push(['put', uploadPath, mediaDir]); }, async removeUploadFileFromPlayer(uploadPath, mediaDir) { calls.push(['delete', uploadPath, mediaDir]); } } }); assert.ok(registeredTask); assert.equal(registeredTask.key, 'font-sweep'); assert.equal(registeredTask.title, 'Font sweep'); assert.equal(registeredTask.category, 'cleanup'); assert.equal(registeredTask.intervalMs, 24 * 60 * 60 * 1000); assert.deepEqual(registeredTask.metadata, { mediaDir: '/tmp/media' }); await registeredTask.run(); assert.deepEqual(calls, [ ['put', '/media/fonts/fonts.json', '/tmp/media'], ['put', '/media/fonts/fonts.css', '/tmp/media'] ]); });