1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2026-03-10 18:45:46 +01:00

Fix sanitizer initialization. Add tests.

This commit is contained in:
Kris Maglione
2011-02-06 20:00:57 -05:00
parent 00dccddc87
commit 707af9e1fa
4 changed files with 30 additions and 11 deletions

View File

@@ -1012,7 +1012,7 @@ var Timer = Class("Timer", {
notify: function (timer, force) { notify: function (timer, force) {
try { try {
if (util.rehashing || typeof util === "undefined" || !force && this.doneAt == 0) if (loaded.util && util.rehashing || typeof util === "undefined" || !force && this.doneAt == 0)
return; return;
this._timer.cancel(); this._timer.cancel();

View File

@@ -36,6 +36,8 @@ var JavaScript = Module("javascript", {
}, },
}), }),
lazyInit: true,
newContext: function () this.modules.newContext(this.modules.userContext), newContext: function () this.modules.newContext(this.modules.userContext),
get completers() JavaScript.completers, // For backward compatibility get completers() JavaScript.completers, // For backward compatibility

View File

@@ -290,18 +290,18 @@ var Overlay = Module("Overlay", {
}); });
}); });
function frob(name) { function frob(name) { (deferredInit[name] || []).forEach(call); }
// util.dump(" ======================== FROB " + name + " ======================== ");
(deferredInit[name] || []).forEach(call);
}
frob("init"); frob("init");
defineModule.modules.forEach(function ({ constructor: { className } }) { defineModule.modules.forEach(function ({ lazyInit, constructor: { className } }) {
modules.__defineGetter__(className, function () { if (!lazyInit)
delete modules[className];
frob(className); frob(className);
return modules[className] = modules[className]; else
}); modules.__defineGetter__(className, function () {
delete modules[className];
frob(className);
return modules[className] = modules[className];
});
}); });
// Module.list.forEach(load); // Module.list.forEach(load);

View File

@@ -483,7 +483,24 @@ var tests = {
sanitize: { sanitize: {
// Skip details for now. // Skip details for now.
completions: [ completions: [
"", ["", function (context) ["all",
"cache",
"downloads",
"formdata",
"offlineapps",
"passwords",
"sessions",
"cookies",
"history",
"host",
"sitesettings",
"commandline",
"messages",
"macros",
"marks",
"options"
].every(function (item) context.allItems.items.some(function ({ text }) item == text))
],
"-", "-",
"-host=", "-host=",
"-timespan=" "-timespan="