[Pkg-mozext-commits] [requestpolicy] 39/65: [tst][imp] helper addons: static code analysis

David Prévot taffit at moszumanska.debian.org
Fri Mar 25 22:59:49 UTC 2016


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository requestpolicy.

commit 1f1c4c431ac724c5875af0417c49a9be9e12730c
Author: Martin Kimmerle <dev at 256k.de>
Date:   Tue Jan 19 17:42:51 2016 +0100

    [tst][imp] helper addons: static code analysis
    
    Check the Helper Add-Ons' code with JSHint and JSCS.
---
 Makefile                                           |  2 +
 tests/helper-addons/dev-helper/bootstrap.js        | 52 +++++++++++++++-------
 .../dev-helper/content/console-observer.jsm        | 26 ++++++-----
 .../dev-helper/content/logging-observer.jsm        | 20 +++++----
 .../content/restart-detection-helper.jsm           |  3 +-
 tests/helper-addons/dev-helper/content/rpc-uri.jsm | 12 +++--
 tests/helper-addons/dummy-ext/bootstrap.js         |  2 +
 7 files changed, 75 insertions(+), 42 deletions(-)

diff --git a/Makefile b/Makefile
index 6b852a8..5fe484e 100644
--- a/Makefile
+++ b/Makefile
@@ -435,10 +435,12 @@ static-analysis: jshint jscs
 jshint:
 	jshint --extra-ext jsm --exclude '**/jquery.min.js' src/
 	jshint tests/xpcshell/
+	jshint tests/helper-addons/
 jscs:
 	@echo '** NOTICE ** jscs is not run on "ruleset.jsm" because of its "yield" statement.'
 	cd src/; jscs .
 	cd tests/xpcshell/; jscs .
+	cd tests/helper-addons/; jscs .
 
 
 #===============================================================================
diff --git a/tests/helper-addons/dev-helper/bootstrap.js b/tests/helper-addons/dev-helper/bootstrap.js
index 54af05a..9d66350 100644
--- a/tests/helper-addons/dev-helper/bootstrap.js
+++ b/tests/helper-addons/dev-helper/bootstrap.js
@@ -20,27 +20,49 @@
  * ***** END LICENSE BLOCK *****
  */
 
-const Ci = Components.interfaces;
-const Cc = Components.classes;
-const Cu = Components.utils;
+/* exported startup, shutdown, install, uninstall */
 
+/* global Components */
+const {utils: Cu} = Components;
+
+//==============================================================================
+// utilities
+//==============================================================================
+
+function getModules() {
+  return [
+    {
+      uri: "chrome://rpc-dev-helper/content/console-observer.jsm",
+      name: "ConsoleObserver"
+    }, {
+      uri: "chrome://rpc-dev-helper/content/logging-observer.jsm",
+      name: "LoggingObserver"
+    }, {
+      uri: "chrome://rpc-dev-helper/content/rpc-uri.jsm",
+      name: "CustomUri"
+    }
+  ];
+}
+
+function callBootstrapFn(uri, moduleName, fnName) {
+  Cu.import(uri, {})[moduleName][fnName]();
+}
+
+//==============================================================================
+// bootstrap functions
+//==============================================================================
 
 function startup(data, reason) {
-  Cu.import("chrome://rpc-dev-helper/content/console-observer.jsm");
-  ConsoleObserver.startup();
-  Cu.import("chrome://rpc-dev-helper/content/logging-observer.jsm");
-  LoggingObserver.startup();
-  Cu.import("chrome://rpc-dev-helper/content/rpc-uri.jsm");
-  CustomUri.startup();
+  for (let {uri, name} of getModules()) {
+    callBootstrapFn(uri, name, "startup");
+  }
 }
 
 function shutdown(data, reason) {
-  CustomUri.shutdown();
-  Cu.unload("chrome://rpc-dev-helper/content/rpc-uri.jsm");
-  LoggingObserver.shutdown();
-  Cu.unload("chrome://rpc-dev-helper/content/logging-observer.jsm");
-  ConsoleObserver.shutdown();
-  Cu.unload("chrome://rpc-dev-helper/content/console-observer.jsm");
+  for (let {uri, name} of getModules().reverse()) {
+    callBootstrapFn(uri, name, "shutdown");
+    Cu.unload(uri);
+  }
 }
 
 function install(data, reason) {
diff --git a/tests/helper-addons/dev-helper/content/console-observer.jsm b/tests/helper-addons/dev-helper/content/console-observer.jsm
index a5c401f..104e8ab 100644
--- a/tests/helper-addons/dev-helper/content/console-observer.jsm
+++ b/tests/helper-addons/dev-helper/content/console-observer.jsm
@@ -20,10 +20,14 @@
  * ***** END LICENSE BLOCK *****
  */
 
-const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
+/* global Components */
+const {interfaces: Ci, utils: Cu} = Components;
 
+/* exported ConsoleObserver */
 this.EXPORTED_SYMBOLS = ["ConsoleObserver"];
 
+/* global dump */
+
 let {Services} = Cu.import("resource://gre/modules/Services.jsm", {});
 
 //==============================================================================
@@ -46,14 +50,16 @@ function isRPException(aMessage) {
   return true;
 }
 
+// jscs:disable maximumLineLength
 const knownBugs = [
   // issue #597
   `[JavaScript Error: "TypeError: sub is undefined" {file: "chrome://rpcontinued/content/lib/subscription.jsm"`,
   `[JavaScript Warning: "Expected end of value but found '10'.  Error in parsing value for 'font-family'.  Declaration dropped." {file: "chrome://rpcontinued/skin/`,
 ];
+// jscs:enable maximumLineLength
 
 function isKnownBug(aMessage) {
-  for (bugMsg of knownBugs) {
+  for (let bugMsg of knownBugs) {
     if (aMessage.startsWith(bugMsg)) {
       return true;
     }
@@ -70,43 +76,43 @@ function isKnownBug(aMessage) {
  * Browser Console and detects errors caused by
  * RequestPolicy.
  */
-var ConsoleObserver = (function () {
+var ConsoleObserver = (function() {
   let self = {};
 
   let messages = [];
 
   let prefBranch;
 
-  self.getNumErrors = function () {
+  self.getNumErrors = function() {
     return prefBranch.getIntPref("unitTesting.loggingErrors.counter");
   };
 
-  self.getMessages = function () {
+  self.getMessages = function() {
     return messages;
   };
 
   function setNumErrors(aN) {
     prefBranch.setIntPref("unitTesting.loggingErrors.counter", aN);
     Services.prefs.savePrefFile(null);
-  };
+  }
 
-  self.reset = function () {
+  self.reset = function() {
     setNumErrors(0);
     messages = [];
   };
 
-  self.startup = function () {
+  self.startup = function() {
     prefBranch = Services.prefs.getBranch("extensions.requestpolicy.").
         QueryInterface(Ci.nsIPrefBranch2);
     Services.console.registerListener(self);
   };
 
-  self.shutdown = function () {
+  self.shutdown = function() {
     Services.console.unregisterListener(self);
     prefBranch = undefined;
   };
 
-  self.observe = function (aSubject) {
+  self.observe = function(aSubject) {
     var msg = aSubject.message;
 
     if (isRPException(msg) && !isKnownBug(msg)) {
diff --git a/tests/helper-addons/dev-helper/content/logging-observer.jsm b/tests/helper-addons/dev-helper/content/logging-observer.jsm
index e6eaffb..1958d86 100644
--- a/tests/helper-addons/dev-helper/content/logging-observer.jsm
+++ b/tests/helper-addons/dev-helper/content/logging-observer.jsm
@@ -20,8 +20,10 @@
  * ***** END LICENSE BLOCK *****
  */
 
-const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
+/* global Components */
+const {interfaces: Ci, utils: Cu} = Components;
 
+/* exported LoggingObserver */
 this.EXPORTED_SYMBOLS = ["LoggingObserver"];
 
 let {Services} = Cu.import("resource://gre/modules/Services.jsm", {});
@@ -33,43 +35,43 @@ let {Services} = Cu.import("resource://gre/modules/Services.jsm", {});
 /**
  * LoggingObserver observes all logs sent by RP's Logger module.
  */
-var LoggingObserver = (function () {
+var LoggingObserver = (function() {
   let self = {};
 
   let messages = [];
 
   let prefBranch;
 
-  self.getNumErrors = function () {
+  self.getNumErrors = function() {
     return prefBranch.getIntPref("unitTesting.loggingErrors.counter");
   };
 
-  self.getMessages = function () {
+  self.getMessages = function() {
     return messages;
   };
 
   function setNumErrors(aN) {
     prefBranch.setIntPref("unitTesting.loggingErrors.counter", aN);
     Services.prefs.savePrefFile(null);
-  };
+  }
 
-  self.reset = function () {
+  self.reset = function() {
     setNumErrors(0);
     messages = [];
   };
 
-  self.startup = function () {
+  self.startup = function() {
     prefBranch = Services.prefs.getBranch("extensions.requestpolicy.").
         QueryInterface(Ci.nsIPrefBranch2);
     Services.obs.addObserver(self, "requestpolicy-log-error", false);
   };
 
-  self.shutdown = function () {
+  self.shutdown = function() {
     Services.obs.removeObserver(self, "requestpolicy-log-error");
     prefBranch = undefined;
   };
 
-  self.observe = function (aSubject, aTopic, aData) {
+  self.observe = function(aSubject, aTopic, aData) {
     switch (aTopic) {
       case "requestpolicy-log-error":
         setNumErrors(self.getNumErrors() + 1);
diff --git a/tests/helper-addons/dev-helper/content/restart-detection-helper.jsm b/tests/helper-addons/dev-helper/content/restart-detection-helper.jsm
index c23a696..48182af 100644
--- a/tests/helper-addons/dev-helper/content/restart-detection-helper.jsm
+++ b/tests/helper-addons/dev-helper/content/restart-detection-helper.jsm
@@ -20,8 +20,9 @@
  * ***** END LICENSE BLOCK *****
  */
 
+/* exported RestartDetectionHelper */
 this.EXPORTED_SYMBOLS = ["RestartDetectionHelper"];
 
-RestartDetectionHelper = {
+var RestartDetectionHelper = {
   mark: null
 };
diff --git a/tests/helper-addons/dev-helper/content/rpc-uri.jsm b/tests/helper-addons/dev-helper/content/rpc-uri.jsm
index 5ea305a..c9c193e 100644
--- a/tests/helper-addons/dev-helper/content/rpc-uri.jsm
+++ b/tests/helper-addons/dev-helper/content/rpc-uri.jsm
@@ -21,7 +21,7 @@
  */
 
 /* global Components */
-const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
+const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
 
 /* exported CustomUri */
 this.EXPORTED_SYMBOLS = ["CustomUri"];
@@ -33,7 +33,7 @@ let {XPCOMUtils} = Cu.import("resource://gre/modules/XPCOMUtils.jsm", {});
 // CustomUri
 //==============================================================================
 
-var CustomUri = (function () {
+var CustomUri = (function() {
   let self = {};
 
   const DESTINATION_URI = "http://www.maindomain.test/destination.html";
@@ -48,15 +48,14 @@ var CustomUri = (function () {
                        Ci.nsIProtocolHandler.URI_NOAUTH |
                        Ci.nsIProtocolHandler.URI_LOADABLE_BY_ANYONE;
 
-
-  self.newURI = function (aSpec, aOriginCharset, aBaseURI) {
+  self.newURI = function(aSpec, aOriginCharset, aBaseURI) {
     var uri = Cc["@mozilla.org/network/simple-uri;1"]
         .createInstance(Ci.nsIURI);
     uri.spec = aSpec;
     return uri;
   };
 
-  self.newChannel = function (aURI) {
+  self.newChannel = function(aURI) {
     var path = aURI.path;
     var uri = Services.io.newURI(DESTINATION_URI + "?" + path, null, null);
     var channel = Services.io.newChannelFromURI(uri, null)
@@ -68,7 +67,7 @@ var CustomUri = (function () {
   // nsIFactory interface implementation
   //----------------------------------------------------------------------------
 
-  self.createInstance = function (outer, iid) {
+  self.createInstance = function(outer, iid) {
     if (outer) {
       throw Cr.NS_ERROR_NO_AGGREGATION;
     }
@@ -78,7 +77,6 @@ var CustomUri = (function () {
   self.startup = registerFactory;
   self.shutdown = unregisterFactory;
 
-
   function registerFactory() {
     Components.manager.QueryInterface(Ci.nsIComponentRegistrar)
         .registerFactory(self.classID, self.classDescription,
diff --git a/tests/helper-addons/dummy-ext/bootstrap.js b/tests/helper-addons/dummy-ext/bootstrap.js
index b728caa..b42970a 100644
--- a/tests/helper-addons/dummy-ext/bootstrap.js
+++ b/tests/helper-addons/dummy-ext/bootstrap.js
@@ -1,3 +1,5 @@
+/* exported startup, shutdown, install, uninstall */
+
 function startup(data, reason) {}
 function shutdown(data, reason) {}
 function install(data, reason) {}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/requestpolicy.git



More information about the Pkg-mozext-commits mailing list