@@ -140,6 +140,7 @@ type snapshot struct {
140
140
141
141
type testSys struct {
142
142
currentWrite * strings.Builder
143
+ programBaselines strings.Builder
143
144
tracer * harnessutil.TracerForBaselining
144
145
serializedDiff * snapshot
145
146
forIncrementalCorrectness bool
@@ -263,57 +264,53 @@ func (s *testSys) GetTrace(w io.Writer) func(str string) {
263
264
}
264
265
}
265
266
266
- func (s * testSys ) baselinePrograms (baseline * strings.Builder , programs []* incremental.Program , watcher tsc.Watcher ) {
267
- if watcher != nil {
268
- programs = []* incremental.Program {watcher .GetProgram ()}
269
- }
270
- for index , program := range programs {
271
- if index > 0 {
272
- baseline .WriteString ("\n " )
273
- }
274
- s .baselineProgram (baseline , program )
275
- }
276
- }
277
-
278
- func (s * testSys ) baselineProgram (baseline * strings.Builder , program * incremental.Program ) {
279
- if program == nil {
280
- return
267
+ func (s * testSys ) OnProgram (program * incremental.Program ) {
268
+ if s .programBaselines .Len () != 0 {
269
+ s .programBaselines .WriteString ("\n " )
281
270
}
282
271
283
- testingData := program .GetTestingData (program . GetProgram () )
284
- if testingData . ConfigFilePath != "" {
285
- baseline . WriteString (tspath .GetRelativePathFromDirectory (s .cwd , testingData . ConfigFilePath , tspath.ComparePathsOptions {
272
+ testingData := program .GetTestingData ()
273
+ if configFilePath := program . Options (). ConfigFilePath ; configFilePath != "" {
274
+ s . programBaselines . WriteString (tspath .GetRelativePathFromDirectory (s .cwd , configFilePath , tspath.ComparePathsOptions {
286
275
UseCaseSensitiveFileNames : s .FS ().UseCaseSensitiveFileNames (),
287
276
CurrentDirectory : s .GetCurrentDirectory (),
288
277
}) + "::\n " )
289
278
}
290
- baseline .WriteString ("SemanticDiagnostics::\n " )
279
+ s . programBaselines .WriteString ("SemanticDiagnostics::\n " )
291
280
for _ , file := range program .GetProgram ().GetSourceFiles () {
292
281
if diagnostics , ok := testingData .SemanticDiagnosticsPerFile .Load (file .Path ()); ok {
293
282
if oldDiagnostics , ok := testingData .OldProgramSemanticDiagnosticsPerFile .Load (file .Path ()); ! ok || oldDiagnostics != diagnostics {
294
- baseline .WriteString ("*refresh* " + file .FileName () + "\n " )
283
+ s . programBaselines .WriteString ("*refresh* " + file .FileName () + "\n " )
295
284
}
296
285
} else {
297
- baseline .WriteString ("*not cached* " + file .FileName () + "\n " )
286
+ s . programBaselines .WriteString ("*not cached* " + file .FileName () + "\n " )
298
287
}
299
288
}
300
289
301
290
// Write signature updates
302
- baseline .WriteString ("Signatures::\n " )
291
+ s . programBaselines .WriteString ("Signatures::\n " )
303
292
for _ , file := range program .GetProgram ().GetSourceFiles () {
304
293
if kind , ok := testingData .UpdatedSignatureKinds [file .Path ()]; ok {
305
294
switch kind {
306
295
case incremental .SignatureUpdateKindComputedDts :
307
- baseline .WriteString ("(computed .d.ts) " + file .FileName () + "\n " )
296
+ s . programBaselines .WriteString ("(computed .d.ts) " + file .FileName () + "\n " )
308
297
case incremental .SignatureUpdateKindStoredAtEmit :
309
- baseline .WriteString ("(stored at emit) " + file .FileName () + "\n " )
298
+ s . programBaselines .WriteString ("(stored at emit) " + file .FileName () + "\n " )
310
299
case incremental .SignatureUpdateKindUsedVersion :
311
- baseline .WriteString ("(used version) " + file .FileName () + "\n " )
300
+ s . programBaselines .WriteString ("(used version) " + file .FileName () + "\n " )
312
301
}
313
302
}
314
303
}
315
304
}
316
305
306
+ func (s * testSys ) baselinePrograms (baseline * strings.Builder ) {
307
+ baseline .WriteString (s .programBaselines .String ())
308
+ s .programBaselines .Reset ()
309
+ }
310
+
311
+ func (s * testSys ) baselineProgram (program * incremental.Program ) {
312
+ }
313
+
317
314
func (s * testSys ) serializeState (baseline * strings.Builder ) {
318
315
s .baselineOutput (baseline )
319
316
s .baselineFSwithDiff (baseline )
0 commit comments