Consolidate branch_coverage.spec.ts into per-file specs: ExecutingCommands tests → executing_commands.spec.ts, TaskQueue tests → task_queue.spec.ts, StateMachineManager tests → state_machine_manager_extra.spec.ts. Deleted branch_coverage.spec.ts. All 799 tests pass. Build status: Success

This commit is contained in:
ATX Bot committed 2026-06-08 15:56:46 +02:00
1 parent 71c6e7e0e3
commit af7a22cb96
4 files changed
+185 -316

No files matched your search

@@ -189,3 +189,42 @@ describe('CWMPTaskQueue', () => {
})
})
})
describe('CWMPTaskQueue — branch coverage', () => {
it('executeTaskCallback catches callback errors', async () => {
const tq = new CWMPTaskQueue()
const deviceId = new DeviceId('X', 'Y', 'Z', 'S')
const throwingCallback = vi.fn().mockRejectedValue(new Error('callback crash'))
const { taskId } = tq.addTask(deviceId, 'get_parameter_values', [], throwingCallback)
const response = await tq.executeTaskCallback(taskId, ResultStatus.Success, {})
expect(response).toBe('')
})
it('clearPendingTasksForDevice removes PENDING tasks and keeps SENT', () => {
const tq = new CWMPTaskQueue()
const deviceId = new DeviceId('X', 'Y', 'Z', 'S')
tq.addCWMPTask(deviceId, 'get_parameter_values', ['a']) // PENDING
const { taskId: sentId } = tq.addTask(deviceId, 'set_parameter_values', {}, async () => '') // SENT
tq.clearPendingTasksForDevice(deviceId)
const tasks = (tq as any).tasks as Map<string, any>
expect(tasks.has(sentId)).toBe(true)
})
it('registerCallback adds callback for existing task', () => {
const tq = new CWMPTaskQueue()
const deviceId = new DeviceId('X', 'Y', 'Z', 'S')
const task = tq.addCWMPTask(deviceId, 'reboot', {})
const cb = vi.fn().mockResolvedValue('')
tq.registerCallback(task.id, cb)
const callbacks = (tq as any).taskCallbacks as Map<string, any>
expect(callbacks.has(task.id)).toBe(true)
})
})