Bug 1351074 - Part 2. Use testing-common for AsyncSpellCheckTestHelper.jsm. r=masayuki draft
authorMakoto Kato <m_kato@ga2.so-net.ne.jp>
Wed, 29 Mar 2017 15:34:49 +0900
changeset 554913 a8553684f8f106c1dfb6e2d9b51df7ebeb15275d
parent 554912 4cd803fed4f9215f5237996c83128f5434aaad88
child 554914 7915f1a71d9a16591c051bd8f50e5c77f07a937a
push id52086
push userm_kato@ga2.so-net.ne.jp
push dateMon, 03 Apr 2017 08:14:55 +0000
reviewersmasayuki
bugs1351074
milestone55.0a1
Bug 1351074 - Part 2. Use testing-common for AsyncSpellCheckTestHelper.jsm. r=masayuki TESTING_JS_MODULES uses testing-common, not gre. So we should replace gre with testing-common for mochitest. MozReview-Commit-ID: BqsS2D3IGR6
browser/base/content/test/general/contextmenu_common.js
editor/composer/test/test_async_UpdateCurrentDictionary.html
editor/composer/test/test_bug1200533.html
editor/composer/test/test_bug1204147.html
editor/composer/test/test_bug1205983.html
editor/composer/test/test_bug1209414.html
editor/composer/test/test_bug1219928.html
editor/composer/test/test_bug338427.html
editor/composer/test/test_bug678842.html
editor/composer/test/test_bug697981.html
editor/composer/test/test_bug717433.html
editor/libeditor/tests/test_bug366682.html
editor/libeditor/tests/test_bug484181.html
editor/libeditor/tests/test_bug596333.html
editor/libeditor/tests/test_bug636465.html
extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xul
extensions/spellcheck/tests/mochitest/test_bug1170484.html
extensions/spellcheck/tests/mochitest/test_bug1272623.html
layout/base/tests/bug512295-1-ref.html
layout/base/tests/bug512295-1.html
layout/base/tests/bug512295-2-ref.html
layout/base/tests/bug512295-2.html
layout/base/tests/bug923376-ref.html
layout/base/tests/bug923376.html
toolkit/content/tests/chrome/test_textbox_dictionary.xul
--- a/browser/base/content/test/general/contextmenu_common.js
+++ b/browser/base/content/test/general/contextmenu_common.js
@@ -12,17 +12,19 @@ function openContextMenuFor(element, shi
     // run on them.
     function actuallyOpenContextMenuFor() {
       lastElement = element;
       var eventDetails = { type: "contextmenu", button: 2, shiftKey: shiftkey };
       synthesizeMouse(element, 2, 2, eventDetails, element.ownerGlobal);
     }
 
     if (waitForSpellCheck) {
-      var { onSpellCheck } = SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", {});
+      var { onSpellCheck } =
+        SpecialPowers.Cu.import(
+          "resource://testing-common/AsyncSpellCheckTestHelper.jsm", {});
       onSpellCheck(element, actuallyOpenContextMenuFor);
     } else {
       actuallyOpenContextMenuFor();
     }
 }
 
 function closeContextMenu() {
     contextMenu.hidePopup();
@@ -273,17 +275,19 @@ function* test_contextmenu(selector, men
   if (options.preCheckContextMenuFn) {
     yield options.preCheckContextMenuFn();
     info("Completed preCheckContextMenuFn");
   }
 
   if (options.waitForSpellCheck) {
     info("Waiting for spell check");
     yield ContentTask.spawn(gBrowser.selectedBrowser, selector, function*(contentSelector) {
-      let {onSpellCheck} = Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", {});
+      let {onSpellCheck} =
+        Cu.import("resource://testing-common/AsyncSpellCheckTestHelper.jsm",
+                  {});
       let element = content.document.querySelector(contentSelector);
       yield new Promise(resolve => onSpellCheck(element, resolve));
       info("Spell check running");
     });
   }
 
   let awaitPopupShown = BrowserTestUtils.waitForEvent(contextMenu, "popupshown");
   yield BrowserTestUtils.synthesizeMouse(selector, options.offsetX || 0, options.offsetY || 0, {
--- a/editor/composer/test/test_async_UpdateCurrentDictionary.html
+++ b/editor/composer/test/test_async_UpdateCurrentDictionary.html
@@ -19,17 +19,18 @@ https://bugzilla.mozilla.org/show_bug.cg
 
 SimpleTest.waitForExplicitFinish();
 addLoadEvent(start);
 
 function start() {
   var textarea = document.getElementById("editor");
   textarea.focus();
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
   .onSpellCheck(textarea, function () {
     var isc = SpecialPowers.wrap(textarea).editor.getInlineSpellChecker(false);
     ok(isc, "Inline spell checker should exist after focus and spell check");
     var sc = isc.spellChecker;
     isnot(sc.GetCurrentDictionary(), lang,
           "Current dictionary should not be set yet.");
 
     // First, set the lang attribute on the textarea, call Update, and make
--- a/editor/composer/test/test_bug1200533.html
+++ b/editor/composer/test/test_bug1200533.html
@@ -96,17 +96,18 @@ var loadListener = function(evt) {
 
 function continueTest(evt) {
   var doc = evt.target.contentDocument;
   var elem = doc.getElementById(tests[loadCount][0]);
   var editor = SpecialPowers.wrap(elem).QueryInterface(SpecialPowers.Ci.nsIDOMNSEditableElement).editor;
   editor.setSpellcheckUserOverride(true);
   var inlineSpellChecker = editor.getInlineSpellChecker(true);
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
   .onSpellCheck(elem, function () {
     var spellchecker = inlineSpellChecker.spellChecker;
     try {
       var dict = spellchecker.GetCurrentDictionary();
     } catch(e) {}
 
     if (tests[loadCount][2] != "*") {
       is (dict, tests[loadCount][2], "expected " + tests[loadCount][2]);
--- a/editor/composer/test/test_bug1204147.html
+++ b/editor/composer/test/test_bug1204147.html
@@ -62,17 +62,18 @@ var loadListener = function(evt) {
   } else {
     elem = doc.getElementById('en-US');
   }
 
   var editor = SpecialPowers.wrap(elem).QueryInterface(SpecialPowers.Ci.nsIDOMNSEditableElement).editor;
   editor.setSpellcheckUserOverride(true);
   var inlineSpellChecker = editor.getInlineSpellChecker(true);
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
   .onSpellCheck(elem, function () {
     var spellchecker = inlineSpellChecker.spellChecker;
     try {
       var currentDictonary = spellchecker.GetCurrentDictionary();
     } catch(e) {}
 
     if (firstLoad) {
       firstLoad = false;
--- a/editor/composer/test/test_bug1205983.html
+++ b/editor/composer/test/test_bug1205983.html
@@ -24,18 +24,18 @@ function getMisspelledWords(editor) {
 }
 
 var elem_de;
 var editor_de;
 var selcon_de;
 var script;
 
 var onSpellCheck =
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
-               .onSpellCheck;
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm").onSpellCheck;
 
 /** Test for Bug 1205983 **/
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
   script = SpecialPowers.loadChromeScript(function() {
     var dir = Components.classes["@mozilla.org/file/directory_service;1"]
                         .getService(Components.interfaces.nsIProperties)
                         .get("CurWorkD", Components.interfaces.nsIFile);
--- a/editor/composer/test/test_bug1209414.html
+++ b/editor/composer/test/test_bug1209414.html
@@ -32,18 +32,18 @@ var script;
 /** Test for Bug 1209414 **/
 /*
  * All we want to do in this test is change the spelling using a right-click and selection from the menu.
  * This is necessary since all the other tests use SetCurrentDictionary() which doesn't reflect
  * user behaviour.
  */
 
 var onSpellCheck =
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
-               .onSpellCheck;
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm").onSpellCheck;
 
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
   script = SpecialPowers.loadChromeScript(function() {
     const Ci = Components.interfaces;
     var chromeWin = browserElement.ownerDocument.defaultView
                     .QueryInterface(Ci.nsIInterfaceRequestor)
                     .getInterface(Ci.nsIWebNavigation)
--- a/editor/composer/test/test_bug1219928.html
+++ b/editor/composer/test/test_bug1219928.html
@@ -24,18 +24,18 @@ https://bugzilla.mozilla.org/show_bug.cg
 
 /** Test for Bug 1219928 **/
 /* Very simple test to check that <style> blocks are skipped in the spell check */
 
 var spellchecker;
 
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm",
-                          window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
 
   var elem = document.getElementById('en-US');
   elem.focus();
 
   onSpellCheck(elem, function () {
     var Ci = SpecialPowers.Ci;
     var editingSession = SpecialPowers.wrap(window)
                                       .QueryInterface(Ci.nsIInterfaceRequestor)
--- a/editor/composer/test/test_bug338427.html
+++ b/editor/composer/test/test_bug338427.html
@@ -16,17 +16,18 @@ https://bugzilla.mozilla.org/show_bug.cg
 
 </div>
 <pre id="test">
 <script class="testbody" type="text/javascript">
 
 /** Test for Bug 338427 **/
 function init() {
     var onSpellCheck =
-      SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+      SpecialPowers.Cu.import(
+        "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
                    .onSpellCheck;
     var textarea = document.getElementById("editor");
     var editor = SpecialPowers.wrap(textarea).editor;
     var spellchecker = editor.getInlineSpellChecker(true);
     spellchecker.enableRealTimeSpell = true;
     textarea.focus();
 
     onSpellCheck(textarea, function () {
--- a/editor/composer/test/test_bug678842.html
+++ b/editor/composer/test/test_bug678842.html
@@ -55,17 +55,18 @@ var loadListener = function(evt) {
   }
 
   var doc = evt.target.contentDocument;
   var elem = doc.getElementById('textarea');
   var editor = SpecialPowers.wrap(elem).QueryInterface(SpecialPowers.Ci.nsIDOMNSEditableElement).editor;
   editor.setSpellcheckUserOverride(true);
   var inlineSpellChecker = editor.getInlineSpellChecker(true);
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
   .onSpellCheck(elem, function () {
     var spellchecker = inlineSpellChecker.spellChecker;
     try {
       var currentDictonary = spellchecker.GetCurrentDictionary();
     } catch(e) {}
 
     if (!currentDictonary) {
       spellchecker.SetCurrentDictionary('en-US');
--- a/editor/composer/test/test_bug697981.html
+++ b/editor/composer/test/test_bug697981.html
@@ -23,17 +23,18 @@ function getMisspelledWords(editor) {
   return editor.selectionController.getSelection(SpecialPowers.Ci.nsISelectionController.SELECTION_SPELLCHECK).toString();
 }
 
 var elem_de;
 var editor_de;
 var script;
 
 var onSpellCheck =
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
                .onSpellCheck;
 
 /** Test for Bug 697981 **/
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
   script = SpecialPowers.loadChromeScript(function() {
     var dir = Components.classes["@mozilla.org/file/directory_service;1"]
                         .getService(Components.interfaces.nsIProperties)
--- a/editor/composer/test/test_bug717433.html
+++ b/editor/composer/test/test_bug717433.html
@@ -57,17 +57,18 @@ var loadListener = function(evt) {
   }
 
   var doc = evt.target.contentDocument;
   var elem = doc.getElementById('textarea');
   var editor = SpecialPowers.wrap(elem).QueryInterface(SpecialPowers.Ci.nsIDOMNSEditableElement).editor;
   editor.setSpellcheckUserOverride(true);
   var inlineSpellChecker = editor.getInlineSpellChecker(true);
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
   .onSpellCheck(elem, function () {
     var spellchecker = inlineSpellChecker.spellChecker;
     try {
       var currentDictonary = spellchecker.GetCurrentDictionary();
     } catch(e) {}
 
     if (firstLoad) {
       firstLoad = false;
--- a/editor/libeditor/tests/test_bug366682.html
+++ b/editor/libeditor/tests/test_bug366682.html
@@ -44,17 +44,18 @@ function getEditor() {
   return editingSession.getEditorForWindow(win);
 }
 
 function runTest() {
   editDoc().body.innerHTML = "<div>errror and an other errror</div>";
   gMisspeltWords = ["errror", "errror"];
   editDoc().designMode = "on";
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
                .onSpellCheck(editDoc().documentElement, evalTest);
 }
 
 function evalTest() {
   ok(isSpellingCheckOk(getEditor(), gMisspeltWords),
      "All misspellings accounted for.");
   SimpleTest.finish();
 }
--- a/editor/libeditor/tests/test_bug484181.html
+++ b/editor/libeditor/tests/test_bug484181.html
@@ -48,17 +48,18 @@ function append(str) {
   }
 }
 
 function runTest() {
   gMisspeltWords = ["haz", "cheezburger"];
   var edit = document.getElementById("edit");
   edit.focus();
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   onSpellCheck(edit, function () {
     ok(isSpellingCheckOk(getEditor(), gMisspeltWords),
        "All misspellings before editing are accounted for.");
 
     append(" becaz I'm a lulcat!");
     onSpellCheck(edit, function () {
       gMisspeltWords.push("becaz");
       gMisspeltWords.push("lulcat");
--- a/editor/libeditor/tests/test_bug596333.html
+++ b/editor/libeditor/tests/test_bug596333.html
@@ -107,17 +107,18 @@ function runOnFocus() {
   });
 }
 
 function runTest()
 {
   var edit = document.getElementById("edit");
   edit.focus();
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   onSpellCheck(edit, runOnFocus);
 }
 </script>
 </pre>
 
 <textarea id="edit">I can haz cheezburger</textarea>
 
 </body>
--- a/editor/libeditor/tests/test_bug636465.html
+++ b/editor/libeditor/tests/test_bug636465.html
@@ -6,18 +6,18 @@
 <script src="/tests/SimpleTest/WindowSnapshot.js"></script>
 <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=636465"
    target="_blank">Mozilla Bug 636465</a>
 <input id="x" value="foobarbaz" spellcheck="true" style="background-color: transparent; border: transparent;">
 <script>
 SimpleTest.waitForExplicitFinish();
 
 function runTest() {
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm",
-                          window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   var x = document.getElementById("x");
   x.focus();
   onSpellCheck(x, function () {
     x.blur();
     var spellCheckTrue = snapshotWindow(window);
     x.setAttribute("spellcheck", "false");
     var spellCheckFalse = snapshotWindow(window);
     x.setAttribute("spellcheck", "true");
--- a/extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xul
+++ b/extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xul
@@ -62,17 +62,18 @@ function RunTest() {
   hunspell.addDirectory(base);
 
   // install map dictionary
   var map = dir.clone();
   map.append("map");
   ok(map.exists());
   hunspell.addDirectory(map);
 
-  Components.utils.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm");
+  Components.utils.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm");
   onSpellCheck(textbox, function () {
 
     // test that base and map dictionaries are available
     var dicts = getDictionaryList(editor);
     isnot(dicts.indexOf("base-utf"), -1, "base is available");
     isnot(dicts.indexOf("maputf"), -1, "map is available");
 
     // select base dictionary
--- a/extensions/spellcheck/tests/mochitest/test_bug1170484.html
+++ b/extensions/spellcheck/tests/mochitest/test_bug1170484.html
@@ -8,17 +8,18 @@ https://bugzilla.mozilla.org/show_bug.cg
   <title>Test for Bug 1170484</title>
   <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
   <script type="application/javascript" src="/tests/SimpleTest/EventUtils.js"></script>
   <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
   <script type="application/javascript">
 
   /** Test for Bug 1170484 **/
   SimpleTest.waitForExplicitFinish();
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
 
   SimpleTest.waitForFocus(doTest, window);
   function doTest() {
     var mutations = 0;
     var observer = new MutationObserver(() => { mutations++; });
     observer.observe($('area'), { childList: true, characterData: true, characterDataOldValue: true, subtree: true });
     var inputEvents = 0;
     $('area').addEventListener('input', () => ++inputEvents);
--- a/extensions/spellcheck/tests/mochitest/test_bug1272623.html
+++ b/extensions/spellcheck/tests/mochitest/test_bug1272623.html
@@ -49,17 +49,18 @@ https://bugzilla.mozilla.org/show_bug.cg
         sendAsyncMessage("spellingCorrected");
       });
     });
     info("Loaded chrome script");
     yield new Promise(resolve => mm.addMessageListener('spellingCorrected', resolve));
   }
 
   add_task(function* () {
-    SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+    SpecialPowers.Cu.import(
+      "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
 
     // Wait for the page to be ready
     yield new Promise(resolve => SimpleTest.waitForFocus(() => SimpleTest.executeSoon(resolve), window));
 
     // Check that <b> tags aren't inserted inside of other <b> tags when it would change the style
     yield* performCorrection('misspelled', 'area');
     is($('area').innerHTML, "<b style=\"font-weight:normal;\">testing <span id=\"misspelled\">spellcheck</span></b>");
     is($('area').textContent, 'testing spellcheck', "Spelling corrected properly");
--- a/layout/base/tests/bug512295-1-ref.html
+++ b/layout/base/tests/bug512295-1-ref.html
@@ -7,17 +7,18 @@
   1234567890</p>
 </div>
 x
 <script>
   // Position the caret at the end of the P element
   var p = document.getElementById('p');
   var div = p.parentNode;
   div.focus();
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   onSpellCheck(div, function () {
     var sel = window.getSelection();
     sel.removeAllRanges();
     var range = document.createRange();
     range.setStart(p, p.childNodes.length);
     range.setEnd(p, p.childNodes.length);
     sel.addRange(range);
     document.documentElement.classList.remove("reftest-wait");
--- a/layout/base/tests/bug512295-1.html
+++ b/layout/base/tests/bug512295-1.html
@@ -14,17 +14,18 @@ x
   var range = document.createRange();
   var p = document.getElementById('p');
   var t = p.firstChild;
   range.setStart(t, 1);
   range.setEnd(t, 1);
   sel.addRange(range);
   p.parentNode.focus();
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   onSpellCheck(p.parentNode, function () {
     sendKey('DOWN');  // now after "1"
     sendKey('DOWN');  // now make sure we get to the end
     sendKey('DOWN');  // now make sure we get to the end
     sendKey('DOWN');  // now make sure we get to the end
     sendKey('DOWN');  // now make sure we get to the end
     sendKey('DOWN');  // now make sure we get to the end
     document.documentElement.classList.remove("reftest-wait");
--- a/layout/base/tests/bug512295-2-ref.html
+++ b/layout/base/tests/bug512295-2-ref.html
@@ -7,17 +7,18 @@ x
 <p id="p">A B CD EFG<br>
   1234567890</p>
 </div>
 <script>
   // Position the caret before the "A"
   var p = document.getElementById('p');
   var div = p.parentNode;
   div.focus();
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   onSpellCheck(div, function () {
     var sel = window.getSelection();
     sel.removeAllRanges();
     var range = document.createRange();
     range.setStart(p.firstChild, 0);
     range.setEnd(p.firstChild, 0);
     sel.addRange(range);
     document.documentElement.classList.remove("reftest-wait");
--- a/layout/base/tests/bug512295-2.html
+++ b/layout/base/tests/bug512295-2.html
@@ -14,17 +14,18 @@ x
   var range = document.createRange();
   var p = document.getElementById('p');
   var t = p.firstChild;
   range.setStart(t, 1);
   range.setEnd(t, 1);
   sel.addRange(range);
   p.parentNode.focus();
 
-  SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
   onSpellCheck(p.parentNode, function () {
     sendKey('DOWN');  // now after "1"
     sendKey('DOWN');  // now below the P element
     sendKey('UP');    // now before the "1"
     sendKey('UP');    // now before the "A"
     sendKey('UP');    // now before the "A"
     sendKey('UP');    // now before the "A"
     document.documentElement.classList.remove("reftest-wait");
--- a/layout/base/tests/bug923376-ref.html
+++ b/layout/base/tests/bug923376-ref.html
@@ -1,11 +1,11 @@
 <!doctype html>
 <html class="reftest-wait"><div contenteditable>something missspelled<br>something elsed#</div>
 <script src="/tests/SimpleTest/EventUtils.js"></script>
 <script>
 document.body.firstChild.focus();
-SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm",
-                        window);
+SpecialPowers.Cu.import(
+  "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
 onSpellCheck(document.body.firstChild, function() {
   document.documentElement.removeAttribute("class");
 });
 </script>
--- a/layout/base/tests/bug923376.html
+++ b/layout/base/tests/bug923376.html
@@ -1,15 +1,15 @@
 <!doctype html>
 <html class="reftest-wait"><div contenteditable></div>
 <script src="/tests/SimpleTest/EventUtils.js"></script>
 <script>
 var div = document.body.firstChild;
 div.focus();
-SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm",
-                        window);
+SpecialPowers.Cu.import(
+  "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
 onSpellCheck(div, function() {
   div.innerHTML = 'something missspelled<br>something elsed#';
   onSpellCheck(div, function() {
     document.documentElement.removeAttribute("class");
   });
 });
 </script>
--- a/toolkit/content/tests/chrome/test_textbox_dictionary.xul
+++ b/toolkit/content/tests/chrome/test_textbox_dictionary.xul
@@ -35,17 +35,18 @@ function leftClickElement(element)
 }
 
 function startTests() 
 {     
   textbox = document.getElementById("t1");
   textbox.focus();
   testNum = 0;
   
-  Components.utils.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm");
+  Components.utils.import(
+    "resource://testing-common/AsyncSpellCheckTestHelper.jsm");
   onSpellCheck(textbox, function () {
     bringUpContextMenu(textbox);
   });
 }
 
 function runContextMenuTest()
 {
   SimpleTest.executeSoon( function() {