-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: Improve code and simplify logic #2651
Changes from all commits
50137b9
299af37
34059c6
a5acc3b
3bfedfb
c727b41
2b94f21
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -54,7 +54,60 @@ describe('Node 方法测试', () => { | |
project = null; | ||
}); | ||
|
||
it('condition group', () => {}); | ||
// Case 1: When children is null | ||
test('initialChildren returns result of initialChildren function when children is null ', () => { | ||
const node = new Node(doc, { componentName: 'Button', props: { a: 1 } }); | ||
const result = node.initialChildren(null); | ||
// 预期结果是一个空数组 | ||
expect(result).toEqual([]); | ||
}); | ||
|
||
// Case 2: When children is undefined | ||
test('initialChildren returns result of initialChildren function when children is null ', () => { | ||
const node = new Node(doc, { componentName: 'Button', props: { a: 1 } }); | ||
const result = node.initialChildren(undefined); | ||
// 预期结果是一个空数组 | ||
expect(result).toEqual([]); | ||
}); | ||
|
||
// Case 3: When children is array | ||
test('initialChildren returns result of initialChildren function when children is null ', () => { | ||
const node = new Node(doc, { componentName: 'Button', props: { a: 1 } }); | ||
const childrenArray = [{ id: 1, name: 'Child 1' }, { id: 2, name: 'Child 2' }]; | ||
const result = node.initialChildren(childrenArray); | ||
// 预期结果是一个数组 | ||
expect(result).toEqual(childrenArray); | ||
}); | ||
|
||
// Case 4: When children is not null and not an array | ||
test('initialChildren returns result of initialChildren function when children is null ', () => { | ||
const node = new Node(doc, { componentName: 'Button', props: { a: 1 } }); | ||
const childObject = { id: 1, name: 'Child 1' }; | ||
const result = node.initialChildren(childObject); | ||
// 预期结果是一个数组 | ||
expect(result).toEqual([childObject]); | ||
}); | ||
|
||
// Case 5: When children 0 | ||
test('initialChildren returns result of initialChildren function when children is null ', () => { | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. // Case 5: When children is 0, 这里和 Case 4 是一样的。Case 6 也是 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Case 4、Case 5、 Case 6 不应该是一样的代码。 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. OK了 |
||
const node = new Node(doc, { componentName: 'Button', props: { a: 1 } }); | ||
const childObject = 0; | ||
const result = node.initialChildren(childObject); | ||
// 预期结果是一个数组 | ||
expect(result).toEqual([0]); | ||
}); | ||
|
||
// Case 6: When children false | ||
test('initialChildren returns result of initialChildren function when children is null ', () => { | ||
const node = new Node(doc, { componentName: 'Button', props: { a: 1 } }); | ||
const childObject = false; | ||
const result = node.initialChildren(childObject); | ||
// 预期结果是一个数组 | ||
expect(result).toEqual([false]); | ||
}); | ||
|
||
|
||
it('condition group', () => { }); | ||
|
||
it('getExtraProp / setExtraProp', () => { | ||
const firstBtn = doc.getNode('node_k1ow3cbn')!; | ||
|
@@ -367,7 +420,7 @@ describe('Node 方法测试', () => { | |
expect(mockFn).not.toHaveBeenCalled(); | ||
}); | ||
|
||
it('addSlot / unlinkSlot / removeSlot', () => {}); | ||
it('addSlot / unlinkSlot / removeSlot', () => { }); | ||
|
||
it('setProps', () => { | ||
const firstBtn = doc.getNode('node_k1ow3cbn')!; | ||
|
@@ -407,7 +460,7 @@ describe('Node 方法测试', () => { | |
designer.createComponentMeta(btnMetadata); | ||
const btn = doc.getNode('node_k1ow3cbn'); | ||
// 从 componentMeta 中获取到 title 值 | ||
expect(btn.title).toEqual({ type: 'i18n', 'zh-CN': '按钮', 'en-US': 'Button' } ); | ||
expect(btn.title).toEqual({ type: 'i18n', 'zh-CN': '按钮', 'en-US': 'Button' }); | ||
// 从 extraProp 中获取值 | ||
btn.setExtraProp('title', 'hello button'); | ||
expect(btn.title).toBe('hello button'); | ||
|
@@ -546,7 +599,7 @@ describe('Node 方法测试', () => { | |
expect(comparePosition(firstBtn, firstCard)).toBe(PositionNO.BeforeOrAfter); | ||
}); | ||
|
||
it('getZLevelTop', () => {}); | ||
it('getZLevelTop', () => { }); | ||
it('propsData', () => { | ||
expect(new Node(doc, { componentName: 'Leaf' }).propsData).toBeNull(); | ||
expect(new Node(doc, { componentName: 'Fragment' }).propsData).toBeNull(); | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
children 为 undefined 的情况和原来输出是否一样。重构建议先补充相关的单元测试用例。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👌
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
想问一下补充相关的单元测试用例,可以在node.test.ts文件中添加测试用例,来测试函数在重构前后输出结果是否一样吗?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
可以的。