Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 6040c0c

Browse files
committed
Merge pull request jhnns#34 from Trott/fix-leak
Fix leak, add test, for jhnns#33
2 parents 93d3907 + 7e25ede commit 6040c0c

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

lib/rewire.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ var srcs = {
1919
function internalRewire(parentModulePath, targetPath) {
2020
var targetModule,
2121
prelude,
22-
appendix;
22+
appendix,
23+
src;
2324

2425
// Checking params
2526
if (typeof targetPath !== "string") {

test/rewire.test.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@ describe("rewire", function () {
1616
fs.renameSync(fakeNodeModules, path.resolve(__dirname, "testModules/node_modules"));
1717
}
1818
});
19+
it("should keep not leak globals", function () {
20+
// This test should run first, as the global space may be already polluted if
21+
// require("../") is run before this test.
22+
var originalGlobalKeys = Object.keys(global),
23+
rewire = require("../"),
24+
emptyModule = rewire("./testModules/emptyModule.js");
25+
expect(Object.keys(global)).to.eql(originalGlobalKeys);
26+
});
1927
it("should pass all shared test cases", function () {
2028
require("./testModules/sharedTestCases.js");
2129
});

0 commit comments

Comments
 (0)