Bug 1363805 - Part 4: Fix tests that need style flushing. r?heycam draft
authorWei-Cheng Pan <wpan@mozilla.com>
Tue, 12 Sep 2017 17:46:45 +0800
changeset 669669 9a61280ff3243ecd3dfc2625c95df7e4301db9e6
parent 669668 5031dfd2ef2f60255e5fc3ba624d2447d11efaed
child 669670 c6926790898a0ce8bfc9f25f0987bbc356cdd3fe
push id81392
push userbmo:wpan@mozilla.com
push dateMon, 25 Sep 2017 07:20:33 +0000
reviewersheycam
bugs1363805
milestone58.0a1
Bug 1363805 - Part 4: Fix tests that need style flushing. r?heycam Some properties will not trigger style flushing if there is no dirty ancestor. Instead, use a property which needs layout flushing will do the trick. MozReview-Commit-ID: C2lRjl5t3ry
layout/style/test/test_font_loading_api.html
layout/style/test/test_transitions.html
--- a/layout/style/test/test_font_loading_api.html
+++ b/layout/style/test/test_font_loading_api.html
@@ -158,17 +158,17 @@ function awaitRefresh() {
       requestAnimationFrame(aResolve);
     });
   }
 
   return awaitOneRefresh().then(awaitOneRefresh);
 }
 
 function flushStyles() {
-  getComputedStyle(document.body).color;
+  getComputedStyle(document.body).width;
 }
 
 function runTest() {
   // Document and window from inside the display:none iframe.
   var nframe = document.getElementById("n");
   var ndocument = nframe.contentDocument;
   var nwindow = nframe.contentWindow;
 
--- a/layout/style/test/test_transitions.html
+++ b/layout/style/test/test_transitions.html
@@ -360,17 +360,17 @@ after_test = make_pseudo_elem_test("afte
 var pseudo_element_tests = [ before_test, after_test ];
 
 // FIXME (Bug 522599): Test a transition that reverses partway through.
 
 var lateref = make_reference_p();
 var laterefcs = getComputedStyle(lateref, "");
 
 // flush style changes
-var x = getComputedStyle(div, "").color;
+var x = getComputedStyle(div, "").width;
 
 // Start our timer as close as possible to when we start the first
 // transition.
 // Do not use setInterval because once it gets off in time, it stays off.
 for (var i = 1; i <= 8; ++i) {
     setTimeout(process_future_calls, i * 1000, i);
 }
 gStartTime1 = Date.now(); // set before any transitions have started
@@ -411,17 +411,17 @@ to_none_test.style.display = "none";
 always_none_test.style.textIndent = "100px";
 for (var i in pseudo_element_tests) {
     var test = pseudo_element_tests[i];
     test.element.classList.add("started");
 }
 lateref.style.textIndent = "1000px";
 
 // flush style changes
-x = getComputedStyle(div, "").color;
+x = getComputedStyle(div, "").width;
 
 gStartTime2 = Date.now(); // set after all transitions have started
 gCurrentTime = gStartTime2;
 
 /**
  * Assert that a transition whose timing function yields the bezier
  * |func|, running from |start_time| to |end_time| (both in seconds
  * relative to when the transitions were started) should have produced