diff options
Diffstat (limited to 'node_modules/tslint/lib/test.js')
-rw-r--r-- | node_modules/tslint/lib/test.js | 37 |
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)); } |