/* * Copyright (C) 2022 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // @ts-ignore import { TabPaneFileStatistics } from '../../../../../../dist/trace/component/trace/sheet/file-system/TabPaneFilesystemStatistics.js'; import '../../../../../../dist/trace/component/trace/sheet/file-system/TabPaneFilesystemStatistics.js'; // @ts-ignore import { Utils } from '../../../../../../dist/trace/component/trace/base/Utils.js'; import '../../../../../../dist/trace/component/trace/base/Utils.js'; import crypto from 'crypto'; // @ts-ignore import { LitTable } from '../../../../../../dist/base-ui/table/lit-table.js'; import '../../../../../../dist/base-ui/table/lit-table.js'; // @ts-ignore import { TabPaneFilter } from '../../../../../../dist/trace/component/trace/sheet/TabPaneFilter.js'; import '../../../../../../dist/trace/component/trace/sheet/TabPaneFilter.js'; Object.defineProperty(global.self, 'crypto', { value: { getRandomValues: (arr: string | any[]) => crypto.randomBytes(arr.length), }, }); // @ts-ignore window.ResizeObserver = window.ResizeObserver || jest.fn().mockImplementation(() => ({ disconnect: jest.fn(), observe: jest.fn(), unobserve: jest.fn(), })); describe('TabPaneFileStatistics Test', () => { document.body.innerHTML = `
`; let tabPaneFileStatistics = document.querySelector('#statistics'); let param = { anomalyEnergy: [], clockMapData: { size: 50 }, cpuAbilityIds: [23,25], cpuFreqFilterIds: [34,66], cpuFreqLimitDatas: [], cpuStateFilterIds: [77,96], cpus: [0], diskAbilityIds: [10,34], diskIOLatency: false, diskIOReadIds: [2,11, 4, 12], diskIOWriteIds: [2, 54, 64], diskIOipids: [25, 7, 58, 6], fileSysVirtualMemory: true, fileSystemType: [], fsCount: 30, funAsync: [], funTids: [45,22], hasFps: false, irqMapData: { size: 32 }, jsMemory: [], leftNs: 964667689, memoryAbilityIds: [23,78,9], nativeMemory: [], nativeMemoryStatistic: [], networkAbilityIds: [10,154,55], perfAll: false, perfCpus: [1], perfProcess: [], perfSampleIds: [233,120,4], perfThread: [], powerEnergy: [], processTrackIds: [34,21], promiseList: [], recordStartNs: 780423722428, rightNs: 33236556624, sdkCounterIds: [12,56], sdkSliceIds: [45,98], smapsType: [], systemEnergy: [], threadIds: [88,12], virtualTrackIds: [34,87], vmCount: 31, }; it('TabPaneFileStatisticsTest01', function () { tabPaneFileStatistics.setInitDua = jest.fn(() => true); let item = { allDuration: '', minDuration: '', avgDuration: '', maxDuration: '', }; expect(tabPaneFileStatistics.setInitDua(item)).toBeTruthy(); }); it('TabPaneFileStatisticsTest02', function () { tabPaneFileStatistics.getInitData = jest.fn(() => true); let item = { allDuration: '', minDuration: '', avgDuration: '', maxDuration: '', }; expect(tabPaneFileStatistics.getInitData(item)).toBeTruthy(); }); it('TabPaneFileStatisticsTest04', function () { tabPaneFileStatistics.showButtomMenu = jest.fn(() => true); let isShow = { filter: { setAttribute: 'tree, input, inputLeftText', }, }; expect(tabPaneFileStatistics.showButtomMenu(isShow)).toBeTruthy(); }); it('TabPaneFileStatisticsTest08', function () { let FileStatistics = new TabPaneFileStatistics(); let item = { allDuration: '', minDuration: '', avgDuration: '', maxDuration: '', name: 'as', logicalWrites: '', logicalReads: '', otherFile: '0 Bytes', pid: 1, }; Utils.getBinaryByteWithUnit = jest.fn(() => true); expect(FileStatistics.getInitData(item)).toEqual({ allDuration: '', avgDuration: '', logicalReads: true, logicalWrites: true, maxDuration: '', minDuration: '', name: 'as', node: { allDuration: '', avgDuration: '', children: [], logicalReads: '', logicalWrites: '', maxDuration: '', minDuration: '', name: 'as', otherFile: '0 Bytes', pid: 1, }, otherFile: true, pid: 1, title: 'as(1)', }); }); it('TabPaneFileStatisticsTest09', function () { let FileStatistics = new TabPaneFileStatistics(); let node = { children: [], }; expect(FileStatistics.sortTable(node, '')).toBeUndefined(); }); });