!627 新增输入法框架extension js接口API mock

Merge pull request !627 from 赵凌岚/master
This commit is contained in:
openharmony_ci 2022-08-09 09:38:12 +00:00 committed by Gitee
commit ffd5926438
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
3 changed files with 87 additions and 0 deletions

View File

@ -143,6 +143,7 @@ import { mockDisplay } from './ohos_display'
import { mockHuks } from './ohos_security_huks'
import { mockInputMethod } from './ohos_inputmethod'
import { mockInputMethodEngine } from './ohos_inputmethodengine'
import { mockInputMethodExtensionAbility } from "./ohos_inputmethodextensionability";
import { mockConnection } from './ohos_net_connection'
import { mockHttp } from './ohos_net_http'
import { mockSocket } from './ohos_net_socket'
@ -272,6 +273,8 @@ export function mockRequireNapiFun() {
return mockInputMethodEngine();
case "inputmethod":
return mockInputMethod();
case "inputmethodextensionability":
return mockInputMethodExtensionAbility();
case "security.huks":
return mockHuks();
case "display":

View File

@ -0,0 +1,35 @@
/*
* Copyright (c) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { InputMethodExtensionContextClass } from "./ohos_inputmethodextensioncontext"
export function mockInputMethodExtensionAbility() {
const InputMethodExtensionAbilityClass = class InputMethodExtensionAbility {
constructor() {
console.warn('InputMethodExtensionAbility.constructor interface mocked in the Previewer. How this interface works on' +
' the Previewer may be different from that on a real device.');
this.context = new InputMethodExtensionContextClass();
this.onCreate = function (...args) {
console.warn("InputMethodExtensionAbility.onCreate interface mocked in the Previewer. How this interface works on the Previewer" +
" may be different from that on a real device.")
};
this.onDestroy = function () {
console.warn("InputMethodExtensionAbility.onDestroy interface mocked in the Previewer. How this interface works on the Previewer" +
" may be different from that on a real device.")
};
}
}
return new InputMethodExtensionAbilityClass();
}

View File

@ -0,0 +1,49 @@
/*
* Copyright (c) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { paramMock } from "../utils"
import { ExtensionContextClass } from "./application/ExtensionContext"
export const InputMethodExtensionContextClass = class InputMethodExtensionContext extends ExtensionContextClass {
constructor() {
super();
console.warn("InputMethodExtensionContext.constructor interface mocked in the Previewer. How this interface works on the Previewer" +
" may be different from that on a real device.")
this.startAbility = function (...args) {
console.warn("InputMethodExtensionContext.startAbility interface mocked in the Previewer." +
" How this interface works on the Previewer may be different from that on a real device.")
const len = args.length
if (len > 0 && typeof args[len - 1] === 'function') {
args[len - 1].call(this, paramMock.businessErrorMock);
} else {
return new Promise((resolve, reject) => {
resolve();
})
}
};
this.terminateSelf = function (...args) {
console.warn("InputMethodExtensionContext.terminateSelf interface mocked in the Previewer." +
" How this interface works on the Previewer may be different from that on a real device.")
const len = args.length
if (len > 0 && typeof args[len - 1] === 'function') {
args[len - 1].call(this, paramMock.businessErrorMock);
} else {
return new Promise((resolve, reject) => {
resolve();
})
}
};
}
};