Bug 914985. Adjust browser_tabopen_reflows test to deal with a shorter stack to the reflow and log more information when it fails. r=ttaubert
authorBoris Zbarsky <bzbarsky@mit.edu>
Wed, 11 Sep 2013 23:19:07 -0400
changeset 146743 855e0295dfdf4e0a09c3dc4c13ea381827a96228
parent 146742 9fd3e98cf2f8e8b06c1458873e8214b7d26de361
child 146744 be78e31dbc2042ca2802e227a5e49fa8e3630d02
push id25270
push useremorley@mozilla.com
push dateThu, 12 Sep 2013 11:04:52 +0000
treeherdermozilla-central@b83f6d80af5f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersttaubert
bugs914985
milestone26.0a1
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
Bug 914985. Adjust browser_tabopen_reflows test to deal with a shorter stack to the reflow and log more information when it fails. r=ttaubert
browser/base/content/test/browser_tabopen_reflows.js
--- a/browser/base/content/test/browser_tabopen_reflows.js
+++ b/browser/base/content/test/browser_tabopen_reflows.js
@@ -33,18 +33,17 @@ const EXPECTED_REFLOWS = [
     "GroupItem_getContentBounds@chrome://browser/content/tabview.js|" +
     "GroupItem_shouldStack@chrome://browser/content/tabview.js|" +
     "GroupItem_arrange@chrome://browser/content/tabview.js|" +
     "GroupItem_add@chrome://browser/content/tabview.js|" +
     "GroupItems_newTab@chrome://browser/content/tabview.js|" +
     "TabItem__reconnect@chrome://browser/content/tabview.js|" +
     "TabItem@chrome://browser/content/tabview.js|" +
     "TabItems_link@chrome://browser/content/tabview.js|" +
-    "@chrome://browser/content/tabview.js|" +
-    "addTab@chrome://browser/content/tabbrowser.xml|",
+    "@chrome://browser/content/tabview.js|",
 
   // SessionStore.getWindowDimensions()
   "ssi_getWindowDimension@resource:///modules/sessionstore/SessionStore.jsm|" +
     "@resource:///modules/sessionstore/SessionStore.jsm|" +
     "ssi_updateWindowFeatures@resource:///modules/sessionstore/SessionStore.jsm|" +
     "ssi_collectWindowData@resource:///modules/sessionstore/SessionStore.jsm|",
 
   // tabPreviews.capture()
@@ -83,31 +82,32 @@ function test() {
 }
 
 let observer = {
   reflow: function (start, end) {
     // Gather information about the current code path.
     let path = (new Error().stack).split("\n").slice(1).map(line => {
       return line.replace(/:\d+$/, "");
     }).join("|");
+    let pathWithLineNumbers = (new Error().stack).split("\n").slice(1).join("|");
 
     // Stack trace is empty. Reflow was triggered by native code.
     if (path === "") {
       return;
     }
 
     // Check if this is an expected reflow.
     for (let stack of EXPECTED_REFLOWS) {
       if (path.startsWith(stack)) {
         ok(true, "expected uninterruptible reflow '" + stack + "'");
         return;
       }
     }
 
-    ok(false, "unexpected uninterruptible reflow '" + path + "'");
+    ok(false, "unexpected uninterruptible reflow '" + pathWithLineNumbers + "'");
   },
 
   reflowInterruptible: function (start, end) {
     // We're not interested in interruptible reflows.
   },
 
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIReflowObserver,
                                          Ci.nsISupportsWeakReference])