addressed PR feedback (change command line flag description), added tests
This commit is contained in:
parent
b8a3564d28
commit
f5d4aa7d9c
|
@ -251,7 +251,7 @@ namespace ts {
|
||||||
{
|
{
|
||||||
name: "forceConsistentCasingInFileNames",
|
name: "forceConsistentCasingInFileNames",
|
||||||
type: "boolean",
|
type: "boolean",
|
||||||
description: Diagnostics.Raise_error_if_two_file_names_in_program_differ_only_in_case
|
description: Diagnostics.Disallow_inconsistently_cased_references_to_the_same_file
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -2298,11 +2298,10 @@
|
||||||
"category": "Message",
|
"category": "Message",
|
||||||
"code": 6072
|
"code": 6072
|
||||||
},
|
},
|
||||||
"Raise error if two file names in program differ only in case.": {
|
"Disallow inconsistently-cased references to the same file.": {
|
||||||
"category": "Message",
|
"category": "Message",
|
||||||
"code": 6073
|
"code": 6073
|
||||||
},
|
},
|
||||||
|
|
||||||
"Variable '{0}' implicitly has an '{1}' type.": {
|
"Variable '{0}' implicitly has an '{1}' type.": {
|
||||||
"category": "Error",
|
"category": "Error",
|
||||||
"code": 7005
|
"code": 7005
|
||||||
|
|
|
@ -254,6 +254,14 @@ export = C;
|
||||||
};
|
};
|
||||||
test(files, "/parent/app",["myapp.ts"], 2, []);
|
test(files, "/parent/app",["myapp.ts"], 2, []);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("should find file referenced via absolute and relative names", () => {
|
||||||
|
const files: Map<string> = {
|
||||||
|
"/a/b/c.ts": `/// <reference path="b.ts"/>`,
|
||||||
|
"/a/b/b.ts": "var x"
|
||||||
|
};
|
||||||
|
test(files, "/a/b", ["c.ts", "/a/b/b.ts"], 2, []);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("Files with different casing", () => {
|
describe("Files with different casing", () => {
|
||||||
|
@ -320,6 +328,14 @@ export = C;
|
||||||
test(files, { module: ts.ModuleKind.AMD, forceConsistentCasingInFileNames: true }, "/a/b", /* useCaseSensitiveFileNames */ false, ["c.ts", "d.ts"], [1149]);
|
test(files, { module: ts.ModuleKind.AMD, forceConsistentCasingInFileNames: true }, "/a/b", /* useCaseSensitiveFileNames */ false, ["c.ts", "d.ts"], [1149]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("should fail when two files used in program differ only in casing (imports, relative module names)", () => {
|
||||||
|
const files: Map<string> = {
|
||||||
|
"moduleA.ts": `import {x} from "./ModuleB"`,
|
||||||
|
"moduleB.ts": "export var x"
|
||||||
|
};
|
||||||
|
test(files, { module: ts.ModuleKind.CommonJS, forceConsistentCasingInFileNames: true }, "", /* useCaseSensitiveFileNames */ false, ["moduleA.ts", "moduleB.ts"], [1149]);
|
||||||
|
});
|
||||||
|
|
||||||
it("should fail when two files exist on disk that differs only in casing", () => {
|
it("should fail when two files exist on disk that differs only in casing", () => {
|
||||||
const files: Map<string> = {
|
const files: Map<string> = {
|
||||||
"/a/b/c.ts": `import {x} from "D"`,
|
"/a/b/c.ts": `import {x} from "D"`,
|
||||||
|
@ -328,5 +344,14 @@ export = C;
|
||||||
};
|
};
|
||||||
test(files, { module: ts.ModuleKind.AMD }, "/a/b", /* useCaseSensitiveFileNames */ true, ["c.ts", "d.ts"], [1149]);
|
test(files, { module: ts.ModuleKind.AMD }, "/a/b", /* useCaseSensitiveFileNames */ true, ["c.ts", "d.ts"], [1149]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("should fail when module name in 'require' calls has inconsistent casing", () => {
|
||||||
|
const files: Map<string> = {
|
||||||
|
"moduleA.ts": `import a = require("./ModuleC")`,
|
||||||
|
"moduleB.ts": `import a = require("./moduleC")`,
|
||||||
|
"moduleC.ts": "export var x"
|
||||||
|
};
|
||||||
|
test(files, { module: ts.ModuleKind.CommonJS, forceConsistentCasingInFileNames: true }, "", /* useCaseSensitiveFileNames */ false, ["moduleA.ts", "moduleB.ts", "moduleC.ts"], [1149, 1149]);
|
||||||
|
})
|
||||||
});
|
});
|
||||||
}
|
}
|
Loading…
Reference in a new issue