Bug 1357998 - Make editing tests independent of default defaultParagraphSeparator; r?masayuki draft
authorAryeh Gregor <ayg@aryeh.name>
Thu, 20 Apr 2017 21:10:23 +0300
changeset 566006 19faae81428d287a6a3f7664320a76c0168aa248
parent 566005 b5c73ef80670a06d1b53c12ccf9ef55a0622da79
child 625176 18607f3a24df45f3beb4bcd27a33918ca5bb730a
push id55063
push userbmo:ayg@aryeh.name
push dateThu, 20 Apr 2017 18:16:44 +0000
reviewersmasayuki
bugs1357998
milestone55.0a1
Bug 1357998 - Make editing tests independent of default defaultParagraphSeparator; r?masayuki Now that this is a pref that is different in different versions, tests have to work no matter what the pref's value is. For tests that actually tested line-breaking-related behavior, I made them test all three separator values. For tests that tested something else and only incidentally depend on the default paragraph separator, I set defaultParagraphSeparator to "div". MozReview-Commit-ID: 8m7eoFRXpEy
editor/libeditor/tests/test_bug430392.html
editor/libeditor/tests/test_bug449243.html
editor/libeditor/tests/test_bug551704.html
editor/libeditor/tests/test_bug674861.html
editor/libeditor/tests/test_bug780035.html
editor/libeditor/tests/test_bug832025.html
editor/libeditor/tests/test_htmleditor_keyevent_handling.html
editor/libeditor/tests/test_inline_style_cache.html
testing/web-platform/meta/editing/run/delete.html.ini
testing/web-platform/meta/editing/run/formatblock.html.ini
testing/web-platform/meta/editing/run/forwarddelete.html.ini
testing/web-platform/meta/editing/run/inserthorizontalrule.html.ini
testing/web-platform/meta/editing/run/inserthtml.html.ini
testing/web-platform/meta/editing/run/insertimage.html.ini
testing/web-platform/meta/editing/run/insertlinebreak.html.ini
testing/web-platform/meta/editing/run/insertorderedlist.html.ini
testing/web-platform/meta/editing/run/insertparagraph.html.ini
testing/web-platform/meta/editing/run/inserttext.html.ini
testing/web-platform/meta/editing/run/insertunorderedlist.html.ini
testing/web-platform/meta/editing/run/justifycenter.html.ini
testing/web-platform/meta/editing/run/justifyfull.html.ini
testing/web-platform/meta/editing/run/justifyleft.html.ini
testing/web-platform/meta/editing/run/justifyright.html.ini
testing/web-platform/meta/editing/run/misc.html.ini
testing/web-platform/meta/editing/run/outdent.html.ini
--- a/editor/libeditor/tests/test_bug430392.html
+++ b/editor/libeditor/tests/test_bug430392.html
@@ -34,17 +34,19 @@ function test() {
   var tests = [["adding returns", () => {
     getSelection().collapse(edit.firstChild, 0);
     synthesizeKey("VK_RIGHT", {});
     synthesizeKey("VK_RIGHT", {});
     synthesizeKey("VK_RETURN", {});
     synthesizeKey("VK_RETURN", {});
     synthesizeKey("VK_BACK_SPACE", {});
     synthesizeKey("VK_BACK_SPACE", {});
-  }, " A; B ; C "],
+  // For some reason this test fails if the separator is not "br"
+  }, () => document.queryCommandValue("defaultParagraphSeparator") == "br"
+           ?  undefined : " A; B ; C "],
   ["adding shift-returns", () => {
     getSelection().collapse(edit.firstChild, 0);
     synthesizeKey("VK_RIGHT", {});
     synthesizeKey("VK_RIGHT", {});
     synthesizeKey("VK_RETURN", {shiftKey: true});
     synthesizeKey("VK_RETURN", {shiftKey: true});
     synthesizeKey("VK_BACK_SPACE", {});
     synthesizeKey("VK_BACK_SPACE", {});
@@ -80,30 +82,38 @@ function test() {
       var cmd = Array.isArray(item) ? item[0] : item;
       var param = Array.isArray(item) ? item[1] : "";
       tests.push([cmd, () => { document.execCommand(cmd, false, param) },
                   " A ;  ; BC "]);
    });
   tests.push(["indent", () => { document.execCommand("indent") },
               "  ;  ;  ABC"]);
   tests.forEach(arr => {
-    edit.innerHTML = html;
-    edit.focus();
-    getSelection().selectAllChildren(edit);
-    arr[1]();
-    if (2 < arr.length) {
-      todo_is(edit.textContent, expectedText,
-              arr[0] + " should not change text");
-      if (edit.textContent !== expectedText && edit.textContent !== arr[2]) {
-        is(edit.textContent, arr[2],
-           arr[0] + " changed to different failure");
+    ["div", "br", "p"].forEach(sep => {
+      document.execCommand("defaultParagraphSeparator", false, sep);
+
+      var expectedFailText = typeof arr[2] == "function" ? arr[2]() : arr[2];
+
+      edit.innerHTML = html;
+      edit.focus();
+      getSelection().selectAllChildren(edit);
+      arr[1]();
+      if (typeof expectedFailText != "undefined") {
+        todo_is(edit.textContent, expectedText,
+                arr[0] + " should not change text (" + sep + ")");
+        if (edit.textContent !== expectedText &&
+            edit.textContent !== expectedFailText) {
+          is(edit.textContent, expectedFailText,
+             arr[0] + " changed to different failure (" + sep + ")");
+        }
+      } else {
+        is(edit.textContent, expectedText,
+           arr[0] + " should not change text (" + sep + ")");
       }
-    } else {
-      is(edit.textContent, expectedText, arr[0] + " should not change text");
-    }
+    });
   });
 
   SimpleTest.finish();
 }
 
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(test);
 
--- a/editor/libeditor/tests/test_bug449243.html
+++ b/editor/libeditor/tests/test_bug449243.html
@@ -66,22 +66,18 @@ function undo(nbKeyPresses) {
 function SameTypeAsPreviousSibling(element) {
   var sibling = element.previousSibling;
   while (sibling && sibling.nodeType != Node.ELEMENT_NODE) {
     sibling = element.previousSibling;
   }
   return (element.nodeName == sibling.nodeName);
 }
 
-function isDiv(element) {
-  return element.nodeName.toLowerCase() == "div";
-}
-
-function isParagraph(element) {
-  return element.nodeName.toLowerCase() == "p";
+function isType(element, type) {
+  return element.nodeName.toLowerCase() == type;
 }
 
 function runTests() {
   const content = document.querySelector("[contenteditable]");
   const header = content.querySelector("h2");
   const ulItem = content.querySelector("ul > li:last-child");
   const olItem = content.querySelector("ol > li:last-child");
   content.focus();
@@ -111,46 +107,39 @@ function runTests() {
     "Pressing [Return] at the middle of an unordered list item " + 
     "should create another list item.");
   split(olItem, CARET_MIDDLE, 2);
   ok(SameTypeAsPreviousSibling(olItem),
     "Pressing [Return] at the middle of an ordered list item " + 
     "should create another list item.");
   undo(3);
 
-  // end of selection: create a new paragraph
-  split(header, CARET_END, 1);
-  ok(isDiv(content.querySelector("h2+*")),
-    "Pressing [Return] at the end of a header " +
-    "should create a new div.");
-  split(ulItem, CARET_END, 2);
-  ok(isDiv(content.querySelector("ul+*")),
-    "Pressing [Return] twice at the end of an unordered list item " +
-    "should create a new div.");
-  split(olItem, CARET_END, 2);
-  ok(isDiv(content.querySelector("ol+*")),
-    "Pressing [Return] twice at the end of an ordered list item " +
-    "should create a new div.");
-  undo(3);
+  // end of selection: create a new div/paragraph
+  function testEndOfSelection(expected) {
+    split(header, CARET_END, 1);
+    ok(isType(content.querySelector("h2+*"), expected),
+      "Pressing [Return] at the end of a header " +
+      "should create a new " + expected);
+    split(ulItem, CARET_END, 2);
+    ok(isType(content.querySelector("ul+*"), expected),
+      "Pressing [Return] twice at the end of an unordered list item " +
+      "should create a new " + expected);
+    split(olItem, CARET_END, 2);
+    ok(isType(content.querySelector("ol+*"), expected),
+      "Pressing [Return] twice at the end of an ordered list item " +
+      "should create a new " + expected);
+    undo(3);
+  }
 
-  // now with defaultParagraphSeparator = p
+  document.execCommand("defaultParagraphSeparator", false, "div");
+  testEndOfSelection("div");
   document.execCommand("defaultParagraphSeparator", false, "p");
-  split(header, CARET_END, 1);
-  ok(isParagraph(content.querySelector("h2+*")),
-    "Pressing [Return] at the end of a header " + 
-    "should create a new paragraph.");
-  split(ulItem, CARET_END, 2);
-  ok(isParagraph(content.querySelector("ul+*")),
-    "Pressing [Return] twice at the end of an unordered list item " + 
-    "should create a new paragraph.");
-  split(olItem, CARET_END, 2);
-  ok(isParagraph(content.querySelector("ol+*")),
-    "Pressing [Return] twice at the end of an ordered list item " + 
-    "should create a new paragraph.");
-  undo(3);
+  testEndOfSelection("p");
+  document.execCommand("defaultParagraphSeparator", false, "br");
+  testEndOfSelection("p");
 
   // done
   SimpleTest.finish();
 }
 
 </script>
 </pre>
 </body>
--- a/editor/libeditor/tests/test_bug551704.html
+++ b/editor/libeditor/tests/test_bug551704.html
@@ -68,16 +68,18 @@ function typeBCDEF_chars() {
   synthesizeKey("d", {});
   synthesizeKey("e", {});
   synthesizeKey("f", {});
 }
 
 /** Test for Bug 551704 **/
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
+  document.execCommand("defaultParagraphSeparator", false, "div");
+
   var preformatted = document.getElementById("preformatted");
   is(preformatted.innerHTML, "a\nb", "No BR node should be injected for preformatted editable fields");
 
   var iframe = document.createElement("iframe");
   iframe.addEventListener("load", function() {
     var sel = iframe.contentWindow.getSelection();
     is(sel.rangeCount, 0, "There should be no range in the selection initially");
     iframe.contentDocument.designMode = "on";
--- a/editor/libeditor/tests/test_bug674861.html
+++ b/editor/libeditor/tests/test_bug674861.html
@@ -144,42 +144,51 @@ function runTests() {
   is(dl.querySelectorAll("dt").length, 5,
     "Two new <dt> elements should have been created.");
 
   // -----------------------------------------------------------------------
   // #test2: lists in editable blocks should be splittable
   // -----------------------------------------------------------------------
   test2.focus();
 
-  // bullet list
-  try2split(test2.querySelector("ul li"), CARET_END);
-  is(test2.querySelectorAll("ul").length, 2,
-    "The <ul> list should have been splitted.");
-  is(test2.querySelectorAll("ul li").length, 3,
-    "No new <li> element should have been created.");
-  is(test2.querySelectorAll("ul+div").length, 1,
-    "A new div should have been created in the <ul>.");
+  function testNewParagraph(expected) {
+    // bullet list
+    try2split(test2.querySelector("ul li"), CARET_END);
+    is(test2.querySelectorAll("ul").length, 2,
+      "The <ul> list should have been splitted.");
+    is(test2.querySelectorAll("ul li").length, 3,
+      "No new <li> element should have been created.");
+    is(test2.querySelectorAll("ul+" + expected).length, 1,
+      "A new " + expected + " should have been created in the <ul>.");
 
-  // ordered list
-  try2split(test2.querySelector("ol li"), CARET_END);
-  is(test2.querySelectorAll("ol").length, 2,
-    "The <ol> list should have been splitted.");
-  is(test2.querySelectorAll("ol li").length, 3,
-    "No new <li> element should have been created.");
-  is(test2.querySelectorAll("ol+div").length, 1,
-    "A new div should have been created in the <ol>.");
+    // ordered list
+    try2split(test2.querySelector("ol li"), CARET_END);
+    is(test2.querySelectorAll("ol").length, 2,
+      "The <ol> list should have been splitted.");
+    is(test2.querySelectorAll("ol li").length, 3,
+      "No new <li> element should have been created.");
+    is(test2.querySelectorAll("ol+" + expected).length, 1,
+      "A new " + expected + " should have been created in the <ol>.");
 
-  // definition list
-  try2split(test2.querySelector("dl dd"), CARET_END);
-  is(test2.querySelectorAll("dl").length, 2,
-    "The <dl> list should have been splitted.");
-  is(test2.querySelectorAll("dt").length, 3,
-    "No new <dt> element should have been created.");
-  is(test2.querySelectorAll("dl+div").length, 1,
-    "A new div should have been created in the <dl>.");
+    // definition list
+    try2split(test2.querySelector("dl dd"), CARET_END);
+    is(test2.querySelectorAll("dl").length, 2,
+      "The <dl> list should have been splitted.");
+    is(test2.querySelectorAll("dt").length, 3,
+      "No new <dt> element should have been created.");
+    is(test2.querySelectorAll("dl+" + expected).length, 1,
+      "A new " + expected + " should have been created in the <dl>.");
+  }
+
+  document.execCommand("defaultParagraphSeparator", false, "div");
+  testNewParagraph("div");
+  document.execCommand("defaultParagraphSeparator", false, "p");
+  testNewParagraph("p");
+  document.execCommand("defaultParagraphSeparator", false, "br");
+  testNewParagraph("p");
 
   // done
   SimpleTest.finish();
 }
 </script>
 </pre>
 </body>
 </html>
--- a/editor/libeditor/tests/test_bug780035.html
+++ b/editor/libeditor/tests/test_bug780035.html
@@ -8,15 +8,16 @@ https://bugzilla.mozilla.org/show_bug.cg
 <link rel="stylesheet" href="/tests/SimpleTest/test.css">
 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=780035">Mozilla Bug 780035</a>
 <div contenteditable style="font-size: 13.3333px"></div>
 <script>
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
   document.querySelector("div").focus();
   document.execCommand("stylewithcss", false, true);
+  document.execCommand("defaultParagraphSeparator", false, "div");
   sendKey("RETURN");
   sendChar("x");
   is(document.querySelector("div").innerHTML,
      "<div><br></div><div>x<br></div>", "No <font> tag should be generated");
   SimpleTest.finish();
 });
 </script>
--- a/editor/libeditor/tests/test_bug832025.html
+++ b/editor/libeditor/tests/test_bug832025.html
@@ -15,16 +15,17 @@ https://bugzilla.mozilla.org/show_bug.cg
 <script type="application/javascript">
 
 /**
  * Test for Bug 832025
  *
  */
 
 document.execCommand("stylewithcss", false, "true");
+document.execCommand("defaultParagraphSeparator", false, "div");
 var test = document.getElementById("test");
 test.focus();
 
 // place caret at end of editable area
 var sel = getSelection();
 sel.collapse(test, test.childNodes.length);
 
 // make it a H1
--- a/editor/libeditor/tests/test_htmleditor_keyevent_handling.html
+++ b/editor/libeditor/tests/test_htmleditor_keyevent_handling.html
@@ -27,16 +27,17 @@ var htmlEditor = document.getElementById
 
 const kIsMac = navigator.platform.indexOf("Mac") == 0;
 const kIsWin = navigator.platform.indexOf("Win") == 0;
 const kIsLinux = navigator.platform.indexOf("Linux") == 0 || navigator.platform.indexOf("SunOS") == 0 ;
 
 function runTests()
 {
   document.execCommand("stylewithcss", false, "true");
+  document.execCommand("defaultParagraphSeparator", false, "div");
 
   var fm = SpecialPowers.Cc["@mozilla.org/focus-manager;1"].
     getService(SpecialPowers.Ci.nsIFocusManager);
 
   var capturingPhase = { fired: false, prevented: false };
   var bubblingPhase = { fired: false, prevented: false };
 
   var listener = {
--- a/editor/libeditor/tests/test_inline_style_cache.html
+++ b/editor/libeditor/tests/test_inline_style_cache.html
@@ -16,16 +16,18 @@
 <pre id="test">
 
 <script class="testbody" type="application/javascript">
 SimpleTest.waitForExplicitFinish();
 SimpleTest.waitForFocus(function() {
   var editor = document.getElementById("editor");
   editor.focus();
 
+  document.execCommand("defaultParagraphSeparator", false, "div");
+
   var selection = window.getSelection();
 
   // #01-01 Typing something after setting some styles should insert some nodes to insert text.
   editor.innerHTML = "beforeafter";
   selection.collapse(editor.firstChild, "before".length);
   document.execCommand("bold");
   document.execCommand("italic");
   document.execCommand("strikethrough");
--- a/testing/web-platform/meta/editing/run/delete.html.ini
+++ b/testing/web-platform/meta/editing/run/delete.html.ini
@@ -1,10 +1,11 @@
 [delete.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["stylewithcss","true"\],["delete",""\]\] "foo<span style=display:none>bar</span>[\]baz" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["delete",""\]\] "foo<span style=display:none>bar</span>[\]baz" compare innerHTML]
     expected: FAIL
 
   [[["delete",""\]\] "foo<script>bar</script>[\]baz" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/formatblock.html.ini
+++ b/testing/web-platform/meta/editing/run/formatblock.html.ini
@@ -1,10 +1,11 @@
 [formatblock.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["defaultparagraphseparator","div"\],["formatblock","<div>"\]\] "foo[\]bar<p>extra" queryCommandValue("formatblock") after]
     expected: FAIL
 
   [[["defaultparagraphseparator","p"\],["formatblock","<div>"\]\] "foo[\]bar<p>extra" queryCommandValue("formatblock") after]
     expected: FAIL
 
   [[["defaultparagraphseparator","div"\],["formatblock","<div>"\]\] "<span>foo</span>{}<span>bar</span><p>extra" queryCommandValue("formatblock") after]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/forwarddelete.html.ini
+++ b/testing/web-platform/meta/editing/run/forwarddelete.html.ini
@@ -1,10 +1,11 @@
 [forwarddelete.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["forwarddelete",""\]\] "foo[\]": execCommand("forwarddelete", false, "") return value]
     expected: FAIL
 
   [[["forwarddelete",""\]\] "<span>foo[\]</span>": execCommand("forwarddelete", false, "") return value]
     expected: FAIL
 
   [[["forwarddelete",""\]\] "<p>foo[\]</p>": execCommand("forwarddelete", false, "") return value]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/inserthorizontalrule.html.ini
+++ b/testing/web-platform/meta/editing/run/inserthorizontalrule.html.ini
@@ -1,10 +1,11 @@
 [inserthorizontalrule.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["inserthorizontalrule",""\]\] "<span>foo[</span><span>\]bar</span>" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","true"\],["inserthorizontalrule",""\]\] "<b id=abc>foo[\]bar</b>" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["inserthorizontalrule",""\]\] "<b id=abc>foo[\]bar</b>" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/inserthtml.html.ini
+++ b/testing/web-platform/meta/editing/run/inserthtml.html.ini
@@ -1,10 +1,11 @@
 [inserthtml.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["stylewithcss","true"\],["inserthtml","ab<b>c</b>d"\]\] "[foo<span style=color:#aBcDeF>bar\]</span>baz" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["inserthtml","ab<b>c</b>d"\]\] "[foo<span style=color:#aBcDeF>bar\]</span>baz" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","true"\],["inserthtml","ab<b>c</b>d"\]\] "{foo<span style=color:#aBcDeF>bar}</span>baz" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/insertimage.html.ini
+++ b/testing/web-platform/meta/editing/run/insertimage.html.ini
@@ -1,10 +1,11 @@
 [insertimage.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["insertimage","/img/lion.svg"\]\] "foo{<span style=color:#aBcDeF>bar</span>}baz" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","true"\],["insertimage","/img/lion.svg"\]\] "[foo<span style=color:#aBcDeF>bar\]</span>baz" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["insertimage","/img/lion.svg"\]\] "[foo<span style=color:#aBcDeF>bar\]</span>baz" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/insertlinebreak.html.ini
+++ b/testing/web-platform/meta/editing/run/insertlinebreak.html.ini
@@ -1,10 +1,11 @@
 [insertlinebreak.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["insertlinebreak",""\]\] "<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<tr><td>baz<td>quz</table>" compare innerHTML]
     expected: FAIL
 
   [[["insertlinebreak",""\]\] "<xmp>foo[\]bar</xmp>" compare innerHTML]
     expected: FAIL
 
   [[["insertlinebreak",""\]\] "<script>foo[\]bar</script>baz" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/insertorderedlist.html.ini
+++ b/testing/web-platform/meta/editing/run/insertorderedlist.html.ini
@@ -1,10 +1,11 @@
 [insertorderedlist.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["insertorderedlist",""\]\] "foo<br>[bar\]" compare innerHTML]
     expected: FAIL
 
   [[["insertorderedlist",""\]\] "[foo<ul><li>bar\]</ul>baz" queryCommandIndeterm("insertorderedlist") before]
     expected: FAIL
 
   [[["insertorderedlist",""\]\] "foo<ul><li>[bar</ul>baz\]" queryCommandIndeterm("insertorderedlist") before]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/insertparagraph.html.ini
+++ b/testing/web-platform/meta/editing/run/insertparagraph.html.ini
@@ -1,10 +1,11 @@
 [insertparagraph.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["defaultparagraphseparator","div"\],["insertparagraph",""\]\] "<table><tr><td>[foo<td>bar\]<tr><td>baz<td>quz</table>" compare innerHTML]
     expected: FAIL
 
   [[["defaultparagraphseparator","p"\],["insertparagraph",""\]\] "<table><tr><td>[foo<td>bar\]<tr><td>baz<td>quz</table>" compare innerHTML]
     expected: FAIL
 
   [[["insertparagraph",""\]\] "<table><tbody data-start=0 data-end=1><tr><td>foo<td>bar<tr><td>baz<td>quz</table>" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/inserttext.html.ini
+++ b/testing/web-platform/meta/editing/run/inserttext.html.ini
@@ -1,10 +1,11 @@
 [inserttext.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["inserttext","\\t"\]\] "foo[\]bar" compare innerHTML]
     expected: FAIL
 
   [[["defaultparagraphseparator","div"\],["inserttext","\\n"\]\] "foo[\]bar" compare innerHTML]
     expected: FAIL
 
   [[["defaultparagraphseparator","p"\],["inserttext","\\n"\]\] "foo[\]bar" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/insertunorderedlist.html.ini
+++ b/testing/web-platform/meta/editing/run/insertunorderedlist.html.ini
@@ -1,10 +1,11 @@
 [insertunorderedlist.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["insertunorderedlist",""\]\] "foo<br>[bar\]" compare innerHTML]
     expected: FAIL
 
   [[["insertunorderedlist",""\]\] "[foo<ol><li>bar\]</ol>baz" queryCommandIndeterm("insertunorderedlist") before]
     expected: FAIL
 
   [[["insertunorderedlist",""\]\] "foo<ol><li>[bar</ol>baz\]" queryCommandIndeterm("insertunorderedlist") before]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/justifycenter.html.ini
+++ b/testing/web-platform/meta/editing/run/justifycenter.html.ini
@@ -1,10 +1,11 @@
 [justifycenter.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["stylewithcss","false"\],["defaultparagraphseparator","div"\],["justifycenter",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["defaultparagraphseparator","p"\],["justifycenter",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["defaultparagraphseparator","div"\],["justifycenter",""\]\] "<span>foo</span>{}<span>bar</span><p>extra" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/justifyfull.html.ini
+++ b/testing/web-platform/meta/editing/run/justifyfull.html.ini
@@ -1,10 +1,11 @@
 [justifyfull.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["stylewithcss","false"\],["defaultparagraphseparator","div"\],["justifyfull",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["defaultparagraphseparator","p"\],["justifyfull",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["defaultparagraphseparator","div"\],["justifyfull",""\]\] "<span>foo</span>{}<span>bar</span><p>extra" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/justifyleft.html.ini
+++ b/testing/web-platform/meta/editing/run/justifyleft.html.ini
@@ -1,10 +1,11 @@
 [justifyleft.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["justifyleft",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["justifyleft",""\]\] "<span>foo</span>{}<span>bar</span><p>extra" compare innerHTML]
     expected: FAIL
 
   [[["justifyleft",""\]\] "<span>foo[</span><span>\]bar</span><p>extra" compare innerHTML]
     expected: FAIL
--- a/testing/web-platform/meta/editing/run/justifyright.html.ini
+++ b/testing/web-platform/meta/editing/run/justifyright.html.ini
@@ -1,10 +1,11 @@
 [justifyright.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["stylewithcss","false"\],["defaultparagraphseparator","div"\],["justifyright",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["defaultparagraphseparator","p"\],["justifyright",""\]\] "foo[\]bar<p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["defaultparagraphseparator","div"\],["justifyright",""\]\] "<span>foo</span>{}<span>bar</span><p>extra" compare innerHTML]
     expected: FAIL
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/meta/editing/run/misc.html.ini
@@ -0,0 +1,3 @@
+[misc.html]
+  type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
--- a/testing/web-platform/meta/editing/run/outdent.html.ini
+++ b/testing/web-platform/meta/editing/run/outdent.html.ini
@@ -1,10 +1,11 @@
 [outdent.html]
   type: testharness
+  prefs: [editor.use_div_for_default_newlines: true]
   [[["stylewithcss","true"\],["outdent",""\]\] "<blockquote style=\\"margin-right: 0px;\\" dir=\\"ltr\\"><p>foo[bar\]</p><p>baz</p></blockquote><p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","false"\],["outdent",""\]\] "<blockquote style=\\"margin-right: 0px;\\" dir=\\"ltr\\"><p>foo[bar\]</p><p>baz</p></blockquote><p>extra" compare innerHTML]
     expected: FAIL
 
   [[["stylewithcss","true"\],["defaultparagraphseparator","div"\],["outdent",""\]\] "<blockquote class=\\"webkit-indent-blockquote\\" style=\\"margin: 0 0 0 40px; border: none; padding: 0px;\\"><p>foo[bar\]</p><p>baz</p></blockquote><p>extra" compare innerHTML]
     expected: FAIL