Get the last output from the written files

This commit is contained in:
Sheetal Nandi
2019-09-09 14:17:58 -07:00
parent 1f149ccfd7
commit bfc4f7a12f
8 changed files with 5 additions and 18 deletions

View File

@@ -72,7 +72,6 @@ namespace ts {
[outputFiles[project.lib][ext.buildinfo], outputFiles[project.lib][ext.js], outputFiles[project.lib][ext.dts]],
[outputFiles[project.app][ext.buildinfo], outputFiles[project.app][ext.js], outputFiles[project.app][ext.dts]]
],
lastProjectOutput: outputFiles[project.app][ext.js],
initialBuild: {
modifyFs
},
@@ -217,7 +216,6 @@ ${internal} export enum internalEnum { a, b, c }`);
[libOutputFile[ext.buildinfo], libOutputFile[ext.js], libOutputFile[ext.dts]],
[outputFiles[project.app][ext.buildinfo], outputFiles[project.app][ext.js], outputFiles[project.app][ext.dts]]
],
lastProjectOutput: outputFiles[project.app][ext.js],
initialBuild: {
modifyFs,
expectedDiagnostics: [

View File

@@ -17,7 +17,6 @@ namespace ts {
tick,
proj: "emitDeclarationOnly",
rootNames: ["/src"],
lastProjectOutput: `/src/lib/index.d.ts`,
initialBuild: {
modifyFs: disableMap ?
(fs => replaceText(fs, "/src/tsconfig.json", `"declarationMap": true,`, "")) :
@@ -50,7 +49,6 @@ namespace ts {
tick,
proj: "emitDeclarationOnly",
rootNames: ["/src"],
lastProjectOutput: `/src/lib/a.d.ts`,
initialBuild: {
modifyFs: fs => {
fs.rimrafSync("/src/src/index.ts");

View File

@@ -312,7 +312,6 @@ Mismatch Actual(path, actual, expected): ${JSON.stringify(arrayFrom(mapDefinedIt
proj: string;
rootNames: ReadonlyArray<string>;
expectedBuildInfoFilesForSectionBaselines?: ReadonlyArray<BuildInfoSectionBaselineFiles>;
lastProjectOutput: string;
initialBuild: BuildState;
incrementalDtsChangedBuild?: BuildState;
incrementalDtsUnchangedBuild?: BuildState;
@@ -324,7 +323,7 @@ Mismatch Actual(path, actual, expected): ${JSON.stringify(arrayFrom(mapDefinedIt
export function verifyTsbuildOutput({
scenario, projFs, time, tick, proj, rootNames, baselineOnly, verifyDiagnostics,
baselineSourceMap, expectedBuildInfoFilesForSectionBaselines, lastProjectOutput,
baselineSourceMap, expectedBuildInfoFilesForSectionBaselines,
initialBuild, incrementalDtsChangedBuild, incrementalDtsUnchangedBuild, incrementalHeaderChangedBuild
}: VerifyTsBuildInput) {
describe(`tsc --b ${proj}:: ${scenario}`, () => {
@@ -332,6 +331,7 @@ Mismatch Actual(path, actual, expected): ${JSON.stringify(arrayFrom(mapDefinedIt
let actualReadFileMap: Map<number>;
let firstBuildTime: number;
let host: fakes.SolutionBuilderHost;
let initialWrittenFiles: Map<true>;
before(() => {
const result = build({
fs: projFs().shadow(),
@@ -341,13 +341,14 @@ Mismatch Actual(path, actual, expected): ${JSON.stringify(arrayFrom(mapDefinedIt
expectedBuildInfoFilesForSectionBaselines,
modifyFs: initialBuild.modifyFs,
});
({ fs, actualReadFileMap, host } = result);
({ fs, actualReadFileMap, host, writtenFiles: initialWrittenFiles } = result);
firstBuildTime = time();
});
after(() => {
fs = undefined!;
actualReadFileMap = undefined!;
host = undefined!;
initialWrittenFiles = undefined!;
});
describe("initialBuild", () => {
if (!baselineOnly || verifyDiagnostics) {
@@ -373,6 +374,7 @@ Mismatch Actual(path, actual, expected): ${JSON.stringify(arrayFrom(mapDefinedIt
let beforeBuildTime: number;
let afterBuildTime: number;
before(() => {
const lastProjectOutput = last(arrayFrom(initialWrittenFiles.keys()));
beforeBuildTime = fs.statSync(lastProjectOutput).mtimeMs;
tick();
newFs = fs.shadow();

View File

@@ -16,7 +16,6 @@ namespace ts {
tick,
proj: "inferredTypeFromTransitiveModule",
rootNames: ["/src"],
lastProjectOutput: `/src/obj/index.js`,
initialBuild: {
modifyFs: noop,
expectedDiagnostics: [

View File

@@ -16,7 +16,6 @@ namespace ts {
tick,
proj: "lateBoundSymbol",
rootNames: ["/src/tsconfig.json"],
lastProjectOutput: "/src/src/main.js",
initialBuild: {
modifyFs: noop,
expectedDiagnostics: [

View File

@@ -96,7 +96,6 @@ namespace ts {
tick,
proj: "moduleSpecifiers",
rootNames: ["/"],
lastProjectOutput: `/src/lib/index.d.ts`,
initialBuild: {
modifyFs: noop,
},

View File

@@ -280,7 +280,6 @@ namespace ts {
rootNames: ["/src/third"],
baselineSourceMap: true,
expectedBuildInfoFilesForSectionBaselines: expectedBuildInfoFilesForSectionBaselines || expectedTsbuildInfoFileNames,
lastProjectOutput: outputFiles[project.third][ext.js],
initialBuild: {
modifyFs,
expectedDiagnostics: initialExpectedDiagnostics,

View File

@@ -613,7 +613,6 @@ export class cNew {}`);
proj: "sample1",
rootNames: ["/src/tests"],
baselineSourceMap: true,
lastProjectOutput: "/src/tests/index.js",
initialBuild,
incrementalDtsChangedBuild: {
modifyFs: fs => appendText(fs, "/src/core/index.ts", `
@@ -703,7 +702,6 @@ class someClass { }`),
proj: "sample1",
rootNames: ["/src/tests"],
baselineSourceMap: true,
lastProjectOutput: "/src/tests/index.js",
initialBuild,
incrementalDtsChangedBuild: {
modifyFs: fs => replaceText(fs, "/src/logic/tsconfig.json", `"declaration": true,`, `"declaration": true,
@@ -751,7 +749,6 @@ class someClass { }`),
proj: "sample1",
rootNames: ["/src/tests"],
baselineSourceMap: true,
lastProjectOutput: "/src/tests/index.js",
initialBuild: {
modifyFs: fs => replaceText(fs, "/src/logic/tsconfig.json", `"composite": true,`, `"composite": true,
"tsBuildInfoFile": "ownFile.tsbuildinfo",`),
@@ -791,7 +788,6 @@ class someClass { }`),
tick,
proj: "sample1",
rootNames: ["/src/core"],
lastProjectOutput: "/src/core/index.js",
initialBuild: {
modifyFs: fs => fs.writeFileSync("/src/core/tsconfig.json", `{
"compilerOptions": {
@@ -824,7 +820,6 @@ class someClass { }`),
tick,
proj: "sample1",
rootNames: ["/src/core"],
lastProjectOutput: "/src/core/index.js",
initialBuild: {
modifyFs: fs => {
fs.writeFileSync("/lib/lib.esnext.full.d.ts", `/// <reference no-default-lib="true"/>
@@ -866,7 +861,6 @@ class someClass { }`),
tick,
proj: "sample1",
rootNames: ["/src/core"],
lastProjectOutput: "/src/core/index.js",
initialBuild: {
modifyFs: fs => fs.writeFileSync("/src/core/tsconfig.json", `{
"compilerOptions": {
@@ -899,7 +893,6 @@ class someClass { }`),
tick,
proj: "sample1",
rootNames: ["/src/tests"],
lastProjectOutput: "/src/tests/index.js",
initialBuild: {
modifyFs: fs => fs.writeFileSync("/src/tests/tsconfig.json", `{
"references": [