/* * 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 { FrameChart } from '../../../../dist/trace/component/chart/FrameChart.js'; // @ts-ignore import {TraceRow} from '../../../../dist/trace/component/trace/base/TraceRow.js'; // @ts-ignore import {ChartMode} from "../../../../dist/trace/bean/FrameChartStruct.js"; jest.mock('../../../../dist/trace/component/SpSystemTrace.js', () => { return {}; }); jest.mock('../../../../dist/js-heap/model/DatabaseStruct.js', () => {}); const intersectionObserverMock = () => ({ observe: () => null, }); window.IntersectionObserver = jest.fn().mockImplementation(intersectionObserverMock); window.ResizeObserver = window.ResizeObserver || jest.fn().mockImplementation(() => ({ disconnect: jest.fn(), observe: jest.fn(), unobserve: jest.fn(), })); jest.mock('../../../../dist/trace/component/trace/base/TraceRow.js', () => { return {} }); describe('FrameChart Test', () => { let node = [{ children: '' }, { children: { length: 0 } }]; let node1 = [{ children: '' }, { children: { length: 10 } }]; let selectData = [(length = 1)]; document.body.innerHTML = ''; let frameChart = document.querySelector('#ccc') as FrameChart; it('FrameChartTest01', function () { frameChart.tabPaneScrollTop = false; expect(frameChart.tabPaneScrollTop).toBeFalsy(); }); it('FrameChartTest02', function () { expect(frameChart.updateFloatHint()).toBeUndefined(); }); it('FrameChartTest03', function () { frameChart.calculateChartData = jest.fn(() => true); frameChart.calMaxDepth = jest.fn(() => true); expect(frameChart.redrawChart(selectData)).toBeUndefined(); }); it('FrameChartTest05', function () { let index = frameChart.scale(2); expect(index).toBe(undefined); }); it('FrameChartTest08', function () { frameChart.translationDraw = jest.fn(() => true); expect(frameChart.translation()).toBeUndefined(); }); it('FrameChartTest14', function () { let frameChart = new FrameChart(); frameChart.translationDraw = jest.fn(() => true); expect(frameChart.translation(-1)).toBeUndefined(); }); it('FrameChartTest09', function () { frameChart.selectTotalCount = false; expect(frameChart.selectTotalCount).toBeFalsy(); }); it('FrameChartTest11', function () { let frameChart = new FrameChart(); frameChart._mode = 1; frameChart.drawScale = jest.fn(() => true); expect(frameChart.calculateChartData()).not.toBeUndefined(); }); it('FrameChartTest12', function () { expect(frameChart.updateCanvas()).toBeUndefined(); }); it('FrameChartTest13', function () { let frameChart = new FrameChart(); frameChart.translationDraw = jest.fn(() => true); frameChart.lastCanvasXInScale = 0; expect(frameChart.translationByScale()).toBe(undefined); }); it('FrameChartTest21', function () { let frameChart = new FrameChart(); frameChart.translationDraw = jest.fn(() => true); frameChart.canvasX = 4; frameChart.lastCanvasXInScale = 1; expect(frameChart.translationByScale()).toBe(undefined); }); it('FrameChartTest22', function () { let frameChart = new FrameChart(); frameChart.translationDraw = jest.fn(() => true); expect(frameChart.translationByScale(1)).toBe(undefined); }); it('FrameChartTest23', function () { expect(frameChart.searchData([], 2, 2)).toBeNull(); }); it('FrameChartTest15', function () { let frameChart = new FrameChart(); frameChart.calculateChartData = jest.fn(() => true); frameChart.xPoint = 1; expect(frameChart.translationDraw()).toBe(undefined); }); it('FrameChartTest16', function () { expect(frameChart.onMouseClick({ button: 0 })).toBeUndefined(); }); it('FrameChartTest18', function () { let frameChart = new FrameChart(); expect(frameChart.drawFrameChart(node)).toBeUndefined(); }); it('FrameChartTest20', function () { expect(frameChart.searchData([], 1, 1)).toBeNull(); }); it('FrameChartTest23', function () { expect(frameChart.onMouseClick({ button: 2 })).toBeUndefined(); }); it('FrameChartTest24', function () { document.body.innerHTML = ``; expect(frameChart.drawScale()).toBeUndefined(); }); it('FrameChartTest25', function () { let frameChart = new FrameChart(); frameChart.selectTotalSize = false; expect(frameChart.selectTotalSize).toBeFalsy(); }); it('FrameChartTest26', function () { let frameChart = new FrameChart(); frameChart.maxDepth = false; expect(frameChart.maxDepth).toBeFalsy(); }); it('FrameChartTest27 ', function () { let frameChart = new FrameChart(); expect(frameChart.calMaxDepth(node, 1)).toBeUndefined(); }); it('FrameChartTest28 ', function () { let frameChart = new FrameChart(); expect(frameChart.mode).toBeUndefined(); }); it('FrameChartTest29', function () { let frameChart = new FrameChart(); frameChart.mode = false; expect(frameChart.mode).toBeFalsy(); }); it('FrameChartTest30', function () { frameChart.caldrawArgs = jest.fn(() => true); expect(frameChart.caldrawArgs()).toBeTruthy(); }); it('FrameChartTest31', function () { let frameChart = new FrameChart(); frameChart.data = []; expect(frameChart.data).toBeFalsy(); }); it('FrameChartTest32', function () { let frameChart = new FrameChart(); expect(frameChart.addChartClickListener(() => {})).toBeUndefined(); }); it('FrameChartTest33', function () { let frameChart = new FrameChart(); expect(frameChart.removeChartClickListener(() => {})).toBeUndefined(); }); it('FrameChartTest34', function () { let frameChart = new FrameChart(); expect(frameChart.calMaxDepth(node1, 10)).toBeUndefined(); }); it('FrameChartTest35', function () { let frameChart = new FrameChart(); frameChart.drawTriangleOnScale = jest.fn(() => true); expect(frameChart.drawTriangleOnScale()).toBeTruthy(); }); it('FrameChartTest36', function () { frameChart._mode = 1; frameChart.drawScale = jest.fn(() => true); expect(frameChart.drawScale()).toBeTruthy(); }); it('FrameChartTest37', function () { frameChart._mode = 2; frameChart.drawScale = jest.fn(() => true); expect(frameChart.drawScale()).toBeTruthy(); }); it('FrameChartTest38', function () { frameChart._mode = 3; frameChart.drawScale = jest.fn(() => true); expect(frameChart.drawScale()).toBeTruthy(); }); it('FrameChartTest39', function () { expect(frameChart.resetTrans()).toBeUndefined(); }); it('FrameChartTest40', function () { expect(frameChart.onMouseClick({ button: 2 })).toBeUndefined(); }); it('FrameChartTest41', function () { expect(frameChart.drawDataSet(node, true)).toBeUndefined(); }); it('FrameChartTest42', function () { let frameChart = new FrameChart(); frameChart._mode = ChartMode.Byte; frameChart.drawScale = jest.fn(() => true); expect(frameChart.calculateChartData()).not.toBeUndefined(); }); it('FrameChartTest44', function () { let frameChart = new FrameChart(); frameChart._mode = ChartMode.Count; frameChart.drawScale = jest.fn(() => true); expect(frameChart.calculateChartData()).not.toBeUndefined(); }); it('FrameChartTest45', function () { let frameChart = new FrameChart(); frameChart._mode = ChartMode.Duration; frameChart.drawScale = jest.fn(() => true); expect(frameChart.calculateChartData()).not.toBeUndefined(); }); });