优化组件选择交互与视图适配时机
This commit is contained in:
1 parent
11093613c5
commit
cf249d6c0d
7 files changed
+473
-18
No files matched your search
@@ -6,6 +6,31 @@ import {
|
||||
wideProject,
|
||||
} from "./fixtures";
|
||||
|
||||
test("拖入组件不自动适配画布,手动适配按钮仍然生效", async ({ page }) => {
|
||||
await prepareApp(page);
|
||||
await page.goto("/");
|
||||
|
||||
const viewport = page.locator(".flow-canvas .react-flow__viewport");
|
||||
const zoomOut = page.locator(".flow-canvas .react-flow__controls-zoomout");
|
||||
await zoomOut.click();
|
||||
await zoomOut.click();
|
||||
await page.waitForTimeout(250);
|
||||
const viewportBeforeDrop = await viewport.getAttribute("style");
|
||||
expect(viewportBeforeDrop).toBeTruthy();
|
||||
|
||||
await page
|
||||
.getByRole("button", { name: "通用测试元件", exact: true })
|
||||
.dragTo(page.locator(".flow-canvas .react-flow__pane"));
|
||||
await expect(page.locator(".flow-canvas .react-flow__node")).toHaveCount(1);
|
||||
await page.waitForTimeout(250);
|
||||
await expect(viewport).toHaveAttribute("style", viewportBeforeDrop!);
|
||||
|
||||
await page.getByRole("button", { name: "适配视图", exact: true }).click();
|
||||
await expect
|
||||
.poll(() => viewport.getAttribute("style"))
|
||||
.not.toBe(viewportBeforeDrop);
|
||||
});
|
||||
|
||||
test("加载本地工程后自动适配建模画布", async ({ page }) => {
|
||||
await prepareApp(page);
|
||||
await page.addInitScript((project) => {
|
||||
@@ -28,6 +53,19 @@ test("加载本地工程后自动适配建模画布", async ({ page }) => {
|
||||
await expect(consolePanel).toContainText("工程已加载");
|
||||
});
|
||||
|
||||
test("导入工程 JSON 后自动适配建模画布", async ({ page }) => {
|
||||
await prepareApp(page);
|
||||
await page.goto("/");
|
||||
|
||||
await page.locator('input[type="file"]').setInputFiles({
|
||||
name: "wide-project.json",
|
||||
mimeType: "application/json",
|
||||
buffer: Buffer.from(JSON.stringify(wideProject)),
|
||||
});
|
||||
|
||||
await expectAllNodesInsideCanvas(page, ".flow-canvas");
|
||||
});
|
||||
|
||||
test("恢复自动保存工程后自动适配建模画布", async ({ page }) => {
|
||||
await prepareApp(page);
|
||||
await page.addInitScript((project) => {
|
||||
@@ -80,6 +118,7 @@ test("切换到结果页时自动适配只读系统图", async ({ page }) => {
|
||||
).toHaveCount(0);
|
||||
|
||||
await page.getByRole("tab", { name: "建模" }).click();
|
||||
await expectAllNodesInsideCanvas(page, ".flow-canvas");
|
||||
await expect(freeModelingHandle).toHaveAttribute(
|
||||
"data-connection-state",
|
||||
"idle",
|
||||
|
||||
Reference in new issue
Block a user