1fb726d48Sopenharmony_ci/* 2fb726d48Sopenharmony_ci * Copyright (C) 2022 Huawei Device Co., Ltd. 3fb726d48Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4fb726d48Sopenharmony_ci * you may not use this file except in compliance with the License. 5fb726d48Sopenharmony_ci * You may obtain a copy of the License at 6fb726d48Sopenharmony_ci * 7fb726d48Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8fb726d48Sopenharmony_ci * 9fb726d48Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10fb726d48Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11fb726d48Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12fb726d48Sopenharmony_ci * See the License for the specific language governing permissions and 13fb726d48Sopenharmony_ci * limitations under the License. 14fb726d48Sopenharmony_ci */ 15fb726d48Sopenharmony_ci 16fb726d48Sopenharmony_ciimport { 17fb726d48Sopenharmony_ci frameActualReceiver, 18fb726d48Sopenharmony_ci frameExpectedReceiver 19fb726d48Sopenharmony_ci} from "../../../../src/trace/database/data-trafic/FrameJanksReceiver"; 20fb726d48Sopenharmony_ci 21fb726d48Sopenharmony_cidescribe('FrameJanksReceiver Test', () => { 22fb726d48Sopenharmony_ci let data = { 23fb726d48Sopenharmony_ci action: "exec-proto", 24fb726d48Sopenharmony_ci id: "5", 25fb726d48Sopenharmony_ci name: 16, 26fb726d48Sopenharmony_ci params: { 27fb726d48Sopenharmony_ci endNS: 8711323000, 28fb726d48Sopenharmony_ci queryEnum: 16, 29fb726d48Sopenharmony_ci recordEndNS: 512261248000, 30fb726d48Sopenharmony_ci recordStartNS: 503549925000, 31fb726d48Sopenharmony_ci sharedArrayBuffers: undefined, 32fb726d48Sopenharmony_ci startNS: 0, 33fb726d48Sopenharmony_ci t: 1703484466189, 34fb726d48Sopenharmony_ci trafic: 3, 35fb726d48Sopenharmony_ci width: 1407 36fb726d48Sopenharmony_ci } 37fb726d48Sopenharmony_ci } 38fb726d48Sopenharmony_ci 39fb726d48Sopenharmony_ci let expectData = { 40fb726d48Sopenharmony_ci frameData: { 41fb726d48Sopenharmony_ci appDur: 16634548, 42fb726d48Sopenharmony_ci cmdline: "com.huawei.wx", 43fb726d48Sopenharmony_ci depth: 2, 44fb726d48Sopenharmony_ci dur: 33269438, 45fb726d48Sopenharmony_ci frameType: "frameTime", 46fb726d48Sopenharmony_ci id: 1007, 47fb726d48Sopenharmony_ci ipid: 135, 48fb726d48Sopenharmony_ci jankTag: -1, 49fb726d48Sopenharmony_ci name: 2299, 50fb726d48Sopenharmony_ci pid: 3104, 51fb726d48Sopenharmony_ci rsDur: 16634548, 52fb726d48Sopenharmony_ci rsIpid: 15, 53fb726d48Sopenharmony_ci rsPid: 994, 54fb726d48Sopenharmony_ci rsTs: 4996898311, 55fb726d48Sopenharmony_ci rsVsync: 1279, 56fb726d48Sopenharmony_ci ts: 4980263421, 57fb726d48Sopenharmony_ci type: "1" 58fb726d48Sopenharmony_ci } 59fb726d48Sopenharmony_ci } 60fb726d48Sopenharmony_ci 61fb726d48Sopenharmony_ci let actualData = { 62fb726d48Sopenharmony_ci frameData: { 63fb726d48Sopenharmony_ci appDur: 1697000, 64fb726d48Sopenharmony_ci cmdline: "com.ohos.launch", 65fb726d48Sopenharmony_ci depth: 0, 66fb726d48Sopenharmony_ci dur: 24662000, 67fb726d48Sopenharmony_ci frameType: "frameTime", 68fb726d48Sopenharmony_ci id: 918, 69fb726d48Sopenharmony_ci ipid: 19, 70fb726d48Sopenharmony_ci name: 2280, 71fb726d48Sopenharmony_ci pid: 2128, 72fb726d48Sopenharmony_ci rsDur: 11082000, 73fb726d48Sopenharmony_ci rsIpid: 15, 74fb726d48Sopenharmony_ci rsPid: 994, 75fb726d48Sopenharmony_ci rsTs: 4681218000, 76fb726d48Sopenharmony_ci rsVsync: 1260, 77fb726d48Sopenharmony_ci ts: 4667638000, 78fb726d48Sopenharmony_ci type: "0" 79fb726d48Sopenharmony_ci } 80fb726d48Sopenharmony_ci } 81fb726d48Sopenharmony_ci it('FrameJanksReceiverTest01', function () { 82fb726d48Sopenharmony_ci (self as unknown as Worker).postMessage = jest.fn(() => true); 83fb726d48Sopenharmony_ci expect(frameExpectedReceiver(data, () => { 84fb726d48Sopenharmony_ci return expectData; 85fb726d48Sopenharmony_ci })).toBeUndefined(); 86fb726d48Sopenharmony_ci }); 87fb726d48Sopenharmony_ci 88fb726d48Sopenharmony_ci it('FrameJanksReceiverTest02', function () { 89fb726d48Sopenharmony_ci (self as unknown as Worker).postMessage = jest.fn(() => true); 90fb726d48Sopenharmony_ci expect(frameActualReceiver(data, () => { 91fb726d48Sopenharmony_ci return actualData; 92fb726d48Sopenharmony_ci })).toBeUndefined(); 93fb726d48Sopenharmony_ci }); 94fb726d48Sopenharmony_ci});