aboutsummaryrefslogtreecommitdiff
path: root/node_modules/tslint/lib/test.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/tslint/lib/test.js')
-rw-r--r--node_modules/tslint/lib/test.js37
1 files changed, 18 insertions, 19 deletions
diff --git a/node_modules/tslint/lib/test.js b/node_modules/tslint/lib/test.js
index bca549b33..10cb4eba0 100644
--- a/node_modules/tslint/lib/test.js
+++ b/node_modules/tslint/lib/test.js
@@ -16,7 +16,7 @@
* limitations under the License.
*/
Object.defineProperty(exports, "__esModule", { value: true });
-var colors = require("colors");
+var chalk = require("chalk");
var diff = require("diff");
var fs = require("fs");
var glob = require("glob");
@@ -67,9 +67,8 @@ function runTest(testDirectory, rulesDirectory) {
var fileText = isEncodingRule ? utils_1.readBufferWithDetectedEncoding(fs.readFileSync(fileToLint)) : fs.readFileSync(fileToLint, "utf-8");
var tsVersionRequirement = parse.getTypescriptVersionRequirement(fileText);
if (tsVersionRequirement !== undefined) {
- var tsVersion = new semver.SemVer(ts.version);
// remove prerelease suffix when matching to allow testing with nightly builds
- if (!semver.satisfies(tsVersion.major + "." + tsVersion.minor + "." + tsVersion.patch, tsVersionRequirement)) {
+ if (!semver.satisfies(parse.getNormalizedTypescriptVersion(), tsVersionRequirement)) {
results.results[fileToLint] = {
requirement: tsVersionRequirement,
skipped: true,
@@ -80,6 +79,7 @@ function runTest(testDirectory, rulesDirectory) {
var lineBreak = fileText.search(/\n/);
fileText = lineBreak === -1 ? "" : fileText.substr(lineBreak + 1);
}
+ fileText = parse.preprocessDirectives(fileText);
var fileTextWithoutMarkup = parse.removeErrorMarkup(fileText);
var errorsFromMarkup = parse.parseErrorsFromMarkup(fileText);
var program = void 0;
@@ -91,15 +91,14 @@ function runTest(testDirectory, rulesDirectory) {
getDefaultLibFileName: function () { return ts.getDefaultLibFileName(compilerOptions); },
getDirectories: function (dir) { return fs.readdirSync(dir); },
getNewLine: function () { return "\n"; },
- getSourceFile: function (filenameToGet) {
- var target = compilerOptions.target === undefined ? ts.ScriptTarget.ES5 : compilerOptions.target;
- if (filenameToGet === ts.getDefaultLibFileName(compilerOptions)) {
- var fileContent = fs.readFileSync(ts.getDefaultLibFilePath(compilerOptions), "utf8");
- return ts.createSourceFile(filenameToGet, fileContent, target);
- }
- else if (utils_1.denormalizeWinPath(filenameToGet) === fileCompileName) {
+ getSourceFile: function (filenameToGet, target) {
+ if (utils_1.denormalizeWinPath(filenameToGet) === fileCompileName) {
return ts.createSourceFile(filenameToGet, fileTextWithoutMarkup, target, true);
}
+ if (path.basename(filenameToGet) === filenameToGet) {
+ // resolve path of lib.xxx.d.ts
+ filenameToGet = path.join(path.dirname(ts.getDefaultLibFilePath(compilerOptions)), filenameToGet);
+ }
var text = fs.readFileSync(filenameToGet, "utf8");
return ts.createSourceFile(filenameToGet, text, target, true);
},
@@ -180,7 +179,7 @@ function consoleTestResultsHandler(testResults) {
exports.consoleTestResultsHandler = consoleTestResultsHandler;
function consoleTestResultHandler(testResult) {
// needed to get colors to show up when passing through Grunt
- colors.enabled = true;
+ chalk.enabled = true;
var didAllTestsPass = true;
for (var _i = 0, _a = Object.keys(testResult.results); _i < _a.length; _i++) {
var fileName = _a[_i];
@@ -188,7 +187,7 @@ function consoleTestResultHandler(testResult) {
process.stdout.write(fileName + ":");
/* tslint:disable:no-console */
if (results.skipped) {
- console.log(colors.yellow(" Skipped, requires typescript " + results.requirement));
+ console.log(chalk.yellow(" Skipped, requires typescript " + results.requirement));
}
else {
var markupDiffResults = diff.diffLines(results.markupFromMarkup, results.markupFromLinter);
@@ -196,10 +195,10 @@ function consoleTestResultHandler(testResult) {
var didMarkupTestPass = !markupDiffResults.some(function (hunk) { return hunk.added === true || hunk.removed === true; });
var didFixesTestPass = !fixesDiffResults.some(function (hunk) { return hunk.added === true || hunk.removed === true; });
if (didMarkupTestPass && didFixesTestPass) {
- console.log(colors.green(" Passed"));
+ console.log(chalk.green(" Passed"));
}
else {
- console.log(colors.red(" Failed!"));
+ console.log(chalk.red(" Failed!"));
didAllTestsPass = false;
if (!didMarkupTestPass) {
displayDiffResults(markupDiffResults, MARKUP_FILE_EXTENSION);
@@ -216,16 +215,16 @@ function consoleTestResultHandler(testResult) {
exports.consoleTestResultHandler = consoleTestResultHandler;
function displayDiffResults(diffResults, extension) {
/* tslint:disable:no-console */
- console.log(colors.green("Expected (from " + extension + " file)"));
- console.log(colors.red("Actual (from TSLint)"));
+ console.log(chalk.green("Expected (from " + extension + " file)"));
+ console.log(chalk.red("Actual (from TSLint)"));
for (var _i = 0, diffResults_1 = diffResults; _i < diffResults_1.length; _i++) {
var diffResult = diffResults_1[_i];
- var color = colors.grey;
+ var color = chalk.grey;
if (diffResult.added) {
- color = colors.green.underline;
+ color = chalk.green.underline;
}
else if (diffResult.removed) {
- color = colors.red.underline;
+ color = chalk.red.underline;
}
process.stdout.write(color(diffResult.value));
}