1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
6 /* import-globals-from ../file_ime_state_test_helper.js */
7 /* import-globals-from ../file_test_ime_state_on_input_type_change.js */
9 Services.scriptloader.loadSubScript(
10 "chrome://mochitests/content/browser/widget/tests/browser/file_ime_state_test_helper.js",
13 Services.scriptloader.loadSubScript(
14 "chrome://mochitests/content/browser/widget/tests/browser/file_test_ime_state_on_input_type_change.js",
17 add_task(async function () {
18 await BrowserTestUtils.withNewTab(
19 "https://example.com/browser/widget/tests/browser/file_ime_state_tests.html",
20 async function (browser) {
21 const tipWrapper = new TIPWrapper(window);
23 tipWrapper.isAvailable(),
24 "TextInputProcessor should've been initialized"
29 srcIndex < IMEStateOnInputTypeChangeTester.numberOfTests;
32 const tester = new IMEStateOnInputTypeChangeTester(srcIndex);
35 destIndex < IMEStateOnInputTypeChangeTester.numberOfTests;
38 const expectedResultBefore = await SpecialPowers.spawn(
40 [srcIndex, destIndex],
41 (aSrcIndex, aDestIndex) => {
42 content.wrappedJSObject.runner =
43 content.wrappedJSObject.createIMEStateOnInputTypeChangeTester(
46 return content.wrappedJSObject.runner.prepareToRun(
53 if (expectedResultBefore === false) {
56 tester.checkBeforeRun(expectedResultBefore, tipWrapper);
57 const expectedResult = await SpecialPowers.spawn(browser, [], () => {
58 return content.wrappedJSObject.runner.run();
60 tester.checkResult(expectedResultBefore, expectedResult);
61 await SpecialPowers.spawn(browser, [], () => {
62 return content.wrappedJSObject.runner.clear();
64 tipWrapper.clearFocusBlurNotifications();