Fix tests

This commit is contained in:
Ryan Cavanaugh 2017-07-27 16:59:31 -07:00
parent f2a801e49c
commit 253cde4907
6 changed files with 23 additions and 17 deletions

View File

@ -474,7 +474,7 @@ gulp.task(tsserverLibraryFile, /*help*/ false, [servicesFile, typesMapJson], (do
.pipe(sourcemaps.init())
.pipe(newer(tsserverLibraryFile))
.pipe(serverLibraryProject());
return merge2([
js.pipe(prependCopyright())
.pipe(sourcemaps.write("."))
@ -488,7 +488,7 @@ gulp.task(tsserverLibraryFile, /*help*/ false, [servicesFile, typesMapJson], (do
});
gulp.task(typesMapJson, /*help*/ false, [], () => {
return gulp.src('src/server/typesMap.json')
return gulp.src("src/server/typesMap.json")
.pipe(insert.transform((contents, file) => {
JSON.parse(contents);
return contents;

View File

@ -95,5 +95,8 @@
"fs": false,
"os": false,
"path": false
},
"dependencies": {
"browser-resolve": "^1.11.2"
}
}

View File

@ -18,7 +18,7 @@ namespace ts.projectSystem {
})
};
const customTypesMap = {
export const customTypesMap = {
path: <Path>"/typesMap.json",
content: `{
"typesMap": {
@ -33,7 +33,11 @@ namespace ts.projectSystem {
},
"simpleMap": {
"Bacon": "baconjs",
"bliss": "blissfuljs"
"bliss": "blissfuljs",
"commander": "commander",
"cordova": "cordova",
"react": "react",
"lodash": "lodash"
}
}`
};
@ -297,10 +301,7 @@ namespace ts.projectSystem {
}
export function checkFileNames(caption: string, actualFileNames: string[], expectedFileNames: string[]) {
assert.equal(actualFileNames.length, expectedFileNames.length, `${caption}: incorrect actual number of files, expected ${JSON.stringify(expectedFileNames)}, got ${actualFileNames}`);
for (const f of expectedFileNames) {
assert.isTrue(contains(actualFileNames, f), `${caption}: expected to find ${f} in ${JSON.stringify(actualFileNames)}`);
}
assert.sameMembers(actualFileNames, expectedFileNames, caption);
}
export function checkNumberOfConfiguredProjects(projectService: server.ProjectService, expected: number) {
@ -1500,7 +1501,7 @@ namespace ts.projectSystem {
projectService.resetSafeList();
}
});
it("ignores files excluded by the default type list", () => {
const file1 = {
path: "/a/b/f1.ts",

View File

@ -322,7 +322,7 @@ namespace ts.projectSystem {
content: "declare const lodash: { x: number }"
};
const host = createServerHost([file1, file2, file3]);
const host = createServerHost([file1, file2, file3, customTypesMap]);
const installer = new (class extends Installer {
constructor() {
super(host, { typesRegistry: createTypesRegistry("lodash", "react") });
@ -347,6 +347,7 @@ namespace ts.projectSystem {
projectService.checkNumberOfProjects({ externalProjects: 1 });
checkProjectActualFiles(p, [file1.path, file2.path, file3.path]);
debugger;
installer.installAll(/*expectedCount*/ 1);
checkNumberOfProjects(projectService, { externalProjects: 1 });
@ -445,7 +446,7 @@ namespace ts.projectSystem {
content: "declare const moment: { x: number }"
};
const host = createServerHost([file1, file2, file3, packageJson]);
const host = createServerHost([file1, file2, file3, packageJson, customTypesMap]);
const installer = new (class extends Installer {
constructor() {
super(host, { typesRegistry: createTypesRegistry("jquery", "commander", "moment", "express") });
@ -521,7 +522,7 @@ namespace ts.projectSystem {
};
const typingFiles = [commander, express, jquery, moment, lodash];
const host = createServerHost([lodashJs, commanderJs, file3, packageJson]);
const host = createServerHost([lodashJs, commanderJs, file3, packageJson, customTypesMap]);
const installer = new (class extends Installer {
constructor() {
super(host, { throttleLimit: 3, typesRegistry: createTypesRegistry("commander", "express", "jquery", "moment", "lodash") });
@ -600,7 +601,7 @@ namespace ts.projectSystem {
typings: typingsName("gulp")
};
const host = createServerHost([lodashJs, commanderJs, file3]);
const host = createServerHost([lodashJs, commanderJs, file3, customTypesMap]);
const installer = new (class extends Installer {
constructor() {
super(host, { throttleLimit: 1, typesRegistry: createTypesRegistry("commander", "jquery", "lodash", "cordova", "gulp", "grunt") });

View File

@ -411,7 +411,7 @@ namespace ts.server {
this.globalPlugins = opts.globalPlugins || emptyArray;
this.pluginProbeLocations = opts.pluginProbeLocations || emptyArray;
this.allowLocalPluginLoads = !!opts.allowLocalPluginLoads;
this.typesMapLocation = (opts.typesMapLocation === undefined) ? combinePaths(this.host.getExecutingFilePath(), '../typesMap.json') : opts.typesMapLocation;
this.typesMapLocation = (opts.typesMapLocation === undefined) ? combinePaths(this.host.getExecutingFilePath(), "../typesMap.json") : opts.typesMapLocation;
Debug.assert(!!this.host.createHash, "'ServerHost.createHash' is required for ProjectService");
@ -472,7 +472,8 @@ namespace ts.server {
}
// raw is now fixed and ready
this.safelist = raw.typesMap;
} catch(e) {
}
catch (e) {
this.logger.info(`Error loading types map: ${e}`);
this.safelist = defaultTypeSafeList;
}
@ -1721,7 +1722,7 @@ namespace ts.server {
const excludeRegexes = excludeRules.map(e => new RegExp(e, "i"));
const filesToKeep: ts.server.protocol.ExternalFile[] = [];
for(let i = 0; i < proj.rootFiles.length; i++) {
for (let i = 0; i < proj.rootFiles.length; i++) {
if (excludeRegexes.some(re => re.test(normalizedNames[i]))) {
excludedFiles.push(normalizedNames[i]);
}

View File

@ -763,7 +763,7 @@ namespace ts.server {
}
const typingSafeListLocation = findArgument(Arguments.TypingSafeListLocation);
const typesMapLocation = findArgument(Arguments.TypesMapLocation) || combinePaths(sys.getExecutingFilePath(), '../typesMap.json');
const typesMapLocation = findArgument(Arguments.TypesMapLocation) || combinePaths(sys.getExecutingFilePath(), "../typesMap.json");
const npmLocation = findArgument(Arguments.NpmLocation);
const globalPlugins = (findArgument("--globalPlugins") || "").split(",");