From dbe9adf04edcd0b4d539c434bb4ccb2d287844a2 Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Mon, 14 Sep 2026 21:21:20 +0800 Subject: [PATCH] chore: remove obsolete test file (#1899 #1900) --- .../editing-planner/hooks/useUndoRedo.test.ts | 157 ------------------ 1 file changed, 157 deletions(-) delete mode 100644 apps/web/src/test/pages/editing-planner/hooks/useUndoRedo.test.ts diff --git a/apps/web/src/test/pages/editing-planner/hooks/useUndoRedo.test.ts b/apps/web/src/test/pages/editing-planner/hooks/useUndoRedo.test.ts deleted file mode 100644 index 9bc0496e2..000000000 --- a/apps/web/src/test/pages/editing-planner/hooks/useUndoRedo.test.ts +++ /dev/null @@ -1,157 +0,0 @@ -/** - * useUndoRedo hook 测试 - */ -import { describe, it, expect, beforeEach } from "vitest" -import { renderHook, act } from "@testing-library/react" -import { useUndoRedo } from "@/pages/editing-planner/hooks/useUndoRedo" - -describe("useUndoRedo", () => { - it("应该使用初始状态初始化", () => { - const { result } = renderHook(() => useUndoRedo(0)) - expect(result.current.state).toBe(0) - expect(result.current.canUndo).toBe(false) - expect(result.current.canRedo).toBe(false) - }) - - it("set 应该更新状态并启用撤销", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => { - result.current.set(1) - }) - - expect(result.current.state).toBe(1) - expect(result.current.canUndo).toBe(true) - expect(result.current.canRedo).toBe(false) - }) - - it("set 支持函数式更新", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => { - result.current.set((prev) => prev + 1) - }) - - expect(result.current.state).toBe(1) - }) - - it("undo 应该回退到上一个状态", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => { - result.current.set(1) - }) - act(() => { - result.current.set(2) - }) - - expect(result.current.state).toBe(2) - - act(() => { - result.current.undo() - }) - - expect(result.current.state).toBe(1) - expect(result.current.canUndo).toBe(true) - expect(result.current.canRedo).toBe(true) - }) - - it("redo 应该重做已撤销的操作", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => result.current.set(1)) - act(() => result.current.set(2)) - act(() => result.current.undo()) - - expect(result.current.state).toBe(1) - - act(() => { - result.current.redo() - }) - - expect(result.current.state).toBe(2) - expect(result.current.canUndo).toBe(true) - }) - - it("没有历史时 undo 不改变状态", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => { - result.current.undo() - }) - - expect(result.current.state).toBe(0) - expect(result.current.canUndo).toBe(false) - }) - - it("没有未来时 redo 不改变状态", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => result.current.set(1)) - - act(() => { - result.current.redo() - }) - - expect(result.current.state).toBe(1) - expect(result.current.canRedo).toBe(false) - }) - - it("新操作应该清空 redo 历史", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => result.current.set(1)) - act(() => result.current.set(2)) - act(() => result.current.undo()) // state = 1, canRedo = true - expect(result.current.canRedo).toBe(true) - - act(() => result.current.set(3)) // 新操作清空 redo - - expect(result.current.state).toBe(3) - expect(result.current.canRedo).toBe(false) - }) - - it("reset 应该重置状态和历史", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => result.current.set(1)) - act(() => result.current.set(2)) - - act(() => { - result.current.reset(100) - }) - - expect(result.current.state).toBe(100) - expect(result.current.canUndo).toBe(false) - expect(result.current.canRedo).toBe(false) - }) - - it("多次 undo 后可以一直 undo 到初始状态", () => { - const { result } = renderHook(() => useUndoRedo(0)) - - act(() => result.current.set(1)) - act(() => result.current.set(2)) - act(() => result.current.set(3)) - - act(() => result.current.undo()) - expect(result.current.state).toBe(2) - - act(() => result.current.undo()) - expect(result.current.state).toBe(1) - - act(() => result.current.undo()) - expect(result.current.state).toBe(0) - expect(result.current.canUndo).toBe(false) - }) - - it("支持对象类型状态", () => { - const { result } = renderHook(() => useUndoRedo({ count: 0, name: "test" })) - - act(() => result.current.set({ count: 1, name: "test" })) - expect(result.current.state.count).toBe(1) - - act(() => result.current.undo()) - expect(result.current.state.count).toBe(0) - expect(result.current.state.name).toBe("test") - }) -})