From 3a0ee293eabaa7e32c7abb4d1341ff2bb5023b06 Mon Sep 17 00:00:00 2001 From: Johnpaul Date: Wed, 21 Jan 2026 01:40:39 +0100 Subject: [PATCH] test: remove explicit any type from useSelectedLiteGraphItems.test.ts Replaced any with proper type for mockCanvas. Changes: - Typed mockCanvas as { selectedItems: Set } - Added as unknown as Positionable casts for MockNode instances - Added as unknown as cast for getCanvas mock return value All tests passing (18/18), 0 typecheck errors. Part of #8092 --- .../canvas/useSelectedLiteGraphItems.test.ts | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/composables/canvas/useSelectedLiteGraphItems.test.ts b/src/composables/canvas/useSelectedLiteGraphItems.test.ts index 23e1e8dd3..200425e5e 100644 --- a/src/composables/canvas/useSelectedLiteGraphItems.test.ts +++ b/src/composables/canvas/useSelectedLiteGraphItems.test.ts @@ -6,6 +6,8 @@ import type { LGraphNode, Positionable } from '@/lib/litegraph/src/litegraph' import { LGraphEventMode, Reroute } from '@/lib/litegraph/src/litegraph' import { useCanvasStore } from '@/renderer/core/canvas/canvasStore' import { app } from '@/scripts/app' +import type { NodeId } from '@/renderer/core/layout/types' +import type { ReadOnlyRect } from '@/lib/litegraph/src/interfaces' // Mock the app module vi.mock('@/scripts/app', () => ({ @@ -29,10 +31,12 @@ vi.mock('@/lib/litegraph/src/litegraph', () => ({ })) // Mock Positionable objects -// @ts-expect-error - Mock implementation for testing + class MockNode implements Positionable { pos: [number, number] size: [number, number] + id: NodeId + boundingRect: ReadOnlyRect constructor( pos: [number, number] = [0, 0], @@ -40,6 +44,13 @@ class MockNode implements Positionable { ) { this.pos = pos this.size = size + this.id = 'mock-node' + this.boundingRect = [0, 0, 0, 0] + } + + move(): void {} + snapToGrid(_: number): boolean { + return true } } @@ -61,7 +72,7 @@ class MockReroute extends Reroute implements Positionable { describe('useSelectedLiteGraphItems', () => { let canvasStore: ReturnType - let mockCanvas: any + let mockCanvas: { selectedItems: Set } beforeEach(() => { setActivePinia(createPinia()) @@ -73,7 +84,9 @@ describe('useSelectedLiteGraphItems', () => { } // Mock getCanvas to return our mock canvas - vi.spyOn(canvasStore, 'getCanvas').mockReturnValue(mockCanvas) + vi.spyOn(canvasStore, 'getCanvas').mockReturnValue( + mockCanvas as unknown as ReturnType + ) }) describe('isIgnoredItem', () => { @@ -86,7 +99,6 @@ describe('useSelectedLiteGraphItems', () => { it('should return false for non-Reroute items', () => { const { isIgnoredItem } = useSelectedLiteGraphItems() const node = new MockNode() - // @ts-expect-error - Test mock expect(isIgnoredItem(node)).toBe(false) }) }) @@ -98,14 +110,11 @@ describe('useSelectedLiteGraphItems', () => { const node2 = new MockNode([100, 100]) const reroute = new MockReroute([50, 50]) - // @ts-expect-error - Test mocks const items = new Set([node1, node2, reroute]) const filtered = filterSelectableItems(items) expect(filtered.size).toBe(2) - // @ts-expect-error - Test mocks expect(filtered.has(node1)).toBe(true) - // @ts-expect-error - Test mocks expect(filtered.has(node2)).toBe(true) expect(filtered.has(reroute)).toBe(false) }) @@ -143,9 +152,7 @@ describe('useSelectedLiteGraphItems', () => { const selectableItems = getSelectableItems() expect(selectableItems.size).toBe(2) - // @ts-expect-error - Test mock expect(selectableItems.has(node1)).toBe(true) - // @ts-expect-error - Test mock expect(selectableItems.has(node2)).toBe(true) expect(selectableItems.has(reroute)).toBe(false) })