@@ -3,9 +3,9 @@ import { parseNpmLockFile } from './npm';
33import { parsePnpmLockFile } from './pnpm' ;
44import { parseYarnLockFile } from './yarn' ;
55import {
6- lockFileV3YargsOnly as npmLockFileV3YargsOnly ,
7- lockFileV2YargsOnly as npmLockFileV2YargsOnly ,
8- lockFileV1YargsOnly as npmLockFileV1YargsOnly ,
6+ lockFileV3YargsAndDevkitOnly as npmLockFileV3YargsAndDevkit ,
7+ lockFileV2YargsAndDevkitOnly as npmLockFileV2YargsAndDevkit ,
8+ lockFileV1YargsAndDevkitOnly as npmLockFileV1YargsAndDevkit ,
99 lockFileV3 as npmLockFileV3 ,
1010 lockFileV2 as npmLockFileV2 ,
1111 lockFileV1 as npmLockFileV1 ,
@@ -32,25 +32,28 @@ jest.mock('nx/src/utils/workspace-root', () => ({
3232} ) ) ;
3333
3434describe ( 'lock-file' , ( ) => {
35- const fileSys = {
36- 'node_modules/chalk/package.json' : '{"version": "4.1.0"}' ,
37- 'node_modules/glob/package.json' : '{"version": "7.1.4"}' ,
38- 'node_modules/js-yaml/package.json' : '{"version": "4.1.0"}' ,
39- 'node_modules/minimatch/package.json' : '{"version": "3.0.5"}' ,
40- 'node_modules/semver/package.json' : '{"version": "7.3.4"}' ,
41- 'node_modules/tslib/package.json' : '{"version": "2.4.0"}' ,
42- 'node_modules/yargs-parser/package.json' : '{"version": "21.0.1"}' ,
43- } ;
44- beforeEach ( ( ) => {
45- vol . fromJSON ( fileSys , '/root' ) ;
46- } ) ;
47-
4835 describe ( 'mapLockFileDataToExternalNodes' , ( ) => {
4936 describe ( 'yarn' , ( ) => {
37+ const fileSys = {
38+ 'node_modules/chalk/package.json' : '{"version": "4.1.0"}' ,
39+ 'node_modules/glob/package.json' : '{"version": "7.1.4"}' ,
40+ 'node_modules/js-yaml/package.json' : '{"version": "4.1.0"}' ,
41+ 'node_modules/minimatch/package.json' : '{"version": "3.0.5"}' ,
42+ 'node_modules/semver/package.json' : '{"version": "7.3.4"}' ,
43+ 'node_modules/tslib/package.json' : '{"version": "2.4.0"}' ,
44+ 'node_modules/yargs-parser/package.json' : '{"version": "21.0.1"}' ,
45+ } ;
46+ beforeEach ( ( ) => {
47+ vol . fromJSON ( fileSys , '/root' ) ;
48+ } ) ;
49+
5050 it ( 'should map lock file data to external nodes' , ( ) => {
5151 const lockFileData = parseYarnLockFile ( yarnLockFileDevkitAndYargs ) ;
5252
53- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
53+ const partialGraph = mapLockFileDataToPartialGraph (
54+ lockFileData ,
55+ 'yarn'
56+ ) ;
5457
5558 expect ( partialGraph . externalNodes [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
5659 expect ( partialGraph . dependencies [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
@@ -59,36 +62,52 @@ describe('lock-file', () => {
5962 it ( 'should map successfully complex lock file' , ( ) => {
6063 const lockFileData = parseYarnLockFile ( yarnLockFile ) ;
6164
62- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
65+ const partialGraph = mapLockFileDataToPartialGraph (
66+ lockFileData ,
67+ 'yarn'
68+ ) ;
6369
6470 expect ( partialGraph . externalNodes [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
6571 expect ( partialGraph . dependencies [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
6672 } ) ;
6773 } ) ;
6874
6975 describe ( 'npm' , ( ) => {
76+ const fileSys = {
77+ 'node_modules/chalk/package.json' : '{"version": "4.1.2"}' ,
78+ 'node_modules/glob/package.json' : '{"version": "7.1.4"}' ,
79+ 'node_modules/js-yaml/package.json' : '{"version": "4.1.0"}' ,
80+ 'node_modules/minimatch/package.json' : '{"version": "4.0.5"}' ,
81+ 'node_modules/semver/package.json' : '{"version": "7.3.4"}' ,
82+ 'node_modules/tslib/package.json' : '{"version": "2.4.1"}' ,
83+ 'node_modules/yargs-parser/package.json' : '{"version": "21.1.1"}' ,
84+ } ;
85+ beforeEach ( ( ) => {
86+ vol . fromJSON ( fileSys , '/root' ) ;
87+ } ) ;
88+
7089 it ( 'should map lock file v3 data to external nodes' , ( ) => {
71- const lockFileData = parseNpmLockFile ( npmLockFileV3YargsOnly ) ;
90+ const lockFileData = parseNpmLockFile ( npmLockFileV3YargsAndDevkit ) ;
7291
73- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
92+ const partialGraph = mapLockFileDataToPartialGraph ( lockFileData , 'npm' ) ;
7493
7594 expect ( partialGraph . externalNodes [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
7695 expect ( partialGraph . dependencies [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
7796 } ) ;
7897
7998 it ( 'should map lock file v2 data to external nodes' , ( ) => {
80- const lockFileData = parseNpmLockFile ( npmLockFileV2YargsOnly ) ;
99+ const lockFileData = parseNpmLockFile ( npmLockFileV2YargsAndDevkit ) ;
81100
82- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
101+ const partialGraph = mapLockFileDataToPartialGraph ( lockFileData , 'npm' ) ;
83102
84103 expect ( partialGraph . externalNodes [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
85104 expect ( partialGraph . dependencies [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
86105 } ) ;
87106
88107 it ( 'should map lock file v1 data to external nodes' , ( ) => {
89- const lockFileData = parseNpmLockFile ( npmLockFileV1YargsOnly ) ;
108+ const lockFileData = parseNpmLockFile ( npmLockFileV1YargsAndDevkit ) ;
90109
91- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
110+ const partialGraph = mapLockFileDataToPartialGraph ( lockFileData , 'npm' ) ;
92111
93112 expect ( partialGraph . externalNodes [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
94113 expect ( partialGraph . dependencies [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
@@ -97,7 +116,7 @@ describe('lock-file', () => {
97116 it ( 'should map successfully complex lock file v3' , ( ) => {
98117 const lockFileData = parseNpmLockFile ( npmLockFileV3 ) ;
99118
100- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
119+ const partialGraph = mapLockFileDataToPartialGraph ( lockFileData , 'npm' ) ;
101120
102121 expect ( partialGraph . externalNodes [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
103122 expect ( partialGraph . dependencies [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
@@ -106,7 +125,7 @@ describe('lock-file', () => {
106125 it ( 'should map successfully complex lock file v2' , ( ) => {
107126 const lockFileData = parseNpmLockFile ( npmLockFileV2 ) ;
108127
109- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
128+ const partialGraph = mapLockFileDataToPartialGraph ( lockFileData , 'npm' ) ;
110129
111130 expect ( partialGraph . externalNodes [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
112131 expect ( partialGraph . dependencies [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
@@ -115,18 +134,34 @@ describe('lock-file', () => {
115134 it ( 'should map successfully complex npm lock file v1' , ( ) => {
116135 const lockFileData = parseNpmLockFile ( npmLockFileV1 ) ;
117136
118- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
137+ const partialGraph = mapLockFileDataToPartialGraph ( lockFileData , 'npm' ) ;
119138
120139 expect ( partialGraph . externalNodes [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
121140 expect ( partialGraph . dependencies [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
122141 } ) ;
123142 } ) ;
124143
125144 describe ( 'pnpm' , ( ) => {
145+ const fileSys = {
146+ 'node_modules/chalk/package.json' : '{"version": "4.1.0"}' ,
147+ 'node_modules/glob/package.json' : '{"version": "7.1.4"}' ,
148+ 'node_modules/js-yaml/package.json' : '{"version": "4.1.0"}' ,
149+ 'node_modules/minimatch/package.json' : '{"version": "3.0.5"}' ,
150+ 'node_modules/semver/package.json' : '{"version": "7.3.4"}' ,
151+ 'node_modules/tslib/package.json' : '{"version": "2.4.0"}' ,
152+ 'node_modules/yargs-parser/package.json' : '{"version": "21.0.1"}' ,
153+ } ;
154+ beforeEach ( ( ) => {
155+ vol . fromJSON ( fileSys , '/root' ) ;
156+ } ) ;
157+
126158 it ( 'should map lock file data to external nodes' , ( ) => {
127159 const lockFileData = parsePnpmLockFile ( pnpmLockFileYargsOnly ) ;
128160
129- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
161+ const partialGraph = mapLockFileDataToPartialGraph (
162+ lockFileData ,
163+ 'pnpm'
164+ ) ;
130165
131166 expect ( partialGraph . externalNodes [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
132167 expect ( partialGraph . dependencies [ 'npm:yargs' ] ) . toMatchSnapshot ( ) ;
@@ -135,7 +170,10 @@ describe('lock-file', () => {
135170 it ( 'should map successfully complex lock file' , ( ) => {
136171 const lockFileData = parsePnpmLockFile ( pnpmLockFile ) ;
137172
138- const partialGraph = mapLockFileDataToPartialGraph ( lockFileData ) ;
173+ const partialGraph = mapLockFileDataToPartialGraph (
174+ lockFileData ,
175+ 'pnpm'
176+ ) ;
139177
140178 expect ( partialGraph . externalNodes [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
141179 expect ( partialGraph . dependencies [ 'npm:nx' ] ) . toMatchSnapshot ( ) ;
0 commit comments