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 { ProcedureLogicWorkerJsCpuProfiler } from '../../../../dist/trace/database/logic-worker/ProcedureLogicWorkerJsCpuProfiler.js'; 18 19describe('ProcedureLogicWorkerJsCpuProfiler Test', () => { 20 it('ProcedureLogicWorkerJsCpuProfiler01', function () { 21 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 22 expect(procedureLogicWorkerJsCpuProfiler).not.toBeUndefined(); 23 }); 24 25 it('ProcedureLogicWorkerJsCpuProfiler02', function () { 26 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 27 let data = { 28 id: '3b21cea8-3554-4aa6-8e4d-7d30672dedca', 29 type: 'jsCpuProfiler-init', 30 params: { 31 list: new ArrayBuffer(20), 32 }, 33 }; 34 window.postMessage = jest.fn(() => true); 35 expect(procedureLogicWorkerJsCpuProfiler.handle(data)).toBeUndefined(); 36 }); 37 38 it('ProcedureLogicWorkerJsCpuProfiler03', function () { 39 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 40 let data = { 41 type: 'jsCpuProfiler-call-chain', 42 params: { 43 list: [], 44 }, 45 id: '3b21cea8-3554-4aa6-8e4d-7d30672dedca', 46 }; 47 window.postMessage = jest.fn(() => true); 48 procedureLogicWorkerJsCpuProfiler.dataCache = []; 49 expect(procedureLogicWorkerJsCpuProfiler.handle(data)).toBeUndefined(); 50 }); 51 52 it('ProcedureLogicWorkerJsCpuProfiler04', function () { 53 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 54 let data = { 55 type: 'jsCpuProfiler-samples', 56 params: { 57 list: [], 58 }, 59 id: '3b21cea8-3554-4aa6-8e4d-7d30672dedca', 60 }; 61 window.postMessage = jest.fn(() => true); 62 expect(procedureLogicWorkerJsCpuProfiler.handle(data)).toBeUndefined(); 63 }); 64 65 it('ProcedureLogicWorkerJsCpuProfiler05', function () { 66 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 67 let data = { 68 type: 'jsCpuProfiler-call-tree', 69 params: [ 70 { 71 startTime: 0, 72 endTime: 0, 73 children: [], 74 samplesIds: [], 75 isSelect: false, 76 }, 77 ], 78 id: '3b21cea8-3554-4aa6-8e4d-7d30672dedca', 79 }; 80 window.postMessage = jest.fn(() => true); 81 expect(procedureLogicWorkerJsCpuProfiler.handle(data)).toBeUndefined(); 82 }); 83 84 it('ProcedureLogicWorkerJsCpuProfiler06', function () { 85 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 86 let data = { 87 type: 'jsCpuProfiler-bottom-up', 88 params: [ 89 { 90 startTime: 0, 91 endTime: 0, 92 children: [], 93 samplesIds: [], 94 isSelect: false, 95 }, 96 ], 97 id: '3b21cea8-3554-4aa6-8e4d-7d30672dedca', 98 }; 99 window.postMessage = jest.fn(() => true); 100 expect(procedureLogicWorkerJsCpuProfiler.handle(data)).toBeUndefined(); 101 }); 102 103 it('ProcedureLogicWorkerJsCpuProfiler07', function () { 104 let procedureLogicWorkerJsCpuProfiler = new ProcedureLogicWorkerJsCpuProfiler(); 105 let data = { 106 type: 'jsCpuProfiler-statistics', 107 params: { 108 leftNs: 0, 109 rightNs: 10000000000, 110 data: [], 111 }, 112 id: '3b21cea8-3554-4aa6-8e4d-7d30672dedca', 113 }; 114 window.postMessage = jest.fn(() => true); 115 expect(procedureLogicWorkerJsCpuProfiler.handle(data)).toBeUndefined(); 116 }); 117}); 118