From b60c296e6ea9f5ddab897474992fd2b02a2aa6ae Mon Sep 17 00:00:00 2001 From: cloudhead Date: Thu, 25 Feb 2010 22:49:52 -0500 Subject: [PATCH] throw a ParseError, instead of just an Error --- lib/less/parser.js | 2 +- test/less-test.js | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/less/parser.js b/lib/less/parser.js index 17018e12..4939a9bc 100644 --- a/lib/less/parser.js +++ b/lib/less/parser.js @@ -150,7 +150,7 @@ less.parser = { zone = stylize(input.slice(start, i), 'green') + stylize(input.slice(i, end), 'yellow'); - throw new(Error)("Parse Error on line " + line + ":\n" + zone); + throw { name: "ParseError", message: "Parse Error on line " + line + ":\n" + zone }; } return tree; }, diff --git a/test/less-test.js b/test/less-test.js index 6e7b5478..574f2d91 100644 --- a/test/less-test.js +++ b/test/less-test.js @@ -11,9 +11,13 @@ var less = require('lib/less/adapters/server'); fs.readdirSync('test/less').forEach(function (file) { toCSS('test/less/' + file, function (err, less) { read(path.join('test/css', path.basename(file, '.less')) + '.css', function (e, css) { - sys.print(file + ": ") + sys.print("- " + file + ": ") if (less === css) { sys.print('OK') } - else { sys.print(e || err) } + else if (err && err.name == 'ParseError') { + sys.print("!\n " + err.message); + } else { + sys.print("=/="); + } sys.puts(""); }); });