[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