Backed out 3 changesets (bug 1351074) for reftest harness and browser_all_files_referenced.js bustage
authorPhil Ringnalda <philringnalda@gmail.com>
Sun, 02 Apr 2017 19:46:49 -0700
changeset 401360 902c526280718bae423df6fd5749c64f8ad41926
parent 401359 8cd3a3e5f3dd0c6d90b7df59f23d34ec9a4a0869
child 401361 14abe9aca211c250c557b0bccd7a3ec01ec10d44
push id1490
push usermtabara@mozilla.com
push dateMon, 31 Jul 2017 14:08:16 +0000
treeherdermozilla-release@70e32e6bf15e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1351074
milestone55.0a1
backs out941e0f9ff9a789bf98ff910bc24b48ea90ce5c75
4fdf3b87a70b1ca492fce77713766fbd0fbbfc72
586428f69838a71e468276e42d1656205f270d25
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out 3 changesets (bug 1351074) for reftest harness and browser_all_files_referenced.js bustage CLOSED TREE Backed out changeset 941e0f9ff9a7 (bug 1351074) Backed out changeset 4fdf3b87a70b (bug 1351074) Backed out changeset 586428f69838 (bug 1351074)
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
editor/moz.build
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
layout/tools/reftest/jar.mn
layout/tools/reftest/reftest-content.js
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,19 +12,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm", {});
+      var { onSpellCheck } = SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm", {});
       onSpellCheck(element, actuallyOpenContextMenuFor);
     } else {
       actuallyOpenContextMenuFor();
     }
 }
 
 function closeContextMenu() {
     contextMenu.hidePopup();
@@ -275,19 +273,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm",
-                  {});
+      let {onSpellCheck} = Cu.import("resource://gre/modules/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,18 +19,17 @@ https://bugzilla.mozilla.org/show_bug.cg
 
 SimpleTest.waitForExplicitFinish();
 addLoadEvent(start);
 
 function start() {
   var textarea = document.getElementById("editor");
   textarea.focus();
 
-  SpecialPowers.Cu.import(
-    "resource://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +96,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +62,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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://testing-common/AsyncSpellCheckTestHelper.jsm").onSpellCheck;
+  SpecialPowers.Cu.import("resource://gre/modules/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://testing-common/AsyncSpellCheckTestHelper.jsm").onSpellCheck;
+  SpecialPowers.Cu.import("resource://gre/modules/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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +16,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+      SpecialPowers.Cu.import("resource://gre/modules/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,18 +55,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +23,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +57,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +44,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm")
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +48,17 @@ function append(str) {
   }
 }
 
 function runTest() {
   gMisspeltWords = ["haz", "cheezburger"];
   var edit = document.getElementById("edit");
   edit.focus();
 
-  SpecialPowers.Cu.import(
-    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +107,17 @@ function runOnFocus() {
   });
 }
 
 function runTest()
 {
   var edit = document.getElementById("edit");
   edit.focus();
 
-  SpecialPowers.Cu.import(
-    "resource://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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/editor/moz.build
+++ b/editor/moz.build
@@ -33,14 +33,14 @@ XPIDL_SOURCES += [
 ]
 
 XPIDL_MODULE = 'editor'
 
 EXPORTS += [
     'nsEditorCID.h',
 ]
 
-TESTING_JS_MODULES += [
+EXTRA_JS_MODULES += [
     'AsyncSpellCheckTestHelper.jsm',
 ]
 
 with Files('**'):
     BUG_COMPONENT = ('Core', 'Editor')
--- a/extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xul
+++ b/extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xul
@@ -62,18 +62,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm");
+  Components.utils.import("resource://gre/modules/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,18 +8,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +49,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+    SpecialPowers.Cu.import("resource://gre/modules/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,18 +7,17 @@
   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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +14,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +7,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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,18 +14,17 @@ 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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+  SpecialPowers.Cu.import("resource://gre/modules/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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+SpecialPowers.Cu.import("resource://gre/modules/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://testing-common/AsyncSpellCheckTestHelper.jsm", window);
+SpecialPowers.Cu.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm",
+                        window);
 onSpellCheck(div, function() {
   div.innerHTML = 'something missspelled<br>something elsed#';
   onSpellCheck(div, function() {
     document.documentElement.removeAttribute("class");
   });
 });
 </script>
--- a/layout/tools/reftest/jar.mn
+++ b/layout/tools/reftest/jar.mn
@@ -1,8 +1,7 @@
 reftest.jar:
 % content reftest %content/
   content/reftest-content.js (reftest-content.js)
-  content/AsyncSpellCheckTestHelper.jsm (../../../editor/AsyncSpellCheckTestHelper.jsm)
   content/httpd.jsm (../../../netwerk/test/httpserver/httpd.js)
   content/StructuredLog.jsm (../../../testing/modules/StructuredLog.jsm)
 *  content/reftest.jsm (reftest.jsm)
   content/reftest.xul (reftest.xul)
--- a/layout/tools/reftest/reftest-content.js
+++ b/layout/tools/reftest/reftest-content.js
@@ -16,17 +16,17 @@ const PRINTSETTINGS_CONTRACTID = "@mozil
 const ENVIRONMENT_CONTRACTID = "@mozilla.org/process/environment;1";
 const NS_OBSERVER_SERVICE_CONTRACTID = "@mozilla.org/observer-service;1";
 const NS_GFXINFO_CONTRACTID = "@mozilla.org/gfx/info;1";
 
 // "<!--CLEAR-->"
 const BLANK_URL_FOR_CLEARING = "data:text/html;charset=UTF-8,%3C%21%2D%2DCLEAR%2D%2D%3E";
 
 CU.import("resource://gre/modules/Timer.jsm");
-CU.import("resource://reftest/content/AsyncSpellCheckTestHelper.jsm");
+CU.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm");
 
 var gBrowserIsRemote;
 var gIsWebRenderEnabled;
 var gHaveCanvasSnapshot = false;
 // Plugin layers can be updated asynchronously, so to make sure that all
 // layer surfaces have the right content, we need to listen for explicit
 // "MozPaintWait" and "MozPaintWaitFinished" events that signal when it's OK
 // to take snapshots. We cannot take a snapshot while the number of
--- a/toolkit/content/tests/chrome/test_textbox_dictionary.xul
+++ b/toolkit/content/tests/chrome/test_textbox_dictionary.xul
@@ -35,18 +35,17 @@ function leftClickElement(element)
 }
 
 function startTests() 
 {     
   textbox = document.getElementById("t1");
   textbox.focus();
   testNum = 0;
   
-  Components.utils.import(
-    "resource://testing-common/AsyncSpellCheckTestHelper.jsm");
+  Components.utils.import("resource://gre/modules/AsyncSpellCheckTestHelper.jsm");
   onSpellCheck(textbox, function () {
     bringUpContextMenu(textbox);
   });
 }
 
 function runContextMenuTest()
 {
   SimpleTest.executeSoon( function() {