diff --git a/tests/e2e/whitebox-component-selection.e2e.ts b/tests/e2e/whitebox-component-selection.e2e.ts index a727ddb9..87f135d5 100644 --- a/tests/e2e/whitebox-component-selection.e2e.ts +++ b/tests/e2e/whitebox-component-selection.e2e.ts @@ -50,8 +50,6 @@ test("whitebox component selection modes keep object picking intentional across } }); - await page.getByTestId("viewport-layout-quad").click(); - await page.evaluate(({ target }) => { const store = (window as Window & { __webeditor3dEditorStore?: { @@ -64,24 +62,13 @@ test("whitebox component selection modes keep object picking intentional across orthographicZoom: number; }; }; - topRight: { - cameraState: { - target: { x: number; y: number; z: number }; - perspectiveOrbit: { radius: number; theta: number; phi: number }; - orthographicZoom: number; - }; - }; }; }; - setViewportPanelCameraState( - panelId: "topLeft" | "topRight", - cameraState: { - target: { x: number; y: number; z: number }; - perspectiveOrbit: { radius: number; theta: number; phi: number }; - orthographicZoom: number; - } - ): void; - setViewportPanelViewMode(panelId: "topRight", viewMode: "top"): void; + setViewportPanelCameraState(panelId: "topLeft", cameraState: { + target: { x: number; y: number; z: number }; + perspectiveOrbit: { radius: number; theta: number; phi: number }; + orthographicZoom: number; + }): void; }; }).__webeditor3dEditorStore; @@ -90,7 +77,6 @@ test("whitebox component selection modes keep object picking intentional across } const topLeftCameraState = store.getState().viewportPanels.topLeft.cameraState; - const topRightCameraState = store.getState().viewportPanels.topRight.cameraState; store.setViewportPanelCameraState("topLeft", { ...topLeftCameraState, @@ -101,12 +87,6 @@ test("whitebox component selection modes keep object picking intentional across phi: 1.08 } }); - store.setViewportPanelViewMode("topRight", "top"); - store.setViewportPanelCameraState("topRight", { - ...topRightCameraState, - target, - orthographicZoom: 8 - }); }, { target: brush.center }); await expect(page.getByTestId("viewport-selection-mode-topLeft")).toHaveText("Object"); @@ -118,6 +98,44 @@ test("whitebox component selection modes keep object picking intentional across ids: [brush.id] }); + await page.getByTestId("viewport-layout-quad").click(); + + await page.evaluate(({ target }) => { + const store = (window as Window & { + __webeditor3dEditorStore?: { + getState(): { + viewportPanels: { + topRight: { + cameraState: { + target: { x: number; y: number; z: number }; + perspectiveOrbit: { radius: number; theta: number; phi: number }; + orthographicZoom: number; + }; + }; + }; + }; + setViewportPanelViewMode(panelId: "topRight", viewMode: "top"): void; + setViewportPanelCameraState(panelId: "topRight", cameraState: { + target: { x: number; y: number; z: number }; + perspectiveOrbit: { radius: number; theta: number; phi: number }; + orthographicZoom: number; + }): void; + }; + }).__webeditor3dEditorStore; + + if (store === undefined) { + throw new Error("Editor store debug hook is unavailable."); + } + + const topRightCameraState = store.getState().viewportPanels.topRight.cameraState; + store.setViewportPanelViewMode("topRight", "top"); + store.setViewportPanelCameraState("topRight", { + ...topRightCameraState, + target, + orthographicZoom: 8 + }); + }, { target: brush.center }); + await page.getByTestId("whitebox-selection-mode-face").click(); await expect(page.getByTestId("viewport-selection-mode-topRight")).toHaveText("Face"); await clickViewportAtRatio(page, "topRight", 0.5, 0.5);