Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit9370347

Browse files
authored
Fix missing sanitization in verifyTsc baselines for timestamps (microsoft#58609)
1 parent75342d8 commit9370347

File tree

415 files changed

+2534
-1602
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

415 files changed

+2534
-1602
lines changed

‎src/testRunner/unittests/helpers/baseline.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ import { jsonToReadableText } from "../helpers.js";
55
import{TscCompileSystem}from"./tsc.js";
66
import{TestServerHost}from"./virtualFileSystemWithWatch.js";
77

8+
exportfunctionsanitizeSysOutput(output:string){
9+
returnoutput
10+
.replace(/Elapsed::\s[0-9]+(?:\.\d+)?ms/g,"Elapsed:: *ms")
11+
.replace(/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\s(A|P)M/g,"HH:MM:SS AM");
12+
}
13+
814
exporttypeCommandLineProgram=[ts.Program,ts.BuilderProgram?];
915
exportinterfaceCommandLineCallbacks{
1016
cb:ts.ExecuteCommandLineCallbacks;

‎src/testRunner/unittests/helpers/tsc.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
ReadableBuildInfo,
1414
ReadableProgramBuildInfoFileInfo,
1515
ReadableProgramMultiFileEmitBuildInfo,
16+
sanitizeSysOutput,
1617
toPathWithSystem,
1718
tscBaselineName,
1819
}from"./baseline.js";
@@ -88,7 +89,7 @@ export function testTscCompileLike(input: TestTscCompileLike) {
8889
${baseFsPatch ?vfs.formatPatch(baseFsPatch) :""}
8990
9091
Output::
91-
${sys.output.join("")}
92+
${sys.output.map(sanitizeSysOutput).join("")}
9293
9394
${patch ?vfs.formatPatch(patch) :""}`,
9495
};

‎src/testRunner/unittests/helpers/tscWatch.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,7 @@ function changeToTestServerHostWithTimeoutLogging(host: TestServerHostTrackingWr
104104
log:s=>baseline.push(s),
105105
logs:baseline,
106106
};
107-
host.timeoutCallbacks.switchToBaseliningInvoke(logger,SerializeOutputOrder.BeforeDiff);
108-
host.immediateCallbacks.switchToBaseliningInvoke(logger,SerializeOutputOrder.BeforeDiff);
107+
host.switchToBaseliningInvoke(logger,SerializeOutputOrder.BeforeDiff);
109108
returnhost;
110109
}
111110

‎src/testRunner/unittests/helpers/tsserver.ts

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import {
2020
FileOrFolderOrSymLink,
2121
libFile,
2222
SerializeOutputOrder,
23-
StateLogger,
2423
TestServerHost,
2524
TestServerHostTrackingWrittenFiles,
2625
}from"./virtualFileSystemWithWatch.js";
@@ -56,21 +55,11 @@ export function patchHostTimeouts(
5655
returnhost;
5756
}
5857

59-
constoriginalSetTime=host.setTime;
60-
61-
host.timeoutCallbacks.switchToBaseliningInvoke(logger,SerializeOutputOrder.None);
62-
host.immediateCallbacks.switchToBaseliningInvoke(loggerasStateLogger,SerializeOutputOrder.None);
63-
host.pendingInstalls.switchToBaseliningInvoke(logger,SerializeOutputOrder.None);
64-
host.setTime=setTime;
58+
host.switchToBaseliningInvoke(logger,SerializeOutputOrder.None);
6559
host.baselineHost=baselineHost;
6660
host.patched=true;
6761
returnhost;
6862

69-
functionsetTime(time:number){
70-
logger.log(`Host is moving to new time`);
71-
returnoriginalSetTime.call(host,time);
72-
}
73-
7463
functionbaselineHost(title:string){
7564
logger.log(title);
7665
host.serializeState(logger.logs,SerializeOutputOrder.None);

‎src/testRunner/unittests/helpers/virtualFileSystemWithWatch.ts

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import {
44
WatchUtils,
55
}from"../../../harness/watchUtils.js";
66
import{
7+
append,
78
arrayFrom,
89
clear,
910
clone,
@@ -46,6 +47,7 @@ import {
4647
}from"../../_namespaces/ts.js";
4748
import{typingsInstaller}from"../../_namespaces/ts.server.js";
4849
import{timeIncrements}from"../../_namespaces/vfs.js";
50+
import{sanitizeSysOutput}from"./baseline.js";
4951

5052
exportconstlibFile:File={
5153
path:"/a/lib/lib.d.ts",
@@ -458,6 +460,17 @@ export class TestServerHost implements server.ServerHost, FormatDiagnosticsHost,
458460
this.time=time;
459461
}
460462

463+
switchToBaseliningInvoke(logger:StateLogger,serializeOutputOrder:SerializeOutputOrder){
464+
constoriginalSetTime=this.setTime;
465+
this.setTime=time=>{
466+
logger.log(`Host is moving to new time`);
467+
returnoriginalSetTime.call(this,time);
468+
};
469+
this.timeoutCallbacks.switchToBaseliningInvoke(logger,serializeOutputOrder);
470+
this.immediateCallbacks.switchToBaseliningInvoke(logger,serializeOutputOrder);
471+
this.pendingInstalls.switchToBaseliningInvoke(logger,serializeOutputOrder);
472+
}
473+
461474
privatereloadFS(fileOrFolderOrSymLinkList:FileOrFolderOrSymLinkMap|readonlyFileOrFolderOrSymLink[]){
462475
Debug.assert(this.fs.size===0);
463476
if(isArray(fileOrFolderOrSymLinkList)){
@@ -1180,11 +1193,7 @@ function diffFsEntry(baseline: string[], oldFsEntry: FSEntry | undefined, newFsE
11801193
functionbaselineOutputs(baseline:string[],output:readonlystring[],start:number,end=output.length){
11811194
letbaselinedOutput:string[]|undefined;
11821195
for(leti=start;i<end;i++){
1183-
(baselinedOutput||=[]).push(
1184-
output[i]
1185-
.replace(/Elapsed::\s[0-9]+(?:\.\d+)?ms/g,"Elapsed:: *ms")
1186-
.replace(/[0-9][0-9]:[0-9][0-9]:[0-9][0-9]\s(A|P)M/g,"HH:MM:SS AM"),
1187-
);
1196+
baselinedOutput=append(baselinedOutput,sanitizeSysOutput(output[i]));
11881197
}
11891198
if(baselinedOutput)baseline.push(baselinedOutput.join(""));
11901199
}

‎tests/baselines/reference/tsbuild/amdModulesWithOut/modules-and-globals-mixed-in-amd.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,17 +76,17 @@ const globalConst = 10;
7676

7777
Output::
7878
/lib/tsc--b/src/app--verbose
79-
[[90m12:00:16AM[0m]Projectsinthisbuild:
79+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
8080
*src/lib/tsconfig.json
8181
*src/app/tsconfig.json
8282

83-
[[90m12:00:17AM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutputfile'src/lib/module.tsbuildinfo'doesnotexist
83+
[[90mHH:MM:SSAM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutputfile'src/lib/module.tsbuildinfo'doesnotexist
8484

85-
[[90m12:00:18AM[0m]Buildingproject'/src/lib/tsconfig.json'...
85+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/lib/tsconfig.json'...
8686

87-
[[90m12:00:26AM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
87+
[[90mHH:MM:SSAM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
8888

89-
[[90m12:00:27AM[0m]Buildingproject'/src/app/tsconfig.json'...
89+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/app/tsconfig.json'...
9090

9191
exitCode::ExitStatus.Success
9292

@@ -675,17 +675,17 @@ export const x = 10;console.log(x);
675675

676676
Output::
677677
/lib/tsc--b/src/app--verbose
678-
[[90m12:00:40AM[0m]Projectsinthisbuild:
678+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
679679
*src/lib/tsconfig.json
680680
*src/app/tsconfig.json
681681

682-
[[90m12:00:41AM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutput'src/lib/module.tsbuildinfo'isolderthaninput'src/lib/file1.ts'
682+
[[90mHH:MM:SSAM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutput'src/lib/module.tsbuildinfo'isolderthaninput'src/lib/file1.ts'
683683

684-
[[90m12:00:42AM[0m]Buildingproject'/src/lib/tsconfig.json'...
684+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/lib/tsconfig.json'...
685685

686-
[[90m12:00:49AM[0m]Project'src/app/tsconfig.json'isuptodatewith.d.tsfilesfromitsdependencies
686+
[[90mHH:MM:SSAM[0m]Project'src/app/tsconfig.json'isuptodatewith.d.tsfilesfromitsdependencies
687687

688-
[[90m12:00:50AM[0m]Updatingoutputtimestampsofproject'/src/app/tsconfig.json'...
688+
[[90mHH:MM:SSAM[0m]Updatingoutputtimestampsofproject'/src/app/tsconfig.json'...
689689

690690
exitCode::ExitStatus.Success
691691

‎tests/baselines/reference/tsbuild/amdModulesWithOut/prepend-reports-deprecation-error.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -77,17 +77,17 @@ const globalConst = 10;
7777

7878
Output::
7979
/lib/tsc--b/src/app--verbose
80-
[[90m12:00:16AM[0m]Projectsinthisbuild:
80+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
8181
*src/lib/tsconfig.json
8282
*src/app/tsconfig.json
8383

84-
[[90m12:00:17AM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutputfile'src/lib/module.tsbuildinfo'doesnotexist
84+
[[90mHH:MM:SSAM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutputfile'src/lib/module.tsbuildinfo'doesnotexist
8585

86-
[[90m12:00:18AM[0m]Buildingproject'/src/lib/tsconfig.json'...
86+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/lib/tsconfig.json'...
8787

88-
[[90m12:00:26AM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
88+
[[90mHH:MM:SSAM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
8989

90-
[[90m12:00:27AM[0m]Buildingproject'/src/app/tsconfig.json'...
90+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/app/tsconfig.json'...
9191

9292
src/app/tsconfig.json:15:5- errorTS5102: Option'prepend'hasbeenremoved.Pleaseremoveitfromyourconfiguration.
9393

@@ -469,17 +469,17 @@ export const x = 10;console.log(x);
469469

470470
Output::
471471
/lib/tsc--b/src/app--verbose
472-
[[90m12:00:31AM[0m]Projectsinthisbuild:
472+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
473473
*src/lib/tsconfig.json
474474
*src/app/tsconfig.json
475475

476-
[[90m12:00:32AM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutput'src/lib/module.tsbuildinfo'isolderthaninput'src/lib/file1.ts'
476+
[[90mHH:MM:SSAM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutput'src/lib/module.tsbuildinfo'isolderthaninput'src/lib/file1.ts'
477477

478-
[[90m12:00:33AM[0m]Buildingproject'/src/lib/tsconfig.json'...
478+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/lib/tsconfig.json'...
479479

480-
[[90m12:00:40AM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
480+
[[90mHH:MM:SSAM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
481481

482-
[[90m12:00:41AM[0m]Buildingproject'/src/app/tsconfig.json'...
482+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/app/tsconfig.json'...
483483

484484
src/app/tsconfig.json:15:5- errorTS5102: Option'prepend'hasbeenremoved.Pleaseremoveitfromyourconfiguration.
485485

‎tests/baselines/reference/tsbuild/amdModulesWithOut/when-the-module-resolution-finds-original-source-file.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,17 +76,17 @@ const globalConst = 10;
7676

7777
Output::
7878
/lib/tsc-b/src/app--verbose
79-
[[90m12:00:18AM[0m]Projectsinthisbuild:
79+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
8080
*src/lib/tsconfig.json
8181
*src/app/tsconfig.json
8282

83-
[[90m12:00:19AM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutputfile'src/module.tsbuildinfo'doesnotexist
83+
[[90mHH:MM:SSAM[0m]Project'src/lib/tsconfig.json'isoutofdatebecauseoutputfile'src/module.tsbuildinfo'doesnotexist
8484

85-
[[90m12:00:20AM[0m]Buildingproject'/src/lib/tsconfig.json'...
85+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/lib/tsconfig.json'...
8686

87-
[[90m12:00:28AM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
87+
[[90mHH:MM:SSAM[0m]Project'src/app/tsconfig.json'isoutofdatebecauseoutputfile'src/app/module.tsbuildinfo'doesnotexist
8888

89-
[[90m12:00:29AM[0m]Buildingproject'/src/app/tsconfig.json'...
89+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/app/tsconfig.json'...
9090

9191
exitCode::ExitStatus.Success
9292

‎tests/baselines/reference/tsbuild/clean/tsx-with-dts-emit.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ export const x = 10;
3333

3434
Output::
3535
/lib/tsc--bsrc/project-v--explainFiles
36-
[[90m12:00:10AM[0m]Projectsinthisbuild:
36+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
3737
*src/project/tsconfig.json
3838

39-
[[90m12:00:11AM[0m]Project'src/project/tsconfig.json'isoutofdatebecauseoutputfile'src/project/src/main.js'doesnotexist
39+
[[90mHH:MM:SSAM[0m]Project'src/project/tsconfig.json'isoutofdatebecauseoutputfile'src/project/src/main.js'doesnotexist
4040

41-
[[90m12:00:12AM[0m]Buildingproject'/src/project/tsconfig.json'...
41+
[[90mHH:MM:SSAM[0m]Buildingproject'/src/project/tsconfig.json'...
4242

4343
lib/lib.d.ts
4444
Defaultlibraryfortarget'es5'
@@ -66,10 +66,10 @@ Input::
6666

6767
Output::
6868
/lib/tsc--bsrc/project-v--explainFiles
69-
[[90m12:00:15AM[0m]Projectsinthisbuild:
69+
[[90mHH:MM:SSAM[0m]Projectsinthisbuild:
7070
*src/project/tsconfig.json
7171

72-
[[90m12:00:16AM[0m]Project'src/project/tsconfig.json'isuptodatebecausenewestinput'src/project/src/main.tsx'isolderthanoutput'src/project/src/main.js'
72+
[[90mHH:MM:SSAM[0m]Project'src/project/tsconfig.json'isuptodatebecausenewestinput'src/project/src/main.tsx'isolderthanoutput'src/project/src/main.js'
7373

7474
exitCode::ExitStatus.Success
7575

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp