import { expect, test } from "@playwright/test"; import { prepareApp } from "./fixtures"; test.beforeEach(async ({ page }) => { await prepareApp(page); }); test("未知图形元件使用带端口和名称的默认节点,并将动作结果写入控制台", async ({ page, }) => { await page.goto("/"); const paletteItem = page.getByRole("button", { name: /通用测试元件/ }); await expect(paletteItem).toBeVisible(); await paletteItem.dragTo(page.locator(".flow-canvas .react-flow__pane")); const node = page.locator('.flow-canvas .react-flow__node[data-id="generic_sensor_1"]'); await expect(node).toBeVisible(); await expect(node.locator(".sim-node")).toHaveClass(/generic-component/); await expect(node.locator(".node-symbol-anchor")).toHaveCount(0); await expect(node.locator(".node-label")).toHaveText("generic_sensor_1"); await expect(node.locator(".port-handle")).toHaveCount(2); const consolePanel = page.getByRole("complementary", { name: "仿真控制台", exact: true, }); await expect(consolePanel).not.toHaveClass(/has-unread/); await expect(consolePanel.locator(".simulation-console-unread")).toHaveCount(0); await expect(consolePanel).not.toContainText("已添加组件"); await page.getByRole("button", { name: "生成系统 XML" }).click(); await expect(consolePanel).toContainText("XML 已生成"); const xmlBlock = consolePanel.getByLabel("生成的系统 XML"); await expect(xmlBlock).toBeVisible(); await expect(xmlBlock).toContainText(''); await expect(xmlBlock).toContainText('