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:
1 parent
2e6dd81f09
commit
a6c1b05a76
3 files changed
+103
-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)
|
||||
})
|
||||
})
|
||||
|
||||
Reference in new issue
Block a user