Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Socket
Sign inDemoInstall

transform-jest-deps

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

transform-jest-deps - npm Package Compare versions

Comparing version 2.1.0 to 2.2.0

11

lib/transform.js

@@ -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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc