1/* 2 * Copyright (c) 2021 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 16import { paramMock } from "../utils" 17 18export function mockEmitter() { 19 const EventDataMock = { 20 data: '[PC preview] unknow data', 21 }; 22 const emitter = { 23 on: function (...args) { 24 console.warn("emitter.on interface mocked in the Previewer. How this interface works on the" + 25 " Previewer may be different from that on a real device."); 26 const len = args.length; 27 if (typeof args[len - 1] === 'function') { 28 args[len - 1].call(this, EventDataMock); 29 } 30 }, 31 once: function (...args) { 32 console.warn("emitter.once interface mocked in the Previewer. How this interface works on the" + 33 " Previewer may be different from that on a real device."); 34 const len = args.length; 35 if (typeof args[len - 1] === 'function') { 36 args[len - 1].call(this, EventDataMock); 37 } 38 }, 39 off: function (...args) { 40 console.warn("emitter.off interface mocked in the Previewer. How this interface works on the" + 41 " Previewer may be different from that on a real device."); 42 }, 43 emit: function (...args) { 44 console.warn("emitter.emit interface mocked in the Previewer. How this interface works on the" + 45 " Previewer may be different from that on a real device."); 46 }, 47 } 48 return emitter 49} 50