And fix missing var!
It would be good to get this script running at the end of every test, so we
know that modules aren't leaking either - but it will require a lot
modification of the tests so that they themselves aren't leaking globals.
// Signal Handlers
(function() {
var signalWatchers = {};
- addListener = process.addListener,
- removeListener = process.removeListener;
+ var addListener = process.addListener;
+ var removeListener = process.removeListener;
function isSignal (event) {
return event.slice(0, 3) === 'SIG' && process.hasOwnProperty(event);
--- /dev/null
+var assert = require('assert');
+
+var knownGlobals = [ setTimeout
+ , setInterval
+ , clearTimeout
+ , clearInterval
+ , console
+ , Buffer
+ , process
+ , global
+ , __module
+ , include
+ , puts
+ , print
+ , p
+ ];
+
+for (var x in global) {
+ var found = false;
+
+ for (var y in knownGlobals) {
+ if (global[x] === knownGlobals[y]) {
+ found = true;
+ break;
+ }
+ }
+
+ if (!found) {
+ console.error("Unknown global: %s", x);
+ assert.ok(false);
+ }
+}