Skip to content

Commit 1cefede

Browse files
committed
fix: should check process.env
1 parent 7de27b7 commit 1cefede

2 files changed

Lines changed: 14 additions & 7 deletions

File tree

lib/method.js

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@ var method = module.exports = function mockMethod(obj, key, method) {
2828
delete obj[key];
2929
}
3030

31+
// set a flag that checks if it is mocked
32+
var flag = cache.get(obj);
33+
if (!flag) {
34+
flag = new Set();
35+
cache.set(obj, flag);
36+
}
37+
flag.add(key);
38+
3139
// Can't not delete the property of process.env before node@4
3240
if (obj === process.env) {
3341
obj[key] = method;
@@ -41,13 +49,6 @@ var method = module.exports = function mockMethod(obj, key, method) {
4149
value: method
4250
});
4351

44-
// set a flag that checks if it is mocked
45-
var flag = cache.get(obj);
46-
if (!flag) {
47-
flag = new Set();
48-
cache.set(obj, flag);
49-
}
50-
flag.add(key);
5152
};
5253

5354
/**

test/method-test.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,12 @@ describe('Mock check', function() {
229229
muk(obj, 'e', 2);
230230
assert.ok(muk.isMocked(obj, 'e'));
231231
});
232+
233+
it('should check process.env', function() {
234+
muk(process.env, 'HOME', '/mockhome');
235+
assert.equal(process.env.HOME, '/mockhome');
236+
assert.ok(muk.isMocked(process.env, 'HOME'));
237+
});
232238
});
233239

234240
function hasOwnProperty(obj, prop) {

0 commit comments

Comments
 (0)