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 16import { paramMock } from "../utils" 17 18export function mockUriPermissionManager() { 19 const UriPermissionManagerClass = class UriPermissionManager { 20 constructor() { 21 console.warn('application.UriPermissionManager.constructor interface mocked in the Previewer. How this interface works on' + 22 ' the Previewer may be different from that on a real device.'); 23 this.verifyUriPermission = function (...args) { 24 console.warn("UriPermissionManager.verifyUriPermission interface mocked in the Previewer." + 25 " How this interface works on the Previewer may be different from that on a real device.") 26 const len = args.length 27 if (len > 0 && typeof args[len - 1] === 'function') { 28 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 29 } else { 30 return new Promise((resolve, reject) => { 31 resolve(paramMock.paramNumberMock); 32 }) 33 } 34 }; 35 } 36 } 37 return new UriPermissionManagerClass(); 38} 39