From 18295ea0d760cc13e75b3a8d95d9aaa5d97695b9 Mon Sep 17 00:00:00 2001 From: tangjinzhou <415800467@qq.com> Date: Wed, 25 Aug 2021 21:36:37 +0800 Subject: [PATCH] test: update tree test --- components/tree/__tests__/util.test.js | 74 +++++++++++++------------- 1 file changed, 38 insertions(+), 36 deletions(-) diff --git a/components/tree/__tests__/util.test.js b/components/tree/__tests__/util.test.js index 6d52f397f..e3baca483 100644 --- a/components/tree/__tests__/util.test.js +++ b/components/tree/__tests__/util.test.js @@ -1,43 +1,45 @@ -import { mount } from '@vue/test-utils'; -import Tree from '../index'; -import { calcRangeKeys } from '../util'; - -const TreeNode = Tree.TreeNode; +import { calcRangeKeys } from '../utils/dictUtil'; describe('Tree util', () => { - it('calc range keys', () => { - const wrapper = mount({ - render() { - return ( - - - - - - - - - - - - - - - - - - ); + describe('calcRangeKeys', () => { + const treeData = [ + { key: '0-0', children: [{ key: '0-0-0' }, { key: '0-0-1' }] }, + { key: '0-1', children: [{ key: '0-1-0' }, { key: '0-1-1' }] }, + { + key: '0-2', + children: [ + { key: '0-2-0', children: [{ key: '0-2-0-0' }, { key: '0-2-0-1' }, { key: '0-2-0-2' }] }, + ], }, + ]; + + it('calc range keys', () => { + const keys = calcRangeKeys({ + treeData, + expandedKeys: ['0-0', '0-2', '0-2-0'], + startKey: '0-2-0-1', + endKey: '0-0-0', + }); + const target = ['0-0-0', '0-0-1', '0-1', '0-2', '0-2-0', '0-2-0-0', '0-2-0-1']; + expect(keys.sort()).toEqual(target.sort()); }); - const treeWrapper = wrapper.findComponent({ name: 'ATree' }); - const keys = calcRangeKeys( - treeWrapper.vm.$slots.default(), - ['0-0', '0-2', '0-2-0'], - '0-2-0-1', - '0-0-0', - ); - const target = ['0-0-0', '0-0-1', '0-1', '0-2', '0-2-0', '0-2-0-0', '0-2-0-1']; - expect(keys.sort()).toEqual(target.sort()); + it('return startKey when startKey === endKey', () => { + const keys = calcRangeKeys({ + treeData, + expandedKeys: ['0-0', '0-2', '0-2-0'], + startKey: '0-0-0', + endKey: '0-0-0', + }); + expect(keys).toEqual(['0-0-0']); + }); + + it('return empty array without startKey and endKey', () => { + const keys = calcRangeKeys({ + treeData, + expandedKeys: ['0-0', '0-2', '0-2-0'], + }); + expect(keys).toEqual([]); + }); }); });