4db6d28603
* 提示词:完善组件建议,增加容器背景与节点大小一致的实现 * 支持Delete删除节点 ctrl + -缩放 * 步骤结束弹窗提醒   * UI 树快捷删除  * zoom滑动条样式 before:  after:  Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/278 Co-authored-by: 王德宇 <kvtodev@outlook.com> Co-committed-by: 王德宇 <kvtodev@outlook.com>
31 lines
861 B
TypeScript
31 lines
861 B
TypeScript
import { describe, expect, it } from 'vitest';
|
|
|
|
import {
|
|
countUiNodeDescendants,
|
|
findUiNode,
|
|
} from '../src/features/ui-editor/treeUtils';
|
|
import type { Node } from '../src/features/ui-editor/types/Node';
|
|
|
|
function node(id: string, children: Node[] = []): Node {
|
|
return {
|
|
id,
|
|
layout: {} as Node['layout'],
|
|
metadata: {} as Node['metadata'],
|
|
components: [],
|
|
children_display_mode: 'Stack',
|
|
children,
|
|
};
|
|
}
|
|
|
|
describe('ui tree utilities', () => {
|
|
it('finds a nested node and counts all descendants', () => {
|
|
const nested = node('nested', [node('leaf')]);
|
|
const root = node('root', [node('page'), nested]);
|
|
|
|
expect(findUiNode(root, 'nested')).toBe(nested);
|
|
expect(findUiNode(root, 'missing')).toBeNull();
|
|
expect(countUiNodeDescendants(nested)).toBe(1);
|
|
expect(countUiNodeDescendants(root)).toBe(3);
|
|
});
|
|
});
|