1/* 2 * Copyright (C) 2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16// @ts-ignore 17import {fps, FpsStruct} from "../../../dist/trace/database/ProcedureWorkerFps.js"; 18// @ts-ignore 19import {Rect} from "../../../dist/trace/component/trace/timer-shaft/Rect.js"; 20 21describe(' FPSTest', () => { 22 23 it('FpsTest01', () => { 24 let dataList = new Array(); 25 dataList.push({startTime: 0, dur: 10, frame: {x:0, y:9, width:10, height:10}}) 26 dataList.push({startTime: 1, dur: 111}) 27 let rect = new Rect(0, 10, 10, 10); 28 fps(dataList, new Set(), 1, 100254, 100254, rect) 29 }) 30 31 it('FpsTest02', () => { 32 let dataList = new Array(); 33 dataList.push({startTime: 0, dur: 10, frame: {x:0, y:9, width:10, height:10}}) 34 dataList.push({startTime: 1, dur: 111, frame: {x:0, y:9, width:10, height:10}}) 35 let rect = new Rect(0, 10, 10, 10); 36 fps(dataList, new Set(), 1, 100254, 100254, rect) 37 }) 38 39 it('FpsTest03', () => { 40 const canvas = document.createElement('canvas'); 41 canvas.width = 1; 42 canvas.height = 1; 43 const ctx = canvas.getContext('2d'); 44 45 const data = { 46 frame: { 47 x: 20, 48 y: 20, 49 width: 100, 50 height: 100 51 }, 52 startNS: 200, 53 value: 50 54 } 55 56 expect(FpsStruct.draw(ctx, data)).toBeUndefined() 57 }) 58 59 60 it('FpsTest04', () => { 61 const canvas = document.createElement('canvas'); 62 canvas.width = 1; 63 canvas.height = 1; 64 const ctx = canvas.getContext('2d'); 65 66 const data = { 67 frame: { 68 x: 20, 69 y: 20, 70 width: 100, 71 height: 100 72 }, 73 startNS: 200, 74 value: 50 75 } 76 new FpsStruct(1); 77 FpsStruct.hoverFpsStruct = jest.fn(() => {startNS:200}) 78 FpsStruct.a = jest.fn(() => data); 79 expect(FpsStruct.draw(ctx, data)).toBeUndefined() 80 }) 81 it('FpsTest05 ', () => { 82 const canvas = document.createElement('canvas'); 83 canvas.width = 1; 84 canvas.height = 1; 85 const ctx = canvas.getContext('2d'); 86 const Sourcedate = { 87 frame: { 88 x: 20, 89 y: 20, 90 width: 100, 91 height: 100 92 }, 93 maxFps: 200, 94 value: 50 95 } 96 expect(FpsStruct.draw(ctx,Sourcedate)).toBeUndefined() 97 98 99 100 }); 101});