diff --git a/TestMasterUI/src/config/menuConfig.js b/TestMasterUI/src/config/menuConfig.js index 90dd4b7..0403123 100644 --- a/TestMasterUI/src/config/menuConfig.js +++ b/TestMasterUI/src/config/menuConfig.js @@ -2,7 +2,7 @@ export const menuConfig = [ { id: 'response', - label: '응답관리', + label: '응답 관리', items: [ {id: 'response-list', label: 'API 응답 목록', action: 'response-list', screen: 'response-list'}, // {id: 'response-add', label: 'API 응답 추가', action: 'response-add'}, @@ -22,24 +22,9 @@ export const menuConfig = [ {id: 'request-add', label: '요청 추가', action: 'request-add'}, {id: 'scenario-add', label: '시나리오 추가', action: 'scenario-add'}, {type: 'separator'}, - {id: 'variables-show', label: '변수 보기', action: 'variables-show'} - ] - }, - // { - // id: 'queue', - // label: '큐 관리', - // items: [ - // {id: 'queue-add', label: '큐 추가', action: 'queue-add'} - // ] - // }, - { - id: 'loadtest', - label: '부하 테스트', - items: [ - {id: 'load-test', label: '새 테스트', action: 'load-test', screen: 'load-test'}, + {id: 'variables-show', label: '변수 보기', action: 'variables-show'}, {type: 'separator'}, - {id: 'load-test-history', label: '테스트 이력', action: 'load-test-history', screen: 'load-test-history'}, - {id: 'load-test-reports', label: '결과 리포트', action: 'load-test-reports', screen: 'load-test-reports'} + {id: 'load-test', label: '부하 테스트', action: 'load-test', screen: 'load-test'}, ] }, { diff --git a/TestMasterUI/src/lib/ApiLayoutItemTreeBuilder.js b/TestMasterUI/src/lib/ApiLayoutItemTreeBuilder.js index 21b9d62..5f04093 100644 --- a/TestMasterUI/src/lib/ApiLayoutItemTreeBuilder.js +++ b/TestMasterUI/src/lib/ApiLayoutItemTreeBuilder.js @@ -1,17 +1,24 @@ class ApiLayoutItemTreeBuilder { static createTree(layoutItems) { - layoutItems.sort((a, b) => a.loutItemSerno - b.loutItemSerno); - const rootId = layoutItems.length === 0 ? 0 : parseInt(layoutItems[0].parent); + const itemsCopy = layoutItems.map(item => ({ + ...item, + children: [] // 기존의 children 배열을 초기화합니다. + })); + + // 2. 정렬 (필요한 경우) + itemsCopy.sort((a, b) => a.loutItemSerno - b.loutItemSerno); + + const rootId = itemsCopy.length === 0 ? 0 : parseInt(itemsCopy[0].parent); const root = {id: rootId, children: [], loutItemSerno: 0, loutItemName: 'Root', loutItemDesc: 'Root', loutItemType: '', loutItemDepth: 0, parent: null}; const nodeMap = new Map(); nodeMap.set(rootId, root); - for (const item of layoutItems) { + for (const item of itemsCopy) { if (['Grid', 'Group'].includes(item.loutItemType)) { if (item.loutItemOccCnt !== null) { if (item.loutItemOccCnt === '*') { - let refItem = layoutItems.find(p => p.loutItemName === item.loutItemOccRef); + let refItem = itemsCopy.find(p => p.loutItemName === item.loutItemOccRef); if (refItem) { item.childOccCnt = parseInt(refItem.value, 10); } @@ -31,6 +38,7 @@ class ApiLayoutItemTreeBuilder { nodeMap.set(item.id, item); } + console.log(root); return root; } @@ -68,7 +76,7 @@ class ApiLayoutItemTreeBuilder { } static getNodeById(node, id) { - if (node.id == id) { + if (Number(node.id) === Number(id)) { return node; }