77 * @format
88 */
99
10- const execMock = jest . fn ( ) ;
1110const echoMock = jest . fn ( ) ;
1211const catMock = jest . fn ( ) ;
1312const sedMock = jest . fn ( ) ;
@@ -16,23 +15,15 @@ const updateTemplatePackageMock = jest.fn();
1615
1716jest
1817 . mock ( 'shelljs' , ( ) => ( {
19- exec : execMock ,
2018 echo : echoMock ,
2119 cat : catMock ,
2220 sed : sedMock ,
2321 } ) )
2422 . mock ( './../update-template-package' , ( ) => updateTemplatePackageMock )
25- . mock ( './../scm-utils' , ( ) => ( {
26- saveFiles : jest . fn ( ) ,
27- } ) )
28- . mock ( 'path' , ( ) => ( {
29- join : ( ) => '../packages/react-native' ,
30- } ) )
3123 . mock ( 'fs' , ( ) => ( {
3224 writeFileSync : writeFileSyncMock ,
3325 mkdtempSync : ( ) => './rn-set-version/' ,
34- } ) )
35- . mock ( 'os' ) ;
26+ } ) ) ;
3627
3728const setReactNativeVersion = require ( '../set-rn-version' ) ;
3829
@@ -58,7 +49,6 @@ describe('set-rn-version', () => {
5849 }
5950 } ) ;
6051
61- execMock . mockReturnValueOnce ( { stdout : 'line1\nline2\nline3\n' } ) ;
6252 sedMock . mockReturnValueOnce ( { code : 0 } ) ;
6353
6454 const version = '0.81.0-nightly-29282302-abcd1234' ;
@@ -115,7 +105,6 @@ describe('set-rn-version', () => {
115105 return 'exports.version = {major: ${major}, minor: ${minor}, patch: ${patch}, prerelease: ${prerelease}}' ;
116106 } ) ;
117107
118- execMock . mockReturnValueOnce ( { stdout : 'line1\nline2\nline3\n' } ) ;
119108 sedMock . mockReturnValueOnce ( { code : 0 } ) ;
120109
121110 const version = '0.81.0' ;
@@ -144,38 +133,5 @@ describe('set-rn-version', () => {
144133 expect ( updateTemplatePackageMock ) . toHaveBeenCalledWith ( {
145134 'react-native' : version ,
146135 } ) ;
147- expect ( execMock . mock . calls [ 0 ] [ 0 ] ) . toBe (
148- `diff -r ./rn-set-version/ . | grep '^[>]' | grep -c ${ version } ` ,
149- ) ;
150- } ) ;
151-
152- it ( 'should fail validation' , ( ) => {
153- catMock . mockReturnValue ( '{}' ) ;
154-
155- execMock . mockReturnValueOnce ( { stdout : 'line1\nline2\n' } ) ;
156- sedMock . mockReturnValueOnce ( { code : 0 } ) ;
157- const filesToValidate = [
158- 'packages/react-native/package.json' ,
159- 'packages/react-native/template/package.json' ,
160- ] ;
161-
162- const version = '0.81.0' ;
163- setReactNativeVersion ( version , null , 'release' ) ;
164-
165- expect ( echoMock ) . toHaveBeenNthCalledWith (
166- 1 ,
167- 'The tmp versioning folder is ./rn-set-version/' ,
168- ) ;
169-
170- expect ( echoMock ) . toHaveBeenNthCalledWith ( 2 , 'WARNING:' ) ;
171-
172- expect ( echoMock . mock . calls [ 2 ] [ 0 ] ) . toBe (
173- `Failed to update all the files: [${ filesToValidate . join (
174- ', ' ,
175- ) } ] must have versions in them`,
176- ) ;
177- expect ( echoMock . mock . calls [ 3 ] [ 0 ] ) . toBe (
178- `These files already had version ${ version } set.` ,
179- ) ;
180136 } ) ;
181137} ) ;
0 commit comments