Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/rewire.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes <mail@johannesewald.de>2012-06-06 04:27:48 +0400
committerJohannes <mail@johannesewald.de>2012-06-06 04:27:48 +0400
commita7be4a9f1fffffe8e2b2aa45add8b8a6b3cc5ad7 (patch)
treeb143e8c21b73ed9df482ac6b29de3ec122d7b56b
parent9d368a2f0d328092781b5282001196d59f8fc160 (diff)
added support for older node versionsv0.1.3
-rw-r--r--README.md9
-rw-r--r--lib/rewire.js7
-rw-r--r--package.json4
3 files changed, 14 insertions, 6 deletions
diff --git a/README.md b/README.md
index 3abc6bf..1ae46f1 100644
--- a/README.md
+++ b/README.md
@@ -13,10 +13,6 @@ rewire does **not** load the file and eval the contents to emulate node's requir
**Debugging is fully supported.**
-##Important note:
-
-rewire works currently only with node >=0.6.15. In doubt run `npm test`.
-
-----------------------------------------------------------------
<br />
@@ -25,6 +21,11 @@ Installation
`npm install rewire`
+### For older node versions
+
+rewire is tested with node 0.6.x. I recommend to run the unit tests via `mocha` in the rewire-folder before
+using rewire with older node versions.
+
-----------------------------------------------------------------
<br />
diff --git a/lib/rewire.js b/lib/rewire.js
index 3de8418..33f5d22 100644
--- a/lib/rewire.js
+++ b/lib/rewire.js
@@ -36,6 +36,13 @@ function rewire(parentModule, filename, mocks, injections, leaks, cache) {
// Init vars
filename = Module._resolveFilename(filename, parentModule); // resolve full filename relative to the parent module
+
+ // Special support for older node versions that returned an array on Module._resolveFilename
+ // @see https://github.com/joyent/node/blob/865b077819a9271a29f982faaef99dc635b57fbc/lib/module.js#L319
+ if (Array.isArray(filename)) {
+ filename = filename[1];
+ }
+
testModule = new Module(filename, parentModule);
nodeRequire = testModule.require; // caching original node require
diff --git a/package.json b/package.json
index 774ba95..6048f87 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name" : "rewire",
- "version" : "0.1.2",
+ "version" : "0.1.3",
"description" : "Dependency injection for node.js applications",
"keywords" : [
"dependency",
@@ -25,7 +25,7 @@
"url": "git://github.com/jhnns/rewire.git"
},
"engines" : {
- "node" : ">=0.6.15"
+ "node" : "0.6.x"
},
"dependencies": {
"toSrc": "0.1.x"