Add unit tests for viewport layout
This commit is contained in:
40
tests/unit/viewport-layout.test.ts
Normal file
40
tests/unit/viewport-layout.test.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
|
||||
import {
|
||||
createDefaultViewportLayoutState,
|
||||
getViewportDisplayModeLabel,
|
||||
getViewportLayoutModeLabel,
|
||||
getViewportPanelLabel
|
||||
} from "../../src/viewport-three/viewport-layout";
|
||||
|
||||
describe("viewport layout", () => {
|
||||
it("defaults to a quad-ready panel arrangement with orthographic authoring panes", () => {
|
||||
const layout = createDefaultViewportLayoutState();
|
||||
|
||||
expect(layout.layoutMode).toBe("single");
|
||||
expect(layout.activePanelId).toBe("topLeft");
|
||||
expect(layout.panels.topLeft).toMatchObject({
|
||||
viewMode: "perspective",
|
||||
displayMode: "normal"
|
||||
});
|
||||
expect(layout.panels.topRight).toMatchObject({
|
||||
viewMode: "top",
|
||||
displayMode: "authoring"
|
||||
});
|
||||
expect(layout.panels.bottomLeft).toMatchObject({
|
||||
viewMode: "front",
|
||||
displayMode: "authoring"
|
||||
});
|
||||
expect(layout.panels.bottomRight).toMatchObject({
|
||||
viewMode: "side",
|
||||
displayMode: "authoring"
|
||||
});
|
||||
});
|
||||
|
||||
it("exposes readable labels for the layout and panel chrome", () => {
|
||||
expect(getViewportLayoutModeLabel("single")).toBe("Single View");
|
||||
expect(getViewportLayoutModeLabel("quad")).toBe("4-Panel");
|
||||
expect(getViewportDisplayModeLabel("authoring")).toBe("Authoring");
|
||||
expect(getViewportPanelLabel("topRight")).toBe("Top Right");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user