Bug 1453596 - [mochitest] Throw errors instead of strings to get line numbers. r=gbrown, a=test-only
authorHenrik Skupin <mail@hskupin.info>
Thu, 12 Apr 2018 12:10:26 +0200
changeset 463236 1e47c5ece1f2b44c966dbd635fc95774bbe64525
parent 463235 6bfef70fa57062834c995ec90a03912b631f2d79
child 463237 df8719ae5e6f23c63e7d86bc971ecec74c3ee0b9
push id1683
push usersfraser@mozilla.com
push dateThu, 26 Apr 2018 16:43:40 +0000
treeherdermozilla-release@5af6cb21869d [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersgbrown, test-only
bugs1453596
milestone60.0
Bug 1453596 - [mochitest] Throw errors instead of strings to get line numbers. r=gbrown, a=test-only Without using "new Error()" there will always be line 0 referenced in the exception message. MozReview-Commit-ID: KGzVDShiLTW
testing/mochitest/server.js
--- a/testing/mochitest/server.js
+++ b/testing/mochitest/server.js
@@ -133,28 +133,28 @@ function runServer()
         var invalid = false;
         for (var i=0; i < 4; i++) {
           if (quads[i] < 0 || quads[i] > 255)
             invalid = true;
         }
         if (!invalid)
           gServerAddress = _SERVER_ADDR;
         else
-          throw "invalid _SERVER_ADDR, please specify a valid IP Address";
+          throw new Error("invalid _SERVER_ADDR, please specify a valid IP Address");
       }
     }
   } else {
-    throw "please defined _SERVER_ADDR (as an ip address) before running server.js";
+    throw new Error("please define _SERVER_ADDR (as an ip address) before running server.js");
   }
 
   if (typeof(_SERVER_PORT) != "undefined") {
     if (parseInt(_SERVER_PORT) > 0 && parseInt(_SERVER_PORT) < 65536)
       SERVER_PORT = _SERVER_PORT;
   } else {
-    throw "please define _SERVER_PORT (as a port number) before running server.js";
+    throw new Error("please define _SERVER_PORT (as a port number) before running server.js");
   }
 
   // If DISPLAY_RESULTS is not specified, it defaults to true
   if (typeof(_DISPLAY_RESULTS) != "undefined") {
     displayResults = _DISPLAY_RESULTS;
   }
 
   server._start(SERVER_PORT, gServerAddress);
@@ -289,27 +289,27 @@ function processLocations(server)
     lineno++;
 
     var lineValue = line.value;
     if (lineValue.charAt(0) == "#" || lineValue == "")
       continue;
 
     var match = LINE_REGEXP.exec(lineValue);
     if (!match)
-      throw "Syntax error in server-locations.txt, line " + lineno;
+      throw new Error("Syntax error in server-locations.txt, line " + lineno);
 
     var [, scheme, host, port, options] = match;
     if (options)
     {
       if (options.split(",").includes("primary"))
       {
         if (seenPrimary)
         {
-          throw "Multiple primary locations in server-locations.txt, " +
-                "line " + lineno;
+          throw new Error("Multiple primary locations in server-locations.txt, " +
+                          "line " + lineno);
         }
 
         server.identity.setPrimary(scheme, host, port);
         seenPrimary = true;
         continue;
       }
     }