Bug 1459398 - log a clear test failure if mandatory telemetry-test-helpers.js cannot be loaded;r=miker draft
authorJulian Descottes <jdescottes@mozilla.com>
Sat, 05 May 2018 12:49:39 +0200
changeset 810128 c34968f0d45920ce03ce3e0228035bd7998ed708
parent 809159 9390a911ee68708cf873677fae1e1711041fa5cd
push id113901
push userjdescottes@mozilla.com
push dateMon, 25 Jun 2018 11:44:41 +0000
reviewersmiker
bugs1459398
milestone62.0a1
Bug 1459398 - log a clear test failure if mandatory telemetry-test-helpers.js cannot be loaded;r=miker MozReview-Commit-ID: KuMO6VeAfsw
devtools/client/performance/test/head.js
devtools/client/shared/test/shared-head.js
--- a/devtools/client/performance/test/head.js
+++ b/devtools/client/performance/test/head.js
@@ -2,18 +2,27 @@
    http://creativecommons.org/publicdomain/zero/1.0/ */
 
 /* import-globals-from ../../shared/test/telemetry-test-helpers.js */
 
 "use strict";
 
 const { require, loader } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {});
 
-Services.scriptloader.loadSubScript(
-  "chrome://mochitests/content/browser/devtools/client/shared/test/telemetry-test-helpers.js", this);
+try {
+  Services.scriptloader.loadSubScript(
+    "chrome://mochitests/content/browser/devtools/client/shared/test/telemetry-test-helpers.js", this);
+} catch (e) {
+  ok(false,
+    "MISSING DEPENDENCY ON telemetry-test-helpers.js\n" +
+    "Please add the following line in browser.ini:\n" +
+    "  !/devtools/client/shared/test/telemetry-test-helpers.js\n"
+  );
+  throw e;
+}
 
 /* exported loader, either, click, dblclick, mousedown, rightMousedown, key */
 // All tests are asynchronous.
 waitForExplicitFinish();
 
 // Performance tests are much heavier because of their reliance on the
 // profiler module, memory measurements, frequent canvas operations etc. Many of
 // of them take longer than 30 seconds to finish on try server VMs, even though
--- a/devtools/client/shared/test/shared-head.js
+++ b/devtools/client/shared/test/shared-head.js
@@ -34,18 +34,27 @@ const KeyShortcuts = require("devtools/c
 
 const TEST_DIR = gTestPath.substr(0, gTestPath.lastIndexOf("/"));
 const CHROME_URL_ROOT = TEST_DIR + "/";
 const URL_ROOT = CHROME_URL_ROOT.replace("chrome://mochitests/content/",
                                          "http://example.com/");
 const URL_ROOT_SSL = CHROME_URL_ROOT.replace("chrome://mochitests/content/",
                                              "https://example.com/");
 
-Services.scriptloader.loadSubScript(
-  "chrome://mochitests/content/browser/devtools/client/shared/test/telemetry-test-helpers.js", this);
+try {
+  Services.scriptloader.loadSubScript(
+    "chrome://mochitests/content/browser/devtools/client/shared/test/telemetry-test-helpers.js", this);
+} catch (e) {
+  ok(false,
+    "MISSING DEPENDENCY ON telemetry-test-helpers.js\n" +
+    "Please add the following line in browser.ini:\n" +
+    "  !/devtools/client/shared/test/telemetry-test-helpers.js\n"
+  );
+  throw e;
+}
 
 // Force devtools to be initialized so menu items and keyboard shortcuts get installed
 require("devtools/client/framework/devtools-browser");
 
 // All test are asynchronous
 waitForExplicitFinish();
 
 var EXPECTED_DTU_ASSERT_FAILURE_COUNT = 0;