fix(tests): stabilize toast manager and continuation tests

This commit is contained in:
YeonGyu-Kim
2026-02-10 17:19:06 +09:00
parent 2bf11a8ed7
commit 7fe1a653c8
5 changed files with 100 additions and 47 deletions
@@ -1,17 +1,20 @@
import { describe, test, expect, beforeEach, mock } from "bun:test"
import { TaskToastManager } from "./manager"
declare const require: (name: string) => any
const { describe, test, expect, beforeEach, afterEach, mock } = require("bun:test")
import type { ConcurrencyManager } from "../background-agent/concurrency"
type TaskToastManagerClass = typeof import("./manager").TaskToastManager
describe("TaskToastManager", () => {
let TaskToastManager: TaskToastManagerClass
let mockClient: {
tui: {
showToast: ReturnType<typeof mock>
}
}
let toastManager: TaskToastManager
let toastManager: InstanceType<TaskToastManagerClass>
let mockConcurrencyManager: ConcurrencyManager
beforeEach(() => {
beforeEach(async () => {
mockClient = {
tui: {
showToast: mock(() => Promise.resolve()),
@@ -20,10 +23,18 @@ describe("TaskToastManager", () => {
mockConcurrencyManager = {
getConcurrencyLimit: mock(() => 5),
} as unknown as ConcurrencyManager
const mod = await import("./manager")
TaskToastManager = mod.TaskToastManager
// eslint-disable-next-line @typescript-eslint/no-explicit-any
toastManager = new TaskToastManager(mockClient as any, mockConcurrencyManager)
})
afterEach(() => {
mock.restore()
})
describe("skills in toast message", () => {
test("should display skills when provided", () => {
// given - a task with skills
@@ -217,3 +217,7 @@ export function initTaskToastManager(
instance = new TaskToastManager(client, concurrencyManager)
return instance
}
export function _resetTaskToastManagerForTesting(): void {
instance = null
}