1+ import { readFileSync } from 'fs' ;
12import * as mock from 'mock-fs' ;
2- import { createManifest , createMockDescriptor , createMockFs } from '../../test/helpers' ;
3- import { IManifest } from '../typings' ;
3+ import { createFile , createManifest , createMockDescriptor , createMockFs } from '../../test/helpers' ;
4+ import { IManifest , IManifestDescriptor } from '../typings' ;
45import { getMismatchedVersions , getVersions , setVersion , setVersionRange , setVersionsToNewestMismatch } from './index' ;
56
67const pattern = '/Users/you/Dev/monorepo/packages/*/package.json' ;
@@ -85,7 +86,7 @@ describe('setVersionRange', () => {
8586} ) ;
8687
8788describe ( 'setVersionsToNewestMismatch' , ( ) => {
88- it ( 'sets the version of dependencies with different versions to the newest of those versions found ' , async ( ) => {
89+ it ( 'sets all dependencies used with different versions to the newest of those versions' , async ( ) => {
8990 const result = await setVersionsToNewestMismatch ( pattern ) ;
9091 expect ( result ) . toEqual (
9192 expect . arrayContaining ( [
@@ -100,4 +101,21 @@ describe('setVersionsToNewestMismatch', () => {
100101 ] )
101102 ) ;
102103 } ) ;
104+ it ( 'rewrites the updated manifests with the correct data' , async ( ) => {
105+ await setVersionsToNewestMismatch ( pattern ) ;
106+ expect ( readFileSync ( '/Users/you/Dev/monorepo/packages/foo/package.json' , 'utf8' ) ) . toEqual (
107+ createFile (
108+ 'foo' ,
109+ { chalk : '2.3.0' , commander : '2.13.0' } ,
110+ { jest : '22.1.4' , prettier : '1.10.2' , rimraf : '2.6.2' } ,
111+ { gulp : '*' }
112+ )
113+ ) ;
114+ expect ( readFileSync ( '/Users/you/Dev/monorepo/packages/bar/package.json' , 'utf8' ) ) . toEqual (
115+ createFile ( 'bar' , { chalk : '2.3.0' } , { jest : '22.1.4' } )
116+ ) ;
117+ expect ( readFileSync ( '/Users/you/Dev/monorepo/packages/baz/package.json' , 'utf8' ) ) . toEqual (
118+ createFile ( 'baz' , { } , { npm : 'https://github.com/npm/npm.git' , prettier : '1.10.2' } , { gulp : '*' } )
119+ ) ;
120+ } ) ;
103121} ) ;
0 commit comments