Skip to content

Commit c8e6f1c

Browse files
committed
Convert some more tests into baselines
1 parent 333436b commit c8e6f1c

File tree

3 files changed

+159
-34
lines changed

3 files changed

+159
-34
lines changed

src/testRunner/unittests/tsbuild/containerOnlyReferenced.ts

Lines changed: 6 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -9,40 +9,12 @@ namespace ts {
99
projFs = undefined!; // Release the contents
1010
});
1111

12-
function outputs(folder: string) {
13-
return [
14-
`${folder}/index.js`,
15-
`${folder}/index.d.ts`,
16-
`${folder}/tsconfig.tsbuildinfo`
17-
];
18-
}
19-
20-
it("verify that subsequent builds after initial build doesnt build anything", () => {
21-
const fs = projFs.shadow();
22-
const host = fakes.SolutionBuilderHost.create(fs);
23-
createSolutionBuilder(host, ["/src"], { verbose: true }).build();
24-
host.assertDiagnosticMessages(
25-
getExpectedDiagnosticForProjectsInBuild("src/src/folder/tsconfig.json", "src/src/folder2/tsconfig.json", "src/src/tsconfig.json", "src/tests/tsconfig.json", "src/tsconfig.json"),
26-
[Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist, "src/src/folder/tsconfig.json", "src/src/folder/index.js"],
27-
[Diagnostics.Building_project_0, "/src/src/folder/tsconfig.json"],
28-
[Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist, "src/src/folder2/tsconfig.json", "src/src/folder2/index.js"],
29-
[Diagnostics.Building_project_0, "/src/src/folder2/tsconfig.json"],
30-
[Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist, "src/tests/tsconfig.json", "src/tests/index.js"],
31-
[Diagnostics.Building_project_0, "/src/tests/tsconfig.json"],
32-
);
33-
verifyOutputsPresent(fs, [
34-
...outputs("/src/src/folder"),
35-
...outputs("/src/src/folder2"),
36-
...outputs("/src/tests"),
37-
]);
38-
host.clearDiagnostics();
39-
createSolutionBuilder(host, ["/src"], { verbose: true }).build();
40-
host.assertDiagnosticMessages(
41-
getExpectedDiagnosticForProjectsInBuild("src/src/folder/tsconfig.json", "src/src/folder2/tsconfig.json", "src/src/tsconfig.json", "src/tests/tsconfig.json", "src/tsconfig.json"),
42-
[Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2, "src/src/folder/tsconfig.json", "src/src/folder/index.ts", "src/src/folder/index.js"],
43-
[Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2, "src/src/folder2/tsconfig.json", "src/src/folder2/index.ts", "src/src/folder2/index.js"],
44-
[Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2, "src/tests/tsconfig.json", "src/tests/index.ts", "src/tests/index.js"],
45-
);
12+
verifyTscIncrementalEdits({
13+
scenario: "containerOnlyReferenced",
14+
subScenario: "verify that subsequent builds after initial build doesnt build anything",
15+
fs: () => projFs,
16+
commandLineArgs: ["--b", "/src", "--verbose"],
17+
incrementalScenarios: [noChangeRun]
4618
});
4719
});
4820
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
//// [/lib/initial-buildOutput.txt]
2+
/lib/tsc --b /src --verbose
3+
12:01:00 AM - Projects in this build:
4+
* src/src/folder/tsconfig.json
5+
* src/src/folder2/tsconfig.json
6+
* src/src/tsconfig.json
7+
* src/tests/tsconfig.json
8+
* src/tsconfig.json
9+
10+
12:01:00 AM - Project 'src/src/folder/tsconfig.json' is out of date because output file 'src/src/folder/index.js' does not exist
11+
12+
12:01:00 AM - Building project '/src/src/folder/tsconfig.json'...
13+
14+
12:01:00 AM - Project 'src/src/folder2/tsconfig.json' is out of date because output file 'src/src/folder2/index.js' does not exist
15+
16+
12:01:00 AM - Building project '/src/src/folder2/tsconfig.json'...
17+
18+
12:01:00 AM - Project 'src/tests/tsconfig.json' is out of date because output file 'src/tests/index.js' does not exist
19+
20+
12:01:00 AM - Building project '/src/tests/tsconfig.json'...
21+
22+
exitCode:: 0
23+
24+
25+
//// [/src/src/folder/index.d.ts]
26+
export declare const x = 10;
27+
28+
29+
//// [/src/src/folder/index.js]
30+
"use strict";
31+
exports.__esModule = true;
32+
exports.x = 10;
33+
34+
35+
//// [/src/src/folder/tsconfig.tsbuildinfo]
36+
{
37+
"program": {
38+
"fileInfos": {
39+
"../../../lib/lib.d.ts": {
40+
"version": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
41+
"signature": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
42+
},
43+
"./index.ts": {
44+
"version": "-10726455937-export const x = 10;",
45+
"signature": "-6057683066-export declare const x = 10;\r\n"
46+
}
47+
},
48+
"options": {
49+
"composite": true,
50+
"configFilePath": "./tsconfig.json"
51+
},
52+
"referencedMap": {},
53+
"exportedModulesMap": {},
54+
"semanticDiagnosticsPerFile": [
55+
"../../../lib/lib.d.ts",
56+
"./index.ts"
57+
]
58+
},
59+
"version": "FakeTSVersion"
60+
}
61+
62+
//// [/src/src/folder2/index.d.ts]
63+
export declare const x = 10;
64+
65+
66+
//// [/src/src/folder2/index.js]
67+
"use strict";
68+
exports.__esModule = true;
69+
exports.x = 10;
70+
71+
72+
//// [/src/src/folder2/tsconfig.tsbuildinfo]
73+
{
74+
"program": {
75+
"fileInfos": {
76+
"../../../lib/lib.d.ts": {
77+
"version": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
78+
"signature": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
79+
},
80+
"./index.ts": {
81+
"version": "-10726455937-export const x = 10;",
82+
"signature": "-6057683066-export declare const x = 10;\r\n"
83+
}
84+
},
85+
"options": {
86+
"composite": true,
87+
"configFilePath": "./tsconfig.json"
88+
},
89+
"referencedMap": {},
90+
"exportedModulesMap": {},
91+
"semanticDiagnosticsPerFile": [
92+
"../../../lib/lib.d.ts",
93+
"./index.ts"
94+
]
95+
},
96+
"version": "FakeTSVersion"
97+
}
98+
99+
//// [/src/tests/index.d.ts]
100+
export declare const x = 10;
101+
102+
103+
//// [/src/tests/index.js]
104+
"use strict";
105+
exports.__esModule = true;
106+
exports.x = 10;
107+
108+
109+
//// [/src/tests/tsconfig.tsbuildinfo]
110+
{
111+
"program": {
112+
"fileInfos": {
113+
"../../lib/lib.d.ts": {
114+
"version": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
115+
"signature": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
116+
},
117+
"./index.ts": {
118+
"version": "-10726455937-export const x = 10;",
119+
"signature": "-6057683066-export declare const x = 10;\r\n"
120+
}
121+
},
122+
"options": {
123+
"composite": true,
124+
"configFilePath": "./tsconfig.json"
125+
},
126+
"referencedMap": {},
127+
"exportedModulesMap": {},
128+
"semanticDiagnosticsPerFile": [
129+
"../../lib/lib.d.ts",
130+
"./index.ts"
131+
]
132+
},
133+
"version": "FakeTSVersion"
134+
}
135+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
//// [/lib/no-change-runOutput.txt]
2+
/lib/tsc --b /src --verbose
3+
12:04:00 AM - Projects in this build:
4+
* src/src/folder/tsconfig.json
5+
* src/src/folder2/tsconfig.json
6+
* src/src/tsconfig.json
7+
* src/tests/tsconfig.json
8+
* src/tsconfig.json
9+
10+
12:04:00 AM - Project 'src/src/folder/tsconfig.json' is up to date because newest input 'src/src/folder/index.ts' is older than oldest output 'src/src/folder/index.js'
11+
12+
12:04:00 AM - Project 'src/src/folder2/tsconfig.json' is up to date because newest input 'src/src/folder2/index.ts' is older than oldest output 'src/src/folder2/index.js'
13+
14+
12:04:00 AM - Project 'src/tests/tsconfig.json' is up to date because newest input 'src/tests/index.ts' is older than oldest output 'src/tests/index.js'
15+
16+
exitCode:: 0
17+
18+

0 commit comments

Comments
 (0)