From 7a2e784ad7386771d15249d446c914fba1675068 Mon Sep 17 00:00:00 2001
From: Ryan Dahl
-var sys = require("/sys.js"), - http = require("/http.js"); +var sys = require('sys'), + http = require('http'); http.createServer(function (req, res) { setTimeout(function () { - res.sendHeader(200, {"Content-Type": "text/plain"}); - res.sendBody("Hello World"); + res.sendHeader(200, {'Content-Type': 'text/plain'}); + res.sendBody('Hello World'); res.finish(); }, 2000); }).listen(8000); -sys.puts("Server running at http://127.0.0.1:8000/");+sys.puts('Server running at http://127.0.0.1:8000/');
diff --git a/lib/file.js b/lib/file.js index 5565fd1770..84a09a8b45 100644 --- a/lib/file.js +++ b/lib/file.js @@ -1,4 +1,4 @@ -var posix = require("/posix.js"); +var posix = require("./posix"); /*jslint onevar: true, undef: true, eqeqeq: true, plusplus: true, regexp: true, newcap: true, immed: true */ /*globals exports, node, __filename */ diff --git a/lib/http.js b/lib/http.js index ff00b2cd18..c94ccfa767 100644 --- a/lib/http.js +++ b/lib/http.js @@ -1,4 +1,4 @@ -var sys = require("/sys.js"); +var sys = require('sys'); var CRLF = "\r\n"; var STATUS_CODES = { diff --git a/lib/repl.js b/lib/repl.js index 5ca84ecac1..c887f86bdb 100644 --- a/lib/repl.js +++ b/lib/repl.js @@ -1,7 +1,7 @@ // A repl library that you can include in your own code to get a runtime // interface to your program. Just require("/repl.js"). -var sys = require("/sys.js"); +var sys = require('sys'); sys.puts("Type '.help' for options."); diff --git a/src/file.js b/src/file.js index 307eee392f..56a71ca22b 100644 --- a/src/file.js +++ b/src/file.js @@ -1,8 +1,3 @@ -process.fs.exists = function (path, callback) { - var p = process.fs.stat(path); - p.addCallback(function () { callback(true); }); - p.addErrback(function () { callback(false); }); -}; process.fs.cat = function (path, encoding) { var promise = new process.Promise(); diff --git a/src/node.js b/src/node.js index 50e37c426e..0c359578ba 100644 --- a/src/node.js +++ b/src/node.js @@ -1,26 +1,37 @@ +(function () { // annonymous namespace + +// deprecation errors + +GLOBAL.include = function () { + throw new Error("include() has been removed. Use process.mixin(process, require(file)) to get the same effect."); +}; + +GLOBAL.puts = function () { + throw new Error("puts() has moved. Use require('/sys.js') to bring it back."); +} + +GLOBAL.print = function () { + throw new Error("print() has moved. Use require('/sys.js') to bring it back."); +} + +GLOBAL.p = function () { + throw new Error("p() has moved. Use require('/sys.js') to bring it back."); +} + +process.debug = function () { + throw new Error("process.debug() has moved. Use require('/sys.js') to bring it back."); +} + +process.error = function () { + throw new Error("process.error() has moved. Use require('/sys.js') to bring it back."); +} + process.tcp.createServer = function () { throw new Error("process.tcp.createServer() has moved. Use require('/tcp.js') to access it."); }; process.createProcess = function () { - throw "process.createProcess() has been changed to process.createChildProcess() update your code"; -}; - -process.createChildProcess = function (file, args, env) { - var child = new process.ChildProcess(); - args = args || []; - env = env || process.ENV; - var envPairs = []; - for (var key in env) { - if (env.hasOwnProperty(key)) { - envPairs.push(key + "=" + env[key]); - } - } - // TODO Note envPairs is not currently used in child_process.cc. The PATH - // needs to be searched for the 'file' command if 'file' does not contain - // a '/' character. - child.spawn(file, args, envPairs); - return child; + throw new Error("process.createProcess() has been changed to process.createChildProcess() update your code"); }; process.exec = function () { @@ -39,15 +50,30 @@ process.tcp.createConnection = function (port, host) { throw new Error("process.tcp.createConnection() has moved. Use require('/tcp.js') to access it."); }; -include = function () { - throw new Error("include() has been removed. Use process.mixin(process, require(file)) to get the same effect."); -} -/* From jQuery.extend in the jQuery JavaScript Library v1.3.2 - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - */ + + +process.createChildProcess = function (file, args, env) { + var child = new process.ChildProcess(); + args = args || []; + env = env || process.ENV; + var envPairs = []; + for (var key in env) { + if (env.hasOwnProperty(key)) { + envPairs.push(key + "=" + env[key]); + } + } + // TODO Note envPairs is not currently used in child_process.cc. The PATH + // needs to be searched for the 'file' command if 'file' does not contain + // a '/' character. + child.spawn(file, args, envPairs); + return child; +}; + +// From jQuery.extend in the jQuery JavaScript Library v1.3.2 +// Copyright (c) 2009 John Resig +// Dual licensed under the MIT and GPL licenses. +// http://docs.jquery.com/License process.mixin = function() { // copy reference to target object var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options; @@ -98,188 +124,278 @@ process.mixin = function() { return target; }; + + // Signal Handlers -(function () { // anonymous namespace +function isSignal (event) { + return event.slice(0, 3) === 'SIG' && process.hasOwnProperty(event); +}; - function isSignal (event) { - return event.slice(0, 3) === 'SIG' && process.hasOwnProperty(event); - }; +process.addListener("newListener", function (event) { + if (isSignal(event) && process.listeners(event).length === 0) { + var handler = new process.SignalHandler(process[event]); + handler.addListener("signal", function () { + process.emit(event); + }); + } +}); - process.addListener("newListener", function (event) { - if (isSignal(event) && process.listeners(event).length === 0) { - var handler = new process.SignalHandler(process[event]); - handler.addListener("signal", function () { - process.emit(event); - }); - } - }); -})(); // anonymous namespace // Timers -function setTimeout (callback, after) { +GLOBAL.setTimeout = function (callback, after) { var timer = new process.Timer(); timer.addListener("timeout", callback); timer.start(after, 0); return timer; } -function setInterval (callback, repeat) { +GLOBAL.setInterval = function (callback, repeat) { var timer = new process.Timer(); timer.addListener("timeout", callback); timer.start(repeat, repeat); return timer; } -function clearTimeout (timer) { +GLOBAL.clearTimeout = function (timer) { timer.stop(); } -clearInterval = clearTimeout; +GLOBAL.clearInterval = GLOBAL.clearTimeout; + + + -// Module +// Modules -process.libraryPaths = [ process.path.join(process.ENV["HOME"], ".node_libraries") - , process.path.join(process.installPrefix, "lib/node/libraries") - , "/" - ]; +var debugLevel = 0; +if ("NODE_DEBUG" in process.ENV) debugLevel = 1; -if (process.ENV["NODE_LIBRARY_PATHS"]) { - process.libraryPaths = - process.ENV["NODE_LIBRARY_PATHS"].split(":").concat(process.libraryPaths); +function debug (x) { + if (debugLevel > 0) { + process.stdio.writeError(x + "\n"); + } } -process.Module = function (filename, parent) { - process.assert(filename.charAt(0) == "/"); - this.filename = filename; + +// private constructor +function Module (name, parent) { + this.name = name; this.exports = {}; this.parent = parent; + this.filename = null; this.loaded = false; this.loadPromise = null; this.exited = false; this.children = []; }; -process.Module.cache = {}; +var moduleCache = {}; -(function () { - function retrieveFromCache (loadPromise, fullPath, parent) { - var module; - if (fullPath in process.Module.cache) { - module = process.Module.cache[fullPath]; - setTimeout(function () { - loadPromise.emitSuccess(module.exports); - }, 0); - } else { - module = new process.Module(fullPath, parent); - process.Module.cache[fullPath] = module; - module.load(loadPromise); - } +function createModule (name, parent) { + if (name in moduleCache) { + debug("found " + JSON.stringify(name) + " in cache"); + return moduleCache[name]; } + debug("didn't found " + JSON.stringify(name) + " in cache. creating new module"); + var m = new Module(name, parent); + moduleCache[name] = m; + return m; +}; - function findPath (path, dirs, callback) { - process.assert(path.charAt(0) == "/"); - process.assert(dirs.constructor == Array); +function createInternalModule (name, constructor) { + var m = createModule(name); + constructor(m.exports); + m.loaded = true; + return m; +}; - if (dirs.length == 0) { - callback(); - } else { - var dir = dirs[0]; - var rest = dirs.slice(1, dirs.length); - - var fullPath = process.path.join(dir, path); - process.fs.exists(fullPath, function (doesExist) { - if (doesExist) { - callback(fullPath); - } else { - findPath(path, rest, callback); - } - }); - } - } +var pathModule = createInternalModule("path", function (exports) { + exports.join = function () { + var joined = ""; + for (var i = 0; i < arguments.length; i++) { + var part = arguments[i].toString(); - process.loadModule = function (requestedPath, exports, parent) { - var loadPromise = new process.Promise(); + /* Some logic to shorten paths */ + if (part === ".") continue; + while (/^\.\//.exec(part)) part = part.replace(/^\.\//, ""); - // On success copy the loaded properties into the exports - loadPromise.addCallback(function (t) { - for (var prop in t) { - if (t.hasOwnProperty(prop)) exports[prop] = t[prop]; + if (i === 0) { + part = part.replace(/\/*$/, "/"); + } else if (i === arguments.length - 1) { + part = part.replace(/^\/*/, ""); + } else { + part = part.replace(/^\/*/, "").replace(/\/*$/, "/"); } - }); + joined += part; + } + return joined; + }; - loadPromise.addErrback(function (e) { - process.stdio.writeError(e.message + "\n"); - process.exit(1); - }); + exports.dirname = function (path) { + if (path.charAt(0) !== "/") path = "./" + path; + var parts = path.split("/"); + return parts.slice(0, parts.length-1).join("/"); + }; - if (!parent) { - // root module - process.assert(requestedPath.charAt(0) == "/"); - retrieveFromCache(loadPromise, requestedPath); + exports.filename = function (path) { + if (path.charAt(0) !== "/") path = "./" + path; + var parts = path.split("/"); + return parts[parts.length-1]; + }; - } else { - if (requestedPath.charAt(0) == "/") { - // Need to find the module in process.libraryPaths - findPath(requestedPath, process.libraryPaths, function (fullPath) { - if (fullPath) { - retrieveFromCache(loadPromise, fullPath, parent); - } else { - loadPromise.emitError(new Error("Cannot find module '" + requestedPath + "'")); + exports.exists = function (path, callback) { + var p = process.fs.stat(path); + p.addCallback(function () { callback(true); }); + p.addErrback(function () { callback(false); }); + }; +}); + +var path = pathModule.exports; + + + +var modulePaths = [ path.join(process.installPrefix, "lib/node/libraries") + ]; + +if (process.ENV["HOME"]) { + modulePaths.unshift(path.join(process.ENV["HOME"], ".node_libraries")); +} + +if (process.ENV["NODE_PATH"]) { + modulePaths = process.ENV["NODE_PATH"].split(":").concat(modulePaths); +} + + +function findModulePath (name, dirs, callback) { + process.assert(dirs.constructor == Array); + + if (/.(js|node)$/.exec(name)) { + throw new Error("No longer accepting filename extension in module names"); + } + + if (dirs.length == 0) { + callback(); + return; + } + + var dir = dirs[0]; + var rest = dirs.slice(1, dirs.length); + + var js = path.join(dir, name + ".js"); + var addon = path.join(dir, name + ".node"); + var indexJs = path.join(dir, name, "index.js"); + var indexAddon = path.join(dir, name, "index.addon"); + + // TODO clean up the following atrocity! + + path.exists(js, function (found) { + if (found) { + callback(js); + return; + } + path.exists(addon, function (found) { + if (found) { + callback(addon); + return; + } + path.exists(indexJs, function (found) { + if (found) { + callback(indexJs); + return; + } + path.exists(indexAddon, function (found) { + if (found) { + callback(indexAddon); + return; } + findModulePath(name, rest, callback); }); + }); + }); + }); +} + +function loadModule (request, parent) { + // This is the promise which is actually returned from require.async() + var loadPromise = new process.Promise(); + loadPromise.addErrback(function (e) { + process.stdio.writeError(e.message + "\n"); + process.exit(1); + }); + + debug("loadModule REQUEST " + JSON.stringify(request) + " parent: " + JSON.stringify(parent)); + + var name, paths; + if (request.charAt(0) == "." && request.charAt(1) == "/") { + // Relative request + name = path.join(path.dirname(parent.name), request); + paths = [path.dirname(parent.filename)]; + } else { + name = request; + paths = modulePaths; + } + + if (name in moduleCache) { + debug("found " + JSON.stringify(name) + " in cache"); + // In cache + var module = moduleCache[name]; + setTimeout(function () { + loadPromise.emitSuccess(module.exports); + }, 0); + } else { + debug("looking for " + JSON.stringify(name) + " in " + JSON.stringify(paths)); + // Not in cache + findModulePath(request, paths, function (filename) { + if (!filename) { + loadPromise.emitError(new Error("Cannot find module '" + request + "'")); } else { - // Relative file load - var fullPath = process.path.join(process.path.dirname(parent.filename), - requestedPath); - retrieveFromCache(loadPromise, fullPath, parent); + var module = createModule(name, parent); + module.load(filename, loadPromise); } - } + }); + } - return loadPromise; - }; -}()); + return loadPromise; +}; + +Module.prototype.load = function (filename, loadPromise) { + debug("load " + JSON.stringify(filename) + " for module " + JSON.stringify(this.name)); + + process.assert(!this.loaded); + process.assert(!this.loadPromise); -process.Module.prototype.load = function (loadPromise) { - if (this.loaded) { - loadPromise.emitError(new Error("Module '" + self.filename + "' is already loaded.")); - return; - } - process.assert(!process.loadPromise); this.loadPromise = loadPromise; + this.filename = filename; - if (this.filename.match(/\.node$/)) { - this.loadObject(loadPromise); + if (filename.match(/\.node$/)) { + this.loadObject(filename, loadPromise); } else { - this.loadScript(loadPromise); + this.loadScript(filename, loadPromise); } }; -process.Module.prototype.loadObject = function (loadPromise) { +Module.prototype.loadObject = function (filename, loadPromise) { var self = this; // XXX Not yet supporting loading from HTTP. would need to download the // file, store it to tmp then run dlopen on it. - process.fs.exists(self.filename, function (does_exist) { - if (does_exist) { - self.loaded = true; - process.dlopen(self.filename, self.exports); // FIXME synchronus - loadPromise.emitSuccess(self.exports); - } else { - loadPromise.emitError(new Error("Error reading " + self.filename)); - } - }); + setTimeout(function () { + self.loaded = true; + process.dlopen(filename, self.exports); // FIXME synchronus + loadPromise.emitSuccess(self.exports); + }, 0); }; -process.Module.prototype.loadScript = function (loadPromise) { +Module.prototype.loadScript = function (filename, loadPromise) { var self = this; - var catPromise = process.cat(self.filename); + var catPromise = process.cat(filename); catPromise.addErrback(function () { - loadPromise.emitError(new Error("Error reading " + self.filename)); + loadPromise.emitError(new Error("Error reading " + filename)); }); catPromise.addCallback(function (content) { @@ -287,23 +403,23 @@ process.Module.prototype.loadScript = function (loadPromise) { content = content.replace(/^\#\!.*/, ''); function requireAsync (url) { - return self.newChild(url); + return loadModule(url, self); // new child } function require (url) { return requireAsync(url).wait(); } - require.paths = process.libraryPaths; + require.paths = modulePaths; require.async = requireAsync; // create wrapper function - var wrapper = "var __wrap__ = function (__module, __filename, exports, require) { " + var wrapper = "var __wrap__ = function (exports, require, module, __filename) { " + content + "\n}; __wrap__;"; - var compiled_wrapper = process.compile(wrapper, self.filename); + var compiledWrapper = process.compile(wrapper, filename); - compiled_wrapper.apply(self.exports, [self, self.filename, self.exports, require]); + compiledWrapper.apply(self.exports, [self.exports, require, self, filename]); self.waitChildrenLoad(function () { self.loaded = true; @@ -312,11 +428,7 @@ process.Module.prototype.loadScript = function (loadPromise) { }); }; -process.Module.prototype.newChild = function (path) { - return process.loadModule(path, {}, this); -}; - -process.Module.prototype.waitChildrenLoad = function (callback) { +Module.prototype.waitChildrenLoad = function (callback) { var nloaded = 0; var children = this.children; for (var i = 0; i < children.length; i++) { @@ -339,18 +451,21 @@ process.exit = function (code) { process.reallyExit(code); }; -(function () { - var cwd = process.cwd(); +var cwd = process.cwd(); - // Make process.ARGV[0] and process.ARGV[1] into full paths. - if (process.ARGV[0].charAt(0) != "/") { - process.ARGV[0] = process.path.join(cwd, process.ARGV[0]); - } +// Make process.ARGV[0] and process.ARGV[1] into full paths. +if (process.ARGV[0].charAt(0) != "/") { + process.ARGV[0] = path.join(cwd, process.ARGV[0]); +} - if (process.ARGV[1].charAt(0) != "/") { - process.ARGV[1] = process.path.join(cwd, process.ARGV[1]); - } +if (process.ARGV[1].charAt(0) != "/") { + process.ARGV[1] = path.join(cwd, process.ARGV[1]); +} + +// Load the root module--the command line argument. +var m = createModule("."); +var loadPromise = new process.Promise(); +m.load(process.ARGV[1], loadPromise); +loadPromise.wait(); - // Load the root module--the command line argument. - process.loadModule(process.ARGV[1], process); -}()); +}()); // end annonymous namespace diff --git a/src/util.js b/src/util.js index 794fe3f374..31da60b499 100644 --- a/src/util.js +++ b/src/util.js @@ -33,58 +33,5 @@ process.cat = function(location, encoding) { return process.fs.cat(location, encoding); }; -process.path = new function () { - this.join = function () { - var joined = ""; - for (var i = 0; i < arguments.length; i++) { - var part = arguments[i].toString(); - /* Some logic to shorten paths */ - if (part === ".") continue; - while (/^\.\//.exec(part)) part = part.replace(/^\.\//, ""); - if (i === 0) { - part = part.replace(/\/*$/, "/"); - } else if (i === arguments.length - 1) { - part = part.replace(/^\/*/, ""); - } else { - part = part.replace(/^\/*/, "").replace(/\/*$/, "/"); - } - joined += part; - } - return joined; - }; - - this.dirname = function (path) { - if (path.charAt(0) !== "/") path = "./" + path; - var parts = path.split("/"); - return parts.slice(0, parts.length-1).join("/"); - }; - - this.filename = function (path) { - if (path.charAt(0) !== "/") path = "./" + path; - var parts = path.split("/"); - return parts[parts.length-1]; - }; -}; - - -puts = function () { - throw new Error("puts() has moved. Use require('/sys.js') to bring it back."); -} - -print = function () { - throw new Error("print() has moved. Use require('/sys.js') to bring it back."); -} - -p = function () { - throw new Error("p() has moved. Use require('/sys.js') to bring it back."); -} - -process.debug = function () { - throw new Error("process.debug() has moved. Use require('/sys.js') to bring it back."); -} - -process.error = function () { - throw new Error("process.error() has moved. Use require('/sys.js') to bring it back."); -} diff --git a/test/mjsunit/common.js b/test/mjsunit/common.js index 6f4de7b7eb..2874f3c9bd 100644 --- a/test/mjsunit/common.js +++ b/test/mjsunit/common.js @@ -1,11 +1,15 @@ -exports.testDir = process.path.dirname(__filename); -exports.fixturesDir = process.path.join(exports.testDir, "fixtures"); -exports.libDir = process.path.join(exports.testDir, "../../lib"); +var path = require("path"); + +exports.testDir = path.dirname(__filename); +exports.fixturesDir = path.join(exports.testDir, "fixtures"); +exports.libDir = path.join(exports.testDir, "../../lib"); require.paths.unshift(exports.libDir); -var mjsunit = require("/mjsunit.js"); -var utils = require("/utils.js"); -process.mixin(exports, mjsunit, utils); -exports.posix = require("/posix.js"); +var mjsunit = require("mjsunit"); +var sys = require("sys"); + +process.mixin(exports, mjsunit, sys); +exports.posix = require("posix"); +exports.path = path; diff --git a/test/mjsunit/fixtures/a.js b/test/mjsunit/fixtures/a.js index ed1da113b0..f30ea0c431 100644 --- a/test/mjsunit/fixtures/a.js +++ b/test/mjsunit/fixtures/a.js @@ -1,4 +1,4 @@ -var c = require("b/c.js"); +var c = require("./b/c"); debug("load fixtures/a.js"); diff --git a/test/mjsunit/fixtures/b/c.js b/test/mjsunit/fixtures/b/c.js index a9dd96b846..68d40bb1ea 100644 --- a/test/mjsunit/fixtures/b/c.js +++ b/test/mjsunit/fixtures/b/c.js @@ -1,4 +1,10 @@ -var d = require("d.js"); +var d = require("./d"); + +var mjsunit = require("mjsunit"); + +var package = require("./package"); + +mjsunit.assertEquals("world", package.hello); debug("load fixtures/b/c.js"); diff --git a/test/mjsunit/fixtures/b/package/index.js b/test/mjsunit/fixtures/b/package/index.js new file mode 100644 index 0000000000..4a19b877e5 --- /dev/null +++ b/test/mjsunit/fixtures/b/package/index.js @@ -0,0 +1,2 @@ +exports.hello = "world"; +debug("load package/index.js"); diff --git a/test/mjsunit/test-buffered-file.js b/test/mjsunit/test-buffered-file.js index ae02e90cf7..a065ec19b0 100644 --- a/test/mjsunit/test-buffered-file.js +++ b/test/mjsunit/test-buffered-file.js @@ -1,10 +1,10 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); -var testTxt = process.path.join(fixturesDir, "test.txt"); +var testTxt = path.join(fixturesDir, "test.txt"); -var libDir = process.path.join(testDir, "../../lib"); +var libDir = path.join(testDir, "../../lib"); require.paths.unshift(libDir); -process.mixin(require("/file.js")); +process.mixin(require("file")); var fileUnlinked = false; diff --git a/test/mjsunit/test-delayed-require.js b/test/mjsunit/test-delayed-require.js index c9f242be84..e13c82dca0 100644 --- a/test/mjsunit/test-delayed-require.js +++ b/test/mjsunit/test-delayed-require.js @@ -1,7 +1,7 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); setTimeout(function () { - a = require("fixtures/a.js"); + a = require("./fixtures/a"); }, 50); process.addListener("exit", function () { diff --git a/test/mjsunit/test-event-emitter-add-listeners.js b/test/mjsunit/test-event-emitter-add-listeners.js index 8d323899a2..53fa8ee510 100644 --- a/test/mjsunit/test-event-emitter-add-listeners.js +++ b/test/mjsunit/test-event-emitter-add-listeners.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var e = new process.EventEmitter(); diff --git a/test/mjsunit/test-exec.js b/test/mjsunit/test-exec.js index 1f24c4b31b..7a9cf8f005 100644 --- a/test/mjsunit/test-exec.js +++ b/test/mjsunit/test-exec.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); success_count = 0; error_count = 0; diff --git a/test/mjsunit/test-file-cat-noexist.js b/test/mjsunit/test-file-cat-noexist.js index 30c1e2b5e7..301cc937fb 100644 --- a/test/mjsunit/test-file-cat-noexist.js +++ b/test/mjsunit/test-file-cat-noexist.js @@ -1,7 +1,7 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var got_error = false; -var filename = process.path.join(fixturesDir, "does_not_exist.txt"); +var filename = path.join(fixturesDir, "does_not_exist.txt"); var promise = posix.cat(filename, "raw"); promise.addCallback(function (content) { diff --git a/test/mjsunit/test-fs-sendfile.js b/test/mjsunit/test-fs-sendfile.js index 3a9a1bfbe3..70161fbf1c 100644 --- a/test/mjsunit/test-fs-sendfile.js +++ b/test/mjsunit/test-fs-sendfile.js @@ -1,9 +1,9 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); -tcp = require("/tcp.js"); -sys = require("/sys.js"); +tcp = require("tcp"); +sys = require("sys"); PORT = 23123; -var x = process.path.join(fixturesDir, "x.txt"); +var x = path.join(fixturesDir, "x.txt"); var expected = "xyz"; var server = tcp.createServer(function (socket) { diff --git a/test/mjsunit/test-fs-stat.js b/test/mjsunit/test-fs-stat.js index 376d69203c..14e155cfb7 100644 --- a/test/mjsunit/test-fs-stat.js +++ b/test/mjsunit/test-fs-stat.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var got_error = false; var success_count = 0; diff --git a/test/mjsunit/test-fs-write.js b/test/mjsunit/test-fs-write.js index 6b5906ab70..dd3c68e8ff 100644 --- a/test/mjsunit/test-fs-write.js +++ b/test/mjsunit/test-fs-write.js @@ -1,15 +1,15 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); -var path = process.path.join(fixturesDir, "write.txt"); +var fn = path.join(fixturesDir, "write.txt"); var expected = "hello"; var found; -posix.open(path, process.O_WRONLY | process.O_TRUNC | process.O_CREAT, 0644).addCallback(function (file) { +posix.open(fn, process.O_WRONLY | process.O_TRUNC | process.O_CREAT, 0644).addCallback(function (file) { posix.write(file, expected, 0, "utf8").addCallback(function() { posix.close(file).addCallback(function() { - posix.cat(path, process.UTF8).addCallback(function(contents) { + posix.cat(fn, process.UTF8).addCallback(function(contents) { found = contents; - posix.unlink(path).wait(); + posix.unlink(fn).wait(); }); }); }); diff --git a/test/mjsunit/test-http-cat.js b/test/mjsunit/test-http-cat.js index 13deab399b..0f87630ea5 100644 --- a/test/mjsunit/test-http-cat.js +++ b/test/mjsunit/test-http-cat.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -http = require("/http.js"); +process.mixin(require("./common")); +http = require("http"); PORT = 8888; var body = "exports.A = function() { return 'A';}"; diff --git a/test/mjsunit/test-http-client-race.js b/test/mjsunit/test-http-client-race.js index 796c74d86b..264ebca20c 100644 --- a/test/mjsunit/test-http-client-race.js +++ b/test/mjsunit/test-http-client-race.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -http = require("/http.js"); +process.mixin(require("./common")); +http = require("http"); PORT = 8888; var body1_s = "1111111111111111"; diff --git a/test/mjsunit/test-http-client-upload.js b/test/mjsunit/test-http-client-upload.js index 071e00178a..4ee68b9306 100644 --- a/test/mjsunit/test-http-client-upload.js +++ b/test/mjsunit/test-http-client-upload.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -http = require("/http.js"); +process.mixin(require("./common")); +http = require("http"); var PORT = 18032; var sent_body = ""; diff --git a/test/mjsunit/test-http-malformed-request.js b/test/mjsunit/test-http-malformed-request.js index 48c3e998c6..e9c8fc576d 100644 --- a/test/mjsunit/test-http-malformed-request.js +++ b/test/mjsunit/test-http-malformed-request.js @@ -1,6 +1,6 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); -http = require("/http.js"); +process.mixin(require("./common")); +tcp = require("tcp"); +http = require("http"); // Make sure no exceptions are thrown when receiving malformed HTTP // requests. diff --git a/test/mjsunit/test-http-proxy.js b/test/mjsunit/test-http-proxy.js index 508d203078..e9ffde70a5 100644 --- a/test/mjsunit/test-http-proxy.js +++ b/test/mjsunit/test-http-proxy.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -http = require("/http.js"); +process.mixin(require("./common")); +http = require("http"); var PROXY_PORT = 8869; var BACKEND_PORT = 8870; diff --git a/test/mjsunit/test-http-server.js b/test/mjsunit/test-http-server.js index d28b3d924a..4dda11169c 100644 --- a/test/mjsunit/test-http-server.js +++ b/test/mjsunit/test-http-server.js @@ -1,6 +1,6 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); -http = require("/http.js"); +process.mixin(require("./common")); +tcp = require("tcp"); +http = require("http"); var port = 8222; diff --git a/test/mjsunit/test-http.js b/test/mjsunit/test-http.js index 1546507f77..f71a0ee171 100644 --- a/test/mjsunit/test-http.js +++ b/test/mjsunit/test-http.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -http = require("/http.js"); +process.mixin(require("./common")); +http = require("http"); PORT = 8888; var responses_sent = 0; diff --git a/test/mjsunit/test-mkdir-rmdir.js b/test/mjsunit/test-mkdir-rmdir.js index 5defedb959..f68afc0181 100644 --- a/test/mjsunit/test-mkdir-rmdir.js +++ b/test/mjsunit/test-mkdir-rmdir.js @@ -1,8 +1,8 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); -var dirname = process.path.dirname(__filename); -var fixtures = process.path.join(dirname, "fixtures"); -var d = process.path.join(fixtures, "dir"); +var dirname = path.dirname(__filename); +var fixtures = path.join(dirname, "fixtures"); +var d = path.join(fixtures, "dir"); var mkdir_error = false; var rmdir_error = false; diff --git a/test/mjsunit/test-module-loading.js b/test/mjsunit/test-module-loading.js index 58b3715714..9659005d16 100644 --- a/test/mjsunit/test-module-loading.js +++ b/test/mjsunit/test-module-loading.js @@ -1,10 +1,10 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); debug("load test-module-loading.js"); -var a = require("fixtures/a.js"); -var d = require("fixtures/b/d.js"); -var d2 = require("fixtures/b/d.js"); +var a = require("./fixtures/a"); +var d = require("./fixtures/b/d"); +var d2 = require("./fixtures/b/d"); assertFalse(false, "testing the test program."); diff --git a/test/mjsunit/test-multipart.js b/test/mjsunit/test-multipart.js index 21fa7fdf55..d0472c4647 100644 --- a/test/mjsunit/test-multipart.js +++ b/test/mjsunit/test-multipart.js @@ -1,8 +1,8 @@ -process.mixin(require("common.js")); -http = require("/http.js"); +process.mixin(require("./common")); +http = require("http"); -var multipart = require('/multipart.js'); -var fixture = require('fixtures/multipart.js'); +var multipart = require('multipart'); +var fixture = require('./fixtures/multipart'); var port = 8222; var parts_reveived = 0; diff --git a/test/mjsunit/test-process-buffering.js b/test/mjsunit/test-process-buffering.js index b0d795275e..6943d50d26 100644 --- a/test/mjsunit/test-process-buffering.js +++ b/test/mjsunit/test-process-buffering.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var pwd_called = false; diff --git a/test/mjsunit/test-process-kill.js b/test/mjsunit/test-process-kill.js index 59cc5361df..995b809583 100644 --- a/test/mjsunit/test-process-kill.js +++ b/test/mjsunit/test-process-kill.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var exit_status = -1; diff --git a/test/mjsunit/test-process-simple.js b/test/mjsunit/test-process-simple.js index 4a38ca552b..2413cb7b6e 100644 --- a/test/mjsunit/test-process-simple.js +++ b/test/mjsunit/test-process-simple.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var cat = process.createChildProcess("cat"); diff --git a/test/mjsunit/test-process-spawn-loop.js b/test/mjsunit/test-process-spawn-loop.js index ebeb5e5b55..cc96a12af9 100644 --- a/test/mjsunit/test-process-spawn-loop.js +++ b/test/mjsunit/test-process-spawn-loop.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var N = 40; var finished = false; diff --git a/test/mjsunit/test-promise-timeout.js b/test/mjsunit/test-promise-timeout.js index 5f31a165d6..8166a528d4 100644 --- a/test/mjsunit/test-promise-timeout.js +++ b/test/mjsunit/test-promise-timeout.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var timeouts = 0; diff --git a/test/mjsunit/test-promise-wait.js b/test/mjsunit/test-promise-wait.js index 2b662ccec9..baba7c407c 100644 --- a/test/mjsunit/test-promise-wait.js +++ b/test/mjsunit/test-promise-wait.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var p1_done = false; var p1 = new process.Promise(); diff --git a/test/mjsunit/test-readdir.js b/test/mjsunit/test-readdir.js index 8a37079fbf..33b9fe32b7 100644 --- a/test/mjsunit/test-readdir.js +++ b/test/mjsunit/test-readdir.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var got_error = false; diff --git a/test/mjsunit/test-signal-handler.js b/test/mjsunit/test-signal-handler.js index 12ad20e075..5c277ba74a 100644 --- a/test/mjsunit/test-signal-handler.js +++ b/test/mjsunit/test-signal-handler.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); puts("process.pid: " + process.pid); diff --git a/test/mjsunit/test-tcp-binary.js b/test/mjsunit/test-tcp-binary.js index 988e79160f..b628c497ba 100644 --- a/test/mjsunit/test-tcp-binary.js +++ b/test/mjsunit/test-tcp-binary.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); PORT = 23123; binaryString = ""; diff --git a/test/mjsunit/test-tcp-many-clients.js b/test/mjsunit/test-tcp-many-clients.js index b501a5f4a7..2f18ad4c4a 100644 --- a/test/mjsunit/test-tcp-many-clients.js +++ b/test/mjsunit/test-tcp-many-clients.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); // settings var port = 20743; var bytes = 1024*40; diff --git a/test/mjsunit/test-tcp-pingpong-delay.js b/test/mjsunit/test-tcp-pingpong-delay.js index a2140f13b4..8560e86c96 100644 --- a/test/mjsunit/test-tcp-pingpong-delay.js +++ b/test/mjsunit/test-tcp-pingpong-delay.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); var tests_run = 0; diff --git a/test/mjsunit/test-tcp-pingpong.js b/test/mjsunit/test-tcp-pingpong.js index f6ed15b684..df919bebe6 100644 --- a/test/mjsunit/test-tcp-pingpong.js +++ b/test/mjsunit/test-tcp-pingpong.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); var tests_run = 0; diff --git a/test/mjsunit/test-tcp-reconnect.js b/test/mjsunit/test-tcp-reconnect.js index baa0fea19f..96a383ad73 100644 --- a/test/mjsunit/test-tcp-reconnect.js +++ b/test/mjsunit/test-tcp-reconnect.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); var N = 50; var port = 8921; diff --git a/test/mjsunit/test-tcp-throttle-kernel-buffer.js b/test/mjsunit/test-tcp-throttle-kernel-buffer.js index a4ad64de97..cf632e98b9 100644 --- a/test/mjsunit/test-tcp-throttle-kernel-buffer.js +++ b/test/mjsunit/test-tcp-throttle-kernel-buffer.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); PORT = 20444; N = 30*1024; // 500kb diff --git a/test/mjsunit/test-tcp-throttle.js b/test/mjsunit/test-tcp-throttle.js index 7223425f48..020e7c577f 100644 --- a/test/mjsunit/test-tcp-throttle.js +++ b/test/mjsunit/test-tcp-throttle.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); PORT = 20443; N = 200; diff --git a/test/mjsunit/test-tcp-timeout.js b/test/mjsunit/test-tcp-timeout.js index a559ba23e3..ba76846b09 100644 --- a/test/mjsunit/test-tcp-timeout.js +++ b/test/mjsunit/test-tcp-timeout.js @@ -1,5 +1,5 @@ -process.mixin(require("common.js")); -tcp = require("/tcp.js"); +process.mixin(require("./common")); +tcp = require("tcp"); port = 9992; exchanges = 0; starttime = null; diff --git a/test/mjsunit/test-timers.js b/test/mjsunit/test-timers.js index 361da3152a..827164a046 100644 --- a/test/mjsunit/test-timers.js +++ b/test/mjsunit/test-timers.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); var WINDOW = 200; // why is does this need to be so big? diff --git a/test/mjsunit/test-utf8-scripts.js b/test/mjsunit/test-utf8-scripts.js index b679e3d544..9ad2159f3b 100644 --- a/test/mjsunit/test-utf8-scripts.js +++ b/test/mjsunit/test-utf8-scripts.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); // üäö diff --git a/test/mjsunit/test-wait-ordering.js b/test/mjsunit/test-wait-ordering.js index f8503b032b..2937fa7bbd 100644 --- a/test/mjsunit/test-wait-ordering.js +++ b/test/mjsunit/test-wait-ordering.js @@ -1,4 +1,4 @@ -process.mixin(require("common.js")); +process.mixin(require("./common")); function timer (t) { var promise = new process.Promise();