@@ -75,7 +75,22 @@ function createApp(name, verbose, version, useNpm, template, language) {
7575 dev : "next" ,
7676 build : "next build" ,
7777 start : "next start" ,
78- export : "next export"
78+ export : "next export" ,
79+ test : "jest"
80+ } ,
81+ jest : {
82+ setupFiles : [ "./scripts/test-setup" ]
83+ } ,
84+ devDependencies : {
85+ "@babel/preset-env" : "^7.0.0" ,
86+ "@babel/preset-react" : "^7.0.0" ,
87+ "babel-core" : "^7.0.0-0" ,
88+ "@babel/core" : "^7.0.0" ,
89+ "babel-jest" : "^23.4.2" ,
90+ enzyme : "^3.6.0" ,
91+ "enzyme-adapter-react-16" : "^1.5.0" ,
92+ "enzyme-to-json" : "^3.3.4" ,
93+ jest : "^23.5.0"
7994 }
8095 } ;
8196 fs . writeFileSync (
@@ -84,15 +99,23 @@ function createApp(name, verbose, version, useNpm, template, language) {
8499 ) ;
85100 const originalDirectory = process . cwd ( ) ;
86101 process . chdir ( root ) ;
87- run ( root , appName , version , verbose , originalDirectory , template ) ;
102+ const devDeps = Object . keys ( packageJson . devDependencies ) ;
103+ run ( root , appName , version , verbose , originalDirectory , template , devDeps ) ;
88104}
89105const exec = require ( "child_process" ) . exec ;
90106let nodePath ;
91107exec ( "npm config get prefix" , function ( err , stdout , stderr ) {
92108 nodePath = stdout ;
93109} ) ;
94-
95- function run ( root , appName , version , verbose , originalDirectory , template ) {
110+ function run (
111+ root ,
112+ appName ,
113+ version ,
114+ verbose ,
115+ originalDirectory ,
116+ template ,
117+ devDeps
118+ ) {
96119 const allDependencies = [
97120 "react" ,
98121 "react-dom" ,
@@ -113,7 +136,10 @@ function run(root, appName, version, verbose, originalDirectory, template) {
113136 console . log ( "Installing packages. This might take a couple of minutes." ) ;
114137 let packageName ;
115138 console . log (
116- `Installing ${ allDependencies . map ( entry => chalk . cyan ( entry ) ) . join ( ", " ) } `
139+ `Installing ${ allDependencies
140+ . concat ( devDeps )
141+ . map ( entry => chalk . cyan ( entry ) )
142+ . join ( ", " ) } `
117143 ) ;
118144 console . log ( ) ;
119145 const useYarn = isYarnAvailable ( ) ;
@@ -165,6 +191,9 @@ function run(root, appName, version, verbose, originalDirectory, template) {
165191 console . log ( chalk . cyan ( ` ${ displayedCommand } dev` ) ) ;
166192 console . log ( " Starts the development server." ) ;
167193 console . log ( ) ;
194+ console . log ( chalk . cyan ( ` ${ displayedCommand } test` ) ) ;
195+ console . log ( " Starts the test runner." ) ;
196+ console . log ( ) ;
168197 console . log ( chalk . cyan ( ` ${ displayedCommand } build` ) ) ;
169198 console . log ( " Builds the app for production." ) ;
170199 console . log ( ) ;
0 commit comments