• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 mockAbilityManager() {
19  const AbilityRunningInfoMock = {
20    ability: ElementNameMock,
21    pid: '[PC preview] unknow pid',
22    uid: '[PC preview] unknow uid',
23    processName: '[PC preview] unknow processName',
24    startTime: '[PC preview] unknow startTime',
25    AbilityStateMock: '[PC preview] unknow abilityStateMock'
26  }
27  const ElementNameMock = {
28    deviceId: '[PC preview] unknow deviceId',
29    bundleName: '[PC preview] unknow bundleName',
30    abilityName: '[PC preview] unknow abilityName',
31    uri: '[PC preview] unknow uri',
32    shortName: '[PC preview] unknow shortName'
33  }
34  const ExtensionRunningInfoMock = {
35    extension: ElementNameMock,
36    pid: '[PC preview] unknow pid',
37    uid: '[PC preview] unknow uid',
38    processName: '[PC preview] unknow processName',
39    startTime: '[PC preview] unknow startTime',
40    clientPackage: [paramMock.paramStringMock],
41    ExtensionAbilityTypeMock: '[PC preview] unknow ExtensionAbilityTypeMock',
42  }
43  const abilityManager = {
44    updateConfiguration: function (...args) {
45      console.warn('abilityManager.updateConfiguration interface mocked in the Previewer. How this interface works on the' +
46        ' Previewer may be different from that on a real device.');
47      const len = args.length;
48      if (typeof args[len - 1] === 'function') {
49        args[len - 1].call(this, paramMock.businessErrorMock);
50      } else {
51        return new Promise((resolve) => {
52          resolve();
53        });
54      }
55    },
56    getAbilityRunningInfos: function (...args) {
57      console.warn('abilityManager.getAbilityRunningInfos interface mocked in the Previewer. How this interface works on the' +
58        ' Previewer may be different from that on a real device.');
59      const len = args.length;
60      if (typeof args[len - 1] === 'function') {
61        args[len - 1].call(this, paramMock.businessErrorMock, [AbilityRunningInfoMock]);
62      } else {
63        return new Promise((resolve) => {
64          resolve([AbilityRunningInfoMock]);
65        });
66      }
67    },
68    getExtensionRunningInfos: function (...args) {
69      console.warn('abilityManager.getExtensionRunningInfos interface mocked in the Previewer. How this interface works on the' +
70        ' Previewer may be different from that on a real device.');
71      const len = args.length;
72      if (typeof args[len - 1] === 'function') {
73        args[len - 1].call(this, paramMock.businessErrorMock, [ExtensionRunningInfoMock]);
74      } else {
75        return new Promise((resolve) => {
76          resolve([ExtensionRunningInfoMock]);
77        });
78      }
79    }
80  }
81  return abilityManager
82}