From 03ddc4570b786a7b945e1b40a16f29d2349c68b8 Mon Sep 17 00:00:00 2001 From: Shyam Seshadri Date: Wed, 24 Mar 2010 10:35:01 -0700 Subject: Fix parsing bug with strings for - --- test/ParserTest.js | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) (limited to 'test/ParserTest.js') diff --git a/test/ParserTest.js b/test/ParserTest.js index 09c3b8de..c8d323f2 100644 --- a/test/ParserTest.js +++ b/test/ParserTest.js @@ -41,7 +41,7 @@ LexerTest.prototype.testTokenizeAString = function(){ i++; assertEquals(tokens[i].index, 15); - assertEquals(tokens[i].text, "a'c"); + assertEquals(tokens[i].string, "a'c"); i++; assertEquals(tokens[i].index, 21); @@ -49,7 +49,7 @@ LexerTest.prototype.testTokenizeAString = function(){ i++; assertEquals(tokens[i].index, 22); - assertEquals(tokens[i].text, 'd"e'); + assertEquals(tokens[i].string, 'd"e'); }; @@ -68,10 +68,10 @@ LexerTest.prototype.testQuotedString = function(){ var tokens = lexer.parse(); assertEquals(1, tokens[1].index); - assertEquals("'", tokens[1].text); + assertEquals("'", tokens[1].string); assertEquals(7, tokens[3].index); - assertEquals('"', tokens[3].text); + assertEquals('"', tokens[3].string); }; @@ -80,14 +80,14 @@ LexerTest.prototype.testQuotedStringEscape = function(){ var lexer = new Lexer(str); var tokens = lexer.parse(); - assertEquals('"\n\f\r\t\v\u00A0', tokens[0].text); + assertEquals('"\n\f\r\t\v\u00A0', tokens[0].string); }; LexerTest.prototype.testTokenizeUnicode = function(){ var lexer = new Lexer('"\\u00A0"'); var tokens = lexer.parse(); assertEquals(1, tokens.length); - assertEquals('\u00a0', tokens[0].text); + assertEquals('\u00a0', tokens[0].string); }; LexerTest.prototype.testTokenizeRegExpWithOptions = function(){ @@ -408,7 +408,7 @@ ParserTest.prototype.testItShouldParseOnChangeIntoHashSet = function () { ParserTest.prototype.testItShouldParseOnChangeBlockIntoHashSet = function () { var scope = new Scope({count:0}); var listeners = {a:[], b:[]}; - scope.watch("a:{count=count+1;count=count+20;};b:count=count+300", + scope.watch("a:{count=count+1;count=count+20;};b:count=count+300", function(n, fn){listeners[n].push(fn);}); assertEquals(1, scope.watchListeners.a.listeners.length); @@ -477,3 +477,12 @@ ParserTest.prototype.testNegationBug = function () { assertEquals(12/6/2, scope.eval("12/6/2")); }; +ParserTest.prototype.testBugStringConfusesParser = function() { + var scope = new Scope(); + assertEquals('!', scope.eval('suffix = "!"')); +}; + +ParserTest.prototype.testParsingBug = function () { + var scope = new Scope(); + assertEquals({a: "-"}, scope.eval("{a:'-'}")); +}; -- cgit v1.2.3