UNPKG

wsemi

Version:

A support package for web developer.

177 lines (163 loc) 44.2 kB
import assert from 'assert' import treeToFilepath from '../src/treeToFilepath.mjs' describe(`treeToFilepath`, function() { let rti1 = [{ 'ns': 1, 'ts': ['root'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root', 'parentId': '', 'text': 'root', 'children': [{ 'ns': 2, 'ts': ['root', 'aaa'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa', 'parentId': 'root', 'text': 'aaa', 'children': [{ 'ns': 3, 'ts': ['root', 'aaa', 'bbb'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb', 'parentId': 'root❯aaa', 'text': 'bbb', 'children': [{ 'ns': 4, 'ts': ['root', 'aaa', 'bbb', 'z1.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }, { 'id': 'root❯aaa❯bbb❯z1.txt', 'name': 'z1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb❯z1.txt', 'parentId': 'root❯aaa❯bbb', 'text': 'z1.txt', 'data': { 'type': 'file', 'path': '/aaa/bbb/z1.txt' } }], 'data': null }], 'data': { 'type': 'folder', 'path': '/aaa' } }], 'data': null }] // let rfps1 = treeToFilepath(rti1, {}) let rfps1 = [ { type: 'folder', path: '/aaa' }, { type: 'folder', path: '/aaa/bbb' }, { type: 'file', path: '/aaa/bbb/z1.txt' } ] it(`should return ${JSON.stringify(rfps1)} when input ${JSON.stringify(rti1)}`, function() { let r = treeToFilepath(rti1) let rr = rfps1 assert.strict.deepStrictEqual(r, rr) }) let rti2 = [{ 'ns': 1, 'ts': ['root'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root', 'parentId': '', 'text': 'root', 'children': [{ 'ns': 2, 'ts': ['root', 'aaa'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaa', 'parentId': 'root', 'text': 'aaa', 'children': [{ 'ns': 3, 'ts': ['root', 'aaa', 'aaabbb'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb', 'parentId': 'root>aaa', 'text': 'aaabbb', 'children': [{ 'ns': 4, 'ts': ['root', 'aaa', 'aaabbb', 'abc'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc', 'parentId': 'root>aaa>aaabbb', 'text': 'abc', 'children': [{ 'ns': 5, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcd'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcd', 'name': 'abcd' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcd', 'parentId': 'root>aaa>aaabbb>abc', 'text': 'abcd', 'children': [{ 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcd', 'abcde.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcd', 'name': 'abcd' }, { 'id': 'root>aaa>aaabbb>abc>abcd>abcde.txt', 'name': 'abcde.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcd>abcde.txt', 'parentId': 'root>aaa>aaabbb>abc>abcd', 'text': 'abcde.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcd/abcde.txt' } }], 'data': null }, { 'ns': 5, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde', 'parentId': 'root>aaa>aaabbb>abc', 'text': 'abcde', 'children': [{ 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdef1.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdef1.txt', 'name': 'abcdef1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdef1.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdef1.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdef1.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdef2.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdef2.txt', 'name': 'abcdef2.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdef2.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdef2.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdef2.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt', 'name': 'abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg01.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg01.txt', 'name': 'abcdefg01.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg01.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg01.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg01.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg02.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg02.txt', 'name': 'abcdefg02.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg02.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg02.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg02.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg03.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg03.txt', 'name': 'abcdefg03.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg03.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg03.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg03.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg04.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg04.txt', 'name': 'abcdefg04.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg04.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg04.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg04.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg05.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg05.txt', 'name': 'abcdefg05.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg05.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg05.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg05.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg06.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg06.txt', 'name': 'abcdefg06.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg06.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg06.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg06.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg07.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg07.txt', 'name': 'abcdefg07.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg07.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg07.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg07.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg08.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg08.txt', 'name': 'abcdefg08.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg08.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg08.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg08.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg09.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg09.txt', 'name': 'abcdefg09.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg09.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg09.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg09.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg10.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg10.txt', 'name': 'abcdefg10.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg10.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg10.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg10.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg11.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg11.txt', 'name': 'abcdefg11.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg11.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg11.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg11.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg12.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg12.txt', 'name': 'abcdefg12.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg12.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg12.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg12.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg13.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg13.txt', 'name': 'abcdefg13.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg13.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg13.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg13.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg14.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg14.txt', 'name': 'abcdefg14.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg14.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg14.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg14.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg15.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg15.txt', 'name': 'abcdefg15.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg15.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg15.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg15.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg16.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg16.txt', 'name': 'abcdefg16.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg16.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg16.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg16.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg17.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg17.txt', 'name': 'abcdefg17.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg17.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg17.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg17.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg18.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg18.txt', 'name': 'abcdefg18.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg18.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg18.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg18.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg19.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg19.txt', 'name': 'abcdefg19.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg19.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg19.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg19.txt' } }, { 'ns': 6, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcde', 'abcdefg20.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcde', 'name': 'abcde' }, { 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg20.txt', 'name': 'abcdefg20.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcde>abcdefg20.txt', 'parentId': 'root>aaa>aaabbb>abc>abcde', 'text': 'abcdefg20.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcde/abcdefg20.txt' } }], 'data': null }, { 'ns': 5, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcd1.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcd1.txt', 'name': 'abcd1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcd1.txt', 'parentId': 'root>aaa>aaabbb>abc', 'text': 'abcd1.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcd1.txt' } }, { 'ns': 5, 'ts': ['root', 'aaa', 'aaabbb', 'abc', 'abcd2.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>aaa>aaabbb>abc>abcd2.txt', 'name': 'abcd2.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>abc>abcd2.txt', 'parentId': 'root>aaa>aaabbb>abc', 'text': 'abcd2.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/abc/abcd2.txt' } }], 'data': null }, { 'ns': 4, 'ts': ['root', 'aaa', 'aaabbb', 'aaabbbccc.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>aaa>aaabbb>aaabbbccc.txt', 'name': 'aaabbbccc.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb>aaabbbccc.txt', 'parentId': 'root>aaa>aaabbb', 'text': 'aaabbbccc.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb/aaabbbccc.txt' } }], 'data': { 'type': 'folder', 'path': '/aaa/aaabbb' } }, { 'ns': 3, 'ts': ['root', 'aaa', 'aaabbb.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa', 'name': 'aaa' }, { 'id': 'root>aaa>aaabbb.txt', 'name': 'aaabbb.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa>aaabbb.txt', 'parentId': 'root>aaa', 'text': 'aaabbb.txt', 'data': { 'type': 'file', 'path': '/aaa/aaabbb.txt' } }], 'data': { 'type': 'folder', 'path': '/aaa' } }, { 'ns': 2, 'ts': ['root', 'aaaa'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaaa', 'name': 'aaaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaaa', 'parentId': 'root', 'text': 'aaaa', 'children': [{ 'ns': 3, 'ts': ['root', 'aaaa', 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaaa', 'name': 'aaaa' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'name': 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'parentId': 'root>aaaa', 'text': 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'children': [{ 'ns': 4, 'ts': ['root', 'aaaa', 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'ggg'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaaa', 'name': 'aaaa' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'name': 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>ggg', 'name': 'ggg' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>ggg', 'parentId': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'text': 'ggg', 'children': [{ 'ns': 5, 'ts': ['root', 'aaaa', 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'ggg', 'hhh.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaaa', 'name': 'aaaa' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'name': 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>ggg', 'name': 'ggg' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>ggg>hhh.txt', 'name': 'hhh.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>ggg>hhh.txt', 'parentId': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>ggg', 'text': 'hhh.txt', 'data': { 'type': 'file', 'path': '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff/ggg/hhh.txt' } }], 'data': null }, { 'ns': 4, 'ts': ['root', 'aaaa', 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'gfedcba.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaaa', 'name': 'aaaa' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'name': 'bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff' }, { 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>gfedcba.txt', 'name': 'gfedcba.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff>gfedcba.txt', 'parentId': 'root>aaaa>bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff', 'text': 'gfedcba.txt', 'data': { 'type': 'file', 'path': '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff/gfedcba.txt' } }], 'data': { 'type': 'folder', 'path': '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff' } }], 'data': null }, { 'ns': 2, 'ts': ['root', 'bbb'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>bbb', 'name': 'bbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>bbb', 'parentId': 'root', 'text': 'bbb', 'children': [], 'data': { 'type': 'folder', 'path': '/bbb' } }, { 'ns': 2, 'ts': ['root', 'c:'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>c:', 'name': 'c:' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>c:', 'parentId': 'root', 'text': 'c:', 'children': [{ 'ns': 3, 'ts': ['root', 'c:', 'hhh'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>c:', 'name': 'c:' }, { 'id': 'root>c:>hhh', 'name': 'hhh' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>c:>hhh', 'parentId': 'root>c:', 'text': 'hhh', 'children': [], 'data': { 'type': 'folder', 'path': 'c:\\\\hhh' } }], 'data': null }, { 'ns': 2, 'ts': ['root', 'ccc'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>ccc', 'name': 'ccc' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>ccc', 'parentId': 'root', 'text': 'ccc', 'children': [{ 'ns': 3, 'ts': ['root', 'ccc', 'cccddd'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>ccc', 'name': 'ccc' }, { 'id': 'root>ccc>cccddd', 'name': 'cccddd' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>ccc>cccddd', 'parentId': 'root>ccc', 'text': 'cccddd', 'children': [{ 'ns': 4, 'ts': ['root', 'ccc', 'cccddd', 'cccdddeee.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>ccc', 'name': 'ccc' }, { 'id': 'root>ccc>cccddd', 'name': 'cccddd' }, { 'id': 'root>ccc>cccddd>cccdddeee.txt', 'name': 'cccdddeee.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>ccc>cccddd>cccdddeee.txt', 'parentId': 'root>ccc>cccddd', 'text': 'cccdddeee.txt', 'data': { 'type': 'file', 'path': '/ccc/cccddd/cccdddeee.txt' } }], 'data': null }], 'data': null }, { 'ns': 2, 'ts': ['root', 'd:'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>d:', 'name': 'd:' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>d:', 'parentId': 'root', 'text': 'd:', 'children': [{ 'ns': 3, 'ts': ['root', 'd:', '中文路徑1'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>d:', 'name': 'd:' }, { 'id': 'root>d:>中文路徑1', 'name': '中文路徑1' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>d:>中文路徑1', 'parentId': 'root>d:', 'text': '中文路徑1', 'children': [], 'data': { 'type': 'folder', 'path': 'd:\\\\中文路徑1' } }], 'data': null }, { 'ns': 2, 'ts': ['root', 'eee'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>eee', 'name': 'eee' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>eee', 'parentId': 'root', 'text': 'eee', 'children': [{ 'ns': 3, 'ts': ['root', 'eee', 'eeefff1'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>eee', 'name': 'eee' }, { 'id': 'root>eee>eeefff1', 'name': 'eeefff1' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>eee>eeefff1', 'parentId': 'root>eee', 'text': 'eeefff1', 'children': [], 'data': { 'type': 'folder', 'path': '/eee/eeefff1' } }, { 'ns': 3, 'ts': ['root', 'eee', 'eeefff2'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>eee', 'name': 'eee' }, { 'id': 'root>eee>eeefff2', 'name': 'eeefff2' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>eee>eeefff2', 'parentId': 'root>eee', 'text': 'eeefff2', 'children': [], 'data': { 'type': 'folder', 'path': '/eee/eeefff2' } }], 'data': { 'type': 'folder', 'path': '/eee' } }, { 'ns': 2, 'ts': ['root', 'ggg'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>ggg', 'name': 'ggg' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>ggg', 'parentId': 'root', 'text': 'ggg', 'children': [], 'data': { 'type': 'folder', 'path': '/ggg/' } }, { 'ns': 2, 'ts': ['root', '中文路徑2'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>中文路徑2', 'name': '中文路徑2' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>中文路徑2', 'parentId': 'root', 'text': '中文路徑2', 'children': [{ 'ns': 3, 'ts': ['root', '中文路徑2', 'aaa'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>中文路徑2', 'name': '中文路徑2' }, { 'id': 'root>中文路徑2>aaa', 'name': 'aaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>中文路徑2>aaa', 'parentId': 'root>中文路徑2', 'text': 'aaa', 'children': [{ 'ns': 4, 'ts': ['root', '中文路徑2', 'aaa', 'aaabbb'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>中文路徑2', 'name': '中文路徑2' }, { 'id': 'root>中文路徑2>aaa', 'name': 'aaa' }, { 'id': 'root>中文路徑2>aaa>aaabbb', 'name': 'aaabbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>中文路徑2>aaa>aaabbb', 'parentId': 'root>中文路徑2>aaa', 'text': 'aaabbb', 'children': [{ 'ns': 5, 'ts': ['root', '中文路徑2', 'aaa', 'aaabbb', 'abc'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>中文路徑2', 'name': '中文路徑2' }, { 'id': 'root>中文路徑2>aaa', 'name': 'aaa' }, { 'id': 'root>中文路徑2>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>中文路徑2>aaa>aaabbb>abc', 'name': 'abc' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root>中文路徑2>aaa>aaabbb>abc', 'parentId': 'root>中文路徑2>aaa>aaabbb', 'text': 'abc', 'children': [{ 'ns': 6, 'ts': ['root', '中文路徑2', 'aaa', 'aaabbb', 'abc', '測試.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>中文路徑2', 'name': '中文路徑2' }, { 'id': 'root>中文路徑2>aaa', 'name': 'aaa' }, { 'id': 'root>中文路徑2>aaa>aaabbb', 'name': 'aaabbb' }, { 'id': 'root>中文路徑2>aaa>aaabbb>abc', 'name': 'abc' }, { 'id': 'root>中文路徑2>aaa>aaabbb>abc>測試.txt', 'name': '測試.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>中文路徑2>aaa>aaabbb>abc>測試.txt', 'parentId': 'root>中文路徑2>aaa>aaabbb>abc', 'text': '測試.txt', 'data': { 'type': 'file', 'path': '/中文路徑2/aaa/aaabbb/abc/測試.txt' } }], 'data': null }], 'data': null }], 'data': null }], 'data': { 'type': 'folder', 'path': '/中文路徑2' } }, { 'ns': 2, 'ts': ['root', 'aaa1.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa1.txt', 'name': 'aaa1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa1.txt', 'parentId': 'root', 'text': 'aaa1.txt', 'data': { 'type': 'file', 'path': '/aaa1.txt' } }, { 'ns': 2, 'ts': ['root', 'aaa2.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root>aaa2.txt', 'name': 'aaa2.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root>aaa2.txt', 'parentId': 'root', 'text': 'aaa2.txt', 'data': { 'type': 'file', 'path': '/aaa2.txt' } }], 'data': null }] // let rfps2 = treeToFilepath(rti2, {}) let rfps2 = [ { type: 'folder', path: '/aaa' }, { type: 'folder', path: '/aaa/aaabbb' }, { type: 'folder', path: '/aaa/aaabbb/abc' }, { type: 'folder', path: '/aaa/aaabbb/abc/abcd' }, { type: 'file', path: '/aaa/aaabbb/abc/abcd/abcde.txt' }, { type: 'folder', path: '/aaa/aaabbb/abc/abcde' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdef1.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdef2.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdef3 aaa bbb ccc dddddd eeeeeee fffffffffff ggggggggggggg.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg01.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg02.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg03.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg04.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg05.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg06.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg07.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg08.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg09.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg10.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg11.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg12.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg13.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg14.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg15.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg16.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg17.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg18.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg19.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcde/abcdefg20.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcd1.txt' }, { type: 'file', path: '/aaa/aaabbb/abc/abcd2.txt' }, { type: 'file', path: '/aaa/aaabbb/aaabbbccc.txt' }, { type: 'file', path: '/aaa/aaabbb.txt' }, { type: 'folder', path: '/aaaa' }, { type: 'folder', path: '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff' }, { type: 'folder', path: '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff/ggg' }, { type: 'file', path: '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff/ggg/hhh.txt' }, { type: 'file', path: '/aaaa/bbbbbb cccccccccccc ddd dd ddd ddd ddd eeeeeeeeeeee ffff/gfedcba.txt' }, { type: 'folder', path: '/bbb' }, { type: 'folder', path: '/c:' }, { type: 'folder', path: '/c:/hhh' }, { type: 'folder', path: '/ccc' }, { type: 'folder', path: '/ccc/cccddd' }, { type: 'file', path: '/ccc/cccddd/cccdddeee.txt' }, { type: 'folder', path: '/d:' }, { type: 'folder', path: '/d:/中文路徑1' }, { type: 'folder', path: '/eee' }, { type: 'folder', path: '/eee/eeefff1' }, { type: 'folder', path: '/eee/eeefff2' }, { type: 'folder', path: '/ggg' }, { type: 'folder', path: '/中文路徑2' }, { type: 'folder', path: '/中文路徑2/aaa' }, { type: 'folder', path: '/中文路徑2/aaa/aaabbb' }, { type: 'folder', path: '/中文路徑2/aaa/aaabbb/abc' }, { type: 'file', path: '/中文路徑2/aaa/aaabbb/abc/測試.txt' }, { type: 'file', path: '/aaa1.txt' }, { type: 'file', path: '/aaa2.txt' } ] it(`should return ${JSON.stringify(rfps2)} when input ${JSON.stringify(rti2)}`, function() { let r = treeToFilepath(rti2) let rr = rfps2 assert.strict.deepStrictEqual(r, rr) }) let rti3 = [{ 'ns': 1, 'ts': ['root'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root', 'parentId': '', 'text': 'root', 'children': [{ 'ns': 2, 'ts': ['root', 'aaa'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa', 'parentId': 'root', 'text': 'aaa', 'children': [{ 'ns': 3, 'ts': ['root', 'aaa', 'bbb'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb', 'parentId': 'root❯aaa', 'text': 'bbb', 'children': [{ 'ns': 4, 'ts': ['root', 'aaa', 'bbb', 'z1.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }, { 'id': 'root❯aaa❯bbb❯z1.txt', 'name': 'z1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb❯z1.txt', 'parentId': 'root❯aaa❯bbb', 'text': 'z1.txt', 'data': { 'type': 'file', 'path': '/aaa/bbb/z1.txt' } }, { 'ns': 4, 'ts': ['root', 'aaa', 'bbb', 'z10.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }, { 'id': 'root❯aaa❯bbb❯z10.txt', 'name': 'z10.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb❯z10.txt', 'parentId': 'root❯aaa❯bbb', 'text': 'z10.txt', 'data': { 'type': 'file', 'path': '/aaa/bbb/z10.txt' } }, { 'ns': 4, 'ts': ['root', 'aaa', 'bbb', 'z2.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }, { 'id': 'root❯aaa❯bbb❯z2.txt', 'name': 'z2.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb❯z2.txt', 'parentId': 'root❯aaa❯bbb', 'text': 'z2.txt', 'data': { 'type': 'file', 'path': '/aaa/bbb/z2.txt' } }], 'data': null }], 'data': null }, { 'ns': 2, 'ts': ['root', 'aaa1'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa1', 'name': 'aaa1' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa1', 'parentId': 'root', 'text': 'aaa1', 'children': [], 'data': { 'type': 'folder', 'path': '/aaa1' } }, { 'ns': 2, 'ts': ['root', 'aaa10'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa10', 'name': 'aaa10' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa10', 'parentId': 'root', 'text': 'aaa10', 'children': [], 'data': { 'type': 'folder', 'path': '/aaa10' } }, { 'ns': 2, 'ts': ['root', 'aaa2'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa2', 'name': 'aaa2' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa2', 'parentId': 'root', 'text': 'aaa2', 'children': [], 'data': { 'type': 'folder', 'path': '/aaa2' } }], 'data': null }] // let rfps3 = treeToFilepath(rti3, {}) let rfps3 = [ { type: 'folder', path: '/aaa' }, { type: 'folder', path: '/aaa/bbb' }, { type: 'file', path: '/aaa/bbb/z1.txt' }, { type: 'file', path: '/aaa/bbb/z10.txt' }, { type: 'file', path: '/aaa/bbb/z2.txt' }, { type: 'folder', path: '/aaa1' }, { type: 'folder', path: '/aaa10' }, { type: 'folder', path: '/aaa2' } ] it(`should return ${JSON.stringify(rfps3)} when input ${JSON.stringify(rti3)}`, function() { let r = treeToFilepath(rti3) let rr = rfps3 assert.strict.deepStrictEqual(r, rr) }) let rti4 = [{ 'ns': 1, 'ts': ['root'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root', 'parentId': '', 'text': 'root', 'children': [{ 'ns': 2, 'ts': ['root', 'aaa'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa', 'parentId': 'root', 'text': 'aaa', 'children': [{ 'ns': 3, 'ts': ['root', 'aaa', 'bbb'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb', 'parentId': 'root❯aaa', 'text': 'bbb', 'children': [{ 'ns': 4, 'ts': ['root', 'aaa', 'bbb', 'z1.txt'], 'pathInfors': [{ 'id': 'root', 'name': 'root' }, { 'id': 'root❯aaa', 'name': 'aaa' }, { 'id': 'root❯aaa❯bbb', 'name': 'bbb' }, { 'id': 'root❯aaa❯bbb❯z1.txt', 'name': 'z1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'root❯aaa❯bbb❯z1.txt', 'parentId': 'root❯aaa❯bbb', 'text': 'z1.txt', 'data': { 'type': 'file', 'path': '/aaa/bbb/z1.txt' } }], 'data': null }], 'data': { 'type': 'folder', 'path': '/aaa' } }], 'data': null }] // let rfps4 = treeToFilepath(rti4, { delimiter: '>' }) let rfps4 = [ { type: 'folder', path: '>aaa' }, { type: 'folder', path: '>aaa>bbb' }, { type: 'file', path: '>aaa>bbb>z1.txt' } ] it(`should return ${JSON.stringify(rfps4)} when input ${JSON.stringify(rti4)}`, function() { let r = treeToFilepath(rti4, { delimiter: '>' }) let rr = rfps4 assert.strict.deepStrictEqual(r, rr) }) let rti5 = [{ 'ns': 1, 'ts': ['ROOT'], 'pathInfors': [{ 'id': 'ROOT', 'name': 'ROOT' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'ROOT', 'parentId': '', 'text': 'ROOT', 'children': [{ 'ns': 2, 'ts': ['ROOT', 'aaa'], 'pathInfors': [{ 'id': 'ROOT', 'name': 'ROOT' }, { 'id': 'ROOT❯aaa', 'name': 'aaa' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'ROOT❯aaa', 'parentId': 'ROOT', 'text': 'aaa', 'children': [{ 'ns': 3, 'ts': ['ROOT', 'aaa', 'bbb'], 'pathInfors': [{ 'id': 'ROOT', 'name': 'ROOT' }, { 'id': 'ROOT❯aaa', 'name': 'aaa' }, { 'id': 'ROOT❯aaa❯bbb', 'name': 'bbb' }], '_type': 'folder', 'type': 'array', 'numOfChilren': -1, 'id': 'ROOT❯aaa❯bbb', 'parentId': 'ROOT❯aaa', 'text': 'bbb', 'children': [{ 'ns': 4, 'ts': ['ROOT', 'aaa', 'bbb', 'z1.txt'], 'pathInfors': [{ 'id': 'ROOT', 'name': 'ROOT' }, { 'id': 'ROOT❯aaa', 'name': 'aaa' }, { 'id': 'ROOT❯aaa❯bbb', 'name': 'bbb' }, { 'id': 'ROOT❯aaa❯bbb❯z1.txt', 'name': 'z1.txt' }], '_type': 'file', 'type': 'node', 'numOfChilren': -1, 'id': 'ROOT❯aaa❯bbb❯z1.txt', 'parentId': 'ROOT❯aaa❯bbb', 'text': 'z1.txt', 'data': { 'type': 'file', 'path': '/aaa/bbb/z1.txt' } }], 'data': null }], 'data': { 'type': 'folder', 'path': '/aaa' } }], 'data': null }] // let rfps5 = treeToFilepath(rti5, { bindRoot: 'ROOT' }) let rfps5 = [ { type: 'folder', path: '/aaa' }, { type: 'folder', path: '/aaa/bbb' }, { type: 'file', path: '/aaa/bbb/z1.txt' } ] it(`should return ${JSON.stringify(rfps5)} when input ${JSON.stringify(rti5)}`, function() { let r = treeToFilepath(rti5, { bindRoot: 'ROOT' }) let rr = rfps5 assert.strict.deepStrictEqual(r, rr) }) it(`should return [] when input ''`, function() { let r = treeToFilepath('') let rr = [] assert.strict.deepStrictEqual(r, rr) }) it(`should return [] when input []`, function() { let r = treeToFilepath([]) let rr = [] assert.strict.deepStrictEqual(r, rr) }) it(`should return [] when input {}`, function() { let r = treeToFilepath({}) let rr = [] assert.strict.deepStrictEqual(r, rr) }) it(`should return [] when input null`, function() { let r = treeToFilepath(null) let rr = [] assert.strict.deepStrictEqual(r, rr) }) it(`should return [] when input undefined`, function() { let r = treeToFilepath(undefined) let rr = [] assert.strict.deepStrictEqual(r, rr) }) })