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 { PluginConvertUtils } from '../../../../../src/trace/component/setting/utils/PluginConvertUtils'; 17fb726d48Sopenharmony_ciimport { ProfilerSessionConfigMode } from '../../../../../src/trace/component/setting/bean/ProfilerServiceTypes'; 18fb726d48Sopenharmony_ci 19fb726d48Sopenharmony_ciimport { 20fb726d48Sopenharmony_ci ProfilerSessionConfigBufferConfig, 21fb726d48Sopenharmony_ci ProfilerSessionConfigBufferConfigPolicy, 22fb726d48Sopenharmony_ci TracePluginConfig, 23fb726d48Sopenharmony_ci // @ts-ignore 24fb726d48Sopenharmony_ci} from '../../../../../src/trace/component/setting/bean/ProfilerServiceTypes'; 25fb726d48Sopenharmony_ciimport { 26fb726d48Sopenharmony_ci HilogConfig, 27fb726d48Sopenharmony_ci levelFromJSON, 28fb726d48Sopenharmony_ci Type, 29fb726d48Sopenharmony_ci // @ts-ignore 30fb726d48Sopenharmony_ci} from '../../../../../src/trace/component/setting/bean/ProfilerServiceTypes'; 31fb726d48Sopenharmony_ciimport { 32fb726d48Sopenharmony_ci MemoryConfig, 33fb726d48Sopenharmony_ci sysMeminfoTypeFromJSON, 34fb726d48Sopenharmony_ci sysVMeminfoTypeFromJSON, 35fb726d48Sopenharmony_ci // @ts-ignore 36fb726d48Sopenharmony_ci} from '../../../../../src/trace/component/setting/bean/ProfilerServiceTypes'; 37fb726d48Sopenharmony_ciimport { SpRecordTrace } from '../../../../../src/trace/component/SpRecordTrace'; 38fb726d48Sopenharmony_ci 39fb726d48Sopenharmony_cidescribe('PlugConvertUtils Test', () => { 40fb726d48Sopenharmony_ci let bufferConfig: ProfilerSessionConfigBufferConfig = { 41fb726d48Sopenharmony_ci pages: 1000, 42fb726d48Sopenharmony_ci policy: ProfilerSessionConfigBufferConfigPolicy.RECYCLE, 43fb726d48Sopenharmony_ci }; 44fb726d48Sopenharmony_ci let sessionConfig = { 45fb726d48Sopenharmony_ci buffers: [bufferConfig], 46fb726d48Sopenharmony_ci sessionMode: ProfilerSessionConfigMode.OFFLINE, 47fb726d48Sopenharmony_ci resultFile: '/data/local/tmp/hiprofiler_data.htrace', 48fb726d48Sopenharmony_ci resultMaxSize: 0, 49fb726d48Sopenharmony_ci sampleDuration: 1000, 50fb726d48Sopenharmony_ci keepAliveTime: 0, 51fb726d48Sopenharmony_ci }; 52fb726d48Sopenharmony_ci let tracePluginConfig: TracePluginConfig = { 53fb726d48Sopenharmony_ci ftraceEvents: [], 54fb726d48Sopenharmony_ci bytraceCategories: [], 55fb726d48Sopenharmony_ci bytraceApps: [], 56fb726d48Sopenharmony_ci bufferSizeKb: 1024, 57fb726d48Sopenharmony_ci flushIntervalMs: 1000, 58fb726d48Sopenharmony_ci flushThresholdKb: 4096, 59fb726d48Sopenharmony_ci parseKsyms: true, 60fb726d48Sopenharmony_ci clock: 'mono', 61fb726d48Sopenharmony_ci tracePeriodMs: 200, 62fb726d48Sopenharmony_ci rawDataPrefix: '', 63fb726d48Sopenharmony_ci traceDurationMs: 0, 64fb726d48Sopenharmony_ci debugOn: false, 65fb726d48Sopenharmony_ci }; 66fb726d48Sopenharmony_ci let hilogConfig: HilogConfig = { 67fb726d48Sopenharmony_ci deviceType: Type.HI3516, 68fb726d48Sopenharmony_ci logLevel: levelFromJSON('Info'), 69fb726d48Sopenharmony_ci needClear: true, 70fb726d48Sopenharmony_ci }; 71fb726d48Sopenharmony_ci let memoryconfig: MemoryConfig = { 72fb726d48Sopenharmony_ci reportProcessTree: true, 73fb726d48Sopenharmony_ci reportSysmemMemInfo: true, 74fb726d48Sopenharmony_ci sysMeminfoCounters: [], 75fb726d48Sopenharmony_ci reportSysmemVmemInfo: true, 76fb726d48Sopenharmony_ci sysVmeminfoCounters: [], 77fb726d48Sopenharmony_ci reportProcessMemInfo: true, 78fb726d48Sopenharmony_ci reportAppMemInfo: false, 79fb726d48Sopenharmony_ci reportAppMemByMemoryService: false, 80fb726d48Sopenharmony_ci pid: [], 81fb726d48Sopenharmony_ci }; 82fb726d48Sopenharmony_ci let request = { 83fb726d48Sopenharmony_ci requestId: 1, 84fb726d48Sopenharmony_ci sessionConfig: sessionConfig, 85fb726d48Sopenharmony_ci pluginConfigs: [tracePluginConfig, hilogConfig, memoryconfig], 86fb726d48Sopenharmony_ci }; 87fb726d48Sopenharmony_ci 88fb726d48Sopenharmony_ci it('PlugConvertUtils01', function () { 89fb726d48Sopenharmony_ci expect(PluginConvertUtils.createHdcCmd('aaaa', 11)).not.toBeNull(); 90fb726d48Sopenharmony_ci }); 91fb726d48Sopenharmony_ci 92fb726d48Sopenharmony_ci it('PlugConvertUtils02', function () { 93fb726d48Sopenharmony_ci expect(PluginConvertUtils.BeanToCmdTxt(request, true)).not.toBeNull(); 94fb726d48Sopenharmony_ci }); 95fb726d48Sopenharmony_ci 96fb726d48Sopenharmony_ci it('PlugConvertUtils03', function () { 97fb726d48Sopenharmony_ci expect(PluginConvertUtils.BeanToCmdTxtWithObjName(request, false, '', 1)).not.toBeNull(); 98fb726d48Sopenharmony_ci }); 99fb726d48Sopenharmony_ci}); 100