@@ -1137,5 +1137,46 @@ export function gfoo() {
1137
1137
} ) ;
1138
1138
} ) ;
1139
1139
} ) ;
1140
+
1141
+ it ( "incremental updates in verbose mode" , ( ) => {
1142
+ const host = createTsBuildWatchSystem ( allFiles , { currentDirectory : projectsLocation } ) ;
1143
+ const solutionBuilder = createSolutionBuilder ( host , [ `${ project } /${ SubProject . tests } ` ] , { verbose : true , watch : true } ) ;
1144
+ solutionBuilder . buildAllProjects ( ) ;
1145
+ solutionBuilder . startWatching ( ) ;
1146
+ checkOutputErrorsInitial ( host , emptyArray , /*disableConsoleClears*/ undefined , [
1147
+ `Projects in this build: \r\n * sample1/core/tsconfig.json\r\n * sample1/logic/tsconfig.json\r\n * sample1/tests/tsconfig.json\n\n` ,
1148
+ `Project 'sample1/core/tsconfig.json' is out of date because output file 'sample1/core/anotherModule.js' does not exist\n\n` ,
1149
+ `Building project '/user/username/projects/sample1/core/tsconfig.json'...\n\n` ,
1150
+ `Project 'sample1/logic/tsconfig.json' is out of date because output file 'sample1/logic/index.js' does not exist\n\n` ,
1151
+ `Building project '/user/username/projects/sample1/logic/tsconfig.json'...\n\n` ,
1152
+ `Project 'sample1/tests/tsconfig.json' is out of date because output file 'sample1/tests/index.js' does not exist\n\n` ,
1153
+ `Building project '/user/username/projects/sample1/tests/tsconfig.json'...\n\n`
1154
+ ] ) ;
1155
+ verifyWatches ( host ) ;
1156
+
1157
+ // Make non dts change
1158
+ host . writeFile ( logic [ 1 ] . path , `${ logic [ 1 ] . content }
1159
+ function someFn() { }` ) ;
1160
+ host . checkTimeoutQueueLengthAndRun ( 1 ) ; // build logic
1161
+ host . checkTimeoutQueueLengthAndRun ( 1 ) ; // build tests
1162
+ checkOutputErrorsIncremental ( host , emptyArray , /*disableConsoleClears*/ undefined , /*logsBeforeWatchDiagnostics*/ undefined , [
1163
+ `Project 'sample1/logic/tsconfig.json' is out of date because oldest output 'sample1/logic/index.js' is older than newest input 'sample1/core'\n\n` ,
1164
+ `Building project '/user/username/projects/sample1/logic/tsconfig.json'...\n\n` ,
1165
+ `Project 'sample1/tests/tsconfig.json' is up to date with .d.ts files from its dependencies\n\n` ,
1166
+ `Updating output timestamps of project '/user/username/projects/sample1/tests/tsconfig.json'...\n\n` ,
1167
+ ] ) ;
1168
+
1169
+ // Make dts change
1170
+ host . writeFile ( logic [ 1 ] . path , `${ logic [ 1 ] . content }
1171
+ export function someFn() { }` ) ;
1172
+ host . checkTimeoutQueueLengthAndRun ( 1 ) ; // build logic
1173
+ host . checkTimeoutQueueLengthAndRun ( 1 ) ; // build tests
1174
+ checkOutputErrorsIncremental ( host , emptyArray , /*disableConsoleClears*/ undefined , /*logsBeforeWatchDiagnostics*/ undefined , [
1175
+ `Project 'sample1/logic/tsconfig.json' is out of date because oldest output 'sample1/logic/index.js' is older than newest input 'sample1/core'\n\n` ,
1176
+ `Building project '/user/username/projects/sample1/logic/tsconfig.json'...\n\n` ,
1177
+ `Project 'sample1/tests/tsconfig.json' is out of date because oldest output 'sample1/tests/index.js' is older than newest input 'sample1/logic/tsconfig.json'\n\n` ,
1178
+ `Building project '/user/username/projects/sample1/tests/tsconfig.json'...\n\n` ,
1179
+ ] ) ;
1180
+ } ) ;
1140
1181
} ) ;
1141
1182
}
0 commit comments