fix tax log
This commit is contained in:
48
frontend/src/lib/stores/__tests__/taskDrawer.test.js
Normal file
48
frontend/src/lib/stores/__tests__/taskDrawer.test.js
Normal file
@@ -0,0 +1,48 @@
|
||||
import { describe, it, expect, beforeEach, vi } from 'vitest';
|
||||
import { get } from 'svelte/store';
|
||||
import { taskDrawerStore, openDrawerForTask, closeDrawer, updateResourceTask } from '../taskDrawer.js';
|
||||
|
||||
describe('taskDrawerStore', () => {
|
||||
beforeEach(() => {
|
||||
taskDrawerStore.set({
|
||||
isOpen: false,
|
||||
activeTaskId: null,
|
||||
resourceTaskMap: {}
|
||||
});
|
||||
});
|
||||
|
||||
it('should open drawer for a specific task', () => {
|
||||
openDrawerForTask('task-123');
|
||||
const state = get(taskDrawerStore);
|
||||
expect(state.isOpen).toBe(true);
|
||||
expect(state.activeTaskId).toBe('task-123');
|
||||
});
|
||||
|
||||
it('should close drawer and clear active task', () => {
|
||||
openDrawerForTask('task-123');
|
||||
closeDrawer();
|
||||
const state = get(taskDrawerStore);
|
||||
expect(state.isOpen).toBe(false);
|
||||
expect(state.activeTaskId).toBe(null);
|
||||
});
|
||||
|
||||
it('should update resource task mapping for running task', () => {
|
||||
updateResourceTask('dash-1', 'task-1', 'RUNNING');
|
||||
const state = get(taskDrawerStore);
|
||||
expect(state.resourceTaskMap['dash-1']).toEqual({ taskId: 'task-1', status: 'RUNNING' });
|
||||
});
|
||||
|
||||
it('should remove mapping when task completes (SUCCESS)', () => {
|
||||
updateResourceTask('dash-1', 'task-1', 'RUNNING');
|
||||
updateResourceTask('dash-1', 'task-1', 'SUCCESS');
|
||||
const state = get(taskDrawerStore);
|
||||
expect(state.resourceTaskMap['dash-1']).toBeUndefined();
|
||||
});
|
||||
|
||||
it('should remove mapping when task fails (ERROR)', () => {
|
||||
updateResourceTask('dash-1', 'task-1', 'RUNNING');
|
||||
updateResourceTask('dash-1', 'task-1', 'ERROR');
|
||||
const state = get(taskDrawerStore);
|
||||
expect(state.resourceTaskMap['dash-1']).toBeUndefined();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user