@@ -293,6 +293,37 @@ const a: string = 10;`, "utf-8"),
293
293
baselinePrograms : true ,
294
294
} ) ;
295
295
296
+ verifyTscSerializedIncrementalEdits ( {
297
+ scenario : "incremental" ,
298
+ subScenario : "assumeChangesAffectShape" ,
299
+ fs : ( ) => loadProjectFromFiles ( {
300
+ "/src/project/main.ts" : `import { foo } from "./module";foo();` ,
301
+ "/src/project/module.ts" : `export function foo(): string { return "hello"; }` ,
302
+ "/src/project/extraFile.ts" : "export const extra = 10;" ,
303
+ "/src/project/tsconfig.json" : JSON . stringify ( {
304
+ compilerOptions : { assumeChangesAffectShape : true }
305
+ } )
306
+ } ) ,
307
+ commandLineArgs : [ "--incremental" , "--p" , "src/project" ] ,
308
+ incrementalScenarios : [
309
+ {
310
+ subScenario : "Local edit to module" ,
311
+ modifyFs : fs => replaceText ( fs , "/src/project/module.ts" , "hello" , "hello world" ) ,
312
+ buildKind : BuildKind . IncrementalDtsUnchanged
313
+ } ,
314
+ {
315
+ subScenario : "Local edit to module again" ,
316
+ modifyFs : fs => replaceText ( fs , "/src/project/module.ts" , "hello" , "hello world" ) ,
317
+ buildKind : BuildKind . IncrementalDtsUnchanged
318
+ } ,
319
+ {
320
+ subScenario : "Api change edit to module" ,
321
+ modifyFs : fs => prependText ( fs , "/src/project/module.ts" , "export const x = 10;" ) ,
322
+ buildKind : BuildKind . IncrementalDtsUnchanged
323
+ } ,
324
+ ]
325
+ } ) ;
326
+
296
327
describe ( "when synthesized imports are added to files" , ( ) => {
297
328
function getJsxLibraryContent ( ) {
298
329
return `
0 commit comments