transform-jest-deps
Advanced tools
Comparing version 2.1.0 to 2.2.0
@@ -13,3 +13,4 @@ var _ = require('lodash'); | ||
var jestFunctions = ['dontMock', 'genMockFromModule', 'mock', 'setMock']; | ||
var jestFunctions = ['dontMock', 'genMockFromModule', 'mock', 'setMock', 'unmock']; | ||
var requireFunctions = ['requireActual', 'requireMock', 'resolve']; | ||
@@ -59,3 +60,3 @@ function parentsOf(node) { | ||
function isRequireActualStatement(node) { | ||
function isRequireExtensionStatement(node) { | ||
return node.type === 'CallExpression' && | ||
@@ -66,3 +67,3 @@ node.arguments && | ||
node.callee.object.type === 'Identifier' && | ||
node.callee.property.name === 'requireActual' && | ||
_.contains(requireFunctions, node.callee.property.name) && | ||
node.callee.property.type === 'Identifier'; | ||
@@ -77,3 +78,3 @@ } | ||
update, | ||
firstArgSource.substring(firstArgSource.length - 1, firstArgSource.length) | ||
firstArgSource.substring(firstArgSource.length - 1) | ||
]; | ||
@@ -105,3 +106,3 @@ var newValue = parts.join(''); | ||
if (isRequireStatement(node) || | ||
isRequireActualStatement(node) || | ||
isRequireExtensionStatement(node) || | ||
isJestStatement(node)) { | ||
@@ -108,0 +109,0 @@ if (!(ignoreTryCatch && inTryCatch(node))) { |
{ | ||
"name": "transform-jest-deps", | ||
"version": "2.1.0", | ||
"version": "2.2.0", | ||
"description": "Parse the AST, transforming paths in require() calls and other jest-specific calls", | ||
@@ -5,0 +5,0 @@ "main": "lib/transform.js", |
@@ -137,3 +137,3 @@ var _ = require('lodash'); | ||
var res = transform(src, replaceDep); | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
@@ -144,3 +144,3 @@ expect(res).to.eq(expected); | ||
describe('with jest statements that take a module', function() { | ||
describe('with jest statements', function() { | ||
it('replaces in simple statement', function() { | ||
@@ -150,3 +150,3 @@ src = "jest.dontMock('fs');"; | ||
var res = transform(src, replaceDep); | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
@@ -160,3 +160,3 @@ expect(res).to.eq(expected); | ||
var res = transform(src, replaceDep); | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
@@ -166,7 +166,7 @@ expect(res).to.eq(expected); | ||
it('replaces in genMockFromModule', function() { | ||
src = "jest.dontMock('fs').genMockFromModule('path');"; | ||
expected = "jest.dontMock('fsx').genMockFromModule('./path');"; | ||
it('replaces in jest.dontMock', function() { | ||
src = "jest.dontMock('fs');"; | ||
expected = "jest.dontMock('fsx');"; | ||
var res = transform(src, replaceDep); | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
@@ -176,7 +176,7 @@ expect(res).to.eq(expected); | ||
it('replaces in setMock', function() { | ||
src = "jest.dontMock('fs').setMock('path', {});"; | ||
expected = "jest.dontMock('fsx').setMock('./path', {});"; | ||
it('replaces in jest.genMockFromModule', function() { | ||
src = "jest.genMockFromModule('path');"; | ||
expected = "jest.genMockFromModule('./path');"; | ||
var res = transform(src, replaceDep); | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
@@ -186,2 +186,40 @@ expect(res).to.eq(expected); | ||
it('replaces in jest.mock', function() { | ||
src = "jest.mock('fs'); jest.mock('path', () => true);"; | ||
expected = "jest.mock('fsx'); jest.mock('./path', () => true);"; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
it('replaces in jest.setMock', function() { | ||
src = "jest.setMock('path', {});"; | ||
expected = "jest.setMock('./path', {});"; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
it('replaces in jest.unmock', function() { | ||
src = "jest.unmock('fs');"; | ||
expected = "jest.unmock('fsx');"; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
it('does not replace in jest.foo', function() { | ||
src = "require.foo('fs');"; | ||
expected = src; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
}); | ||
describe('with require statements', function() { | ||
it('replaces in require.requireActual', function() { | ||
@@ -191,7 +229,34 @@ src = "require.requireActual('fs');"; | ||
var res = transform(src, replaceDep); | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
it('replaces in require.requireMock', function() { | ||
src = "require.requireMock('fs');"; | ||
expected = "require.requireMock('fsx');"; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
it('replaces in require.resolve', function() { | ||
src = "require.resolve('fs');"; | ||
expected = "require.resolve('fsx');"; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
it('does not replace in require.foo', function() { | ||
src = "require.foo('fs');"; | ||
expected = src; | ||
var res = transform(src, replaceDep); | ||
verifyFalafel(); | ||
expect(res).to.eq(expected); | ||
}); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
14064
312