diff --git a/lib/ace/test/all.js b/lib/ace/test/all.js index 7ed48c4a..88c03478 100644 --- a/lib/ace/test/all.js +++ b/lib/ace/test/all.js @@ -47,5 +47,14 @@ async.concat( require("./range_test"), require("./search_test"), require("./selection_test"), - require("./text_edit_test") + require("./text_edit_test"), + require("./mode/css_test"), + require("./mode/css_tokenizer_test"), + require("./mode/html_test"), + require("./mode/html_tokenizer_test"), + require("./mode/javascript_test"), + require("./mode/javascript_tokenizer_test"), + require("./mode/text_test"), + require("./mode/xml_test"), + require("./mode/xml_tokenizer_test") ).exec(); diff --git a/lib/ace/test/mode/css_test.js b/lib/ace/test/mode/css_test.js index cbcefb21..7251fb1c 100644 --- a/lib/ace/test/mode/css_test.js +++ b/lib/ace/test/mode/css_test.js @@ -35,13 +35,13 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { - +require("../../../../support/paths"); + var Document = require("ace/document").Document; -var Css = require("ace/mode/css").Mode; - -var CssTest = new TestCase("mode.CssTest", { +var CssMode = require("ace/mode/css").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.mode = new CssMode(); }, @@ -50,24 +50,27 @@ var CssTest = new TestCase("mode.CssTest", { var doc = new Document([" abc", "cde", "fg"].join("\n")); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals([" abc", "cde", "fg"].join("\n"), doc.toString()); + assert.equal([" abc", "cde", "fg"].join("\n"), doc.toString()); }, "test: lines should keep indentation" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", " abc", " ")); - assertEquals("\t", this.mode.getNextLineIndent("start", "\tabc", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " abc", " ")); + assert.equal("\t", this.mode.getNextLineIndent("start", "\tabc", " ")); }, "test: new line after { should increase indent" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", " abc{", " ")); - assertEquals("\t ", this.mode.getNextLineIndent("start", "\tabc { ", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " abc{", " ")); + assert.equal("\t ", this.mode.getNextLineIndent("start", "\tabc { ", " ")); }, "test: no indent increase after { in a comment" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", " /*{", " ")); - assertEquals(" ", this.mode.getNextLineIndent("start", " /*{ ", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " /*{", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " /*{ ", " ")); } -}); +}; -}); +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/css_tokenizer_test.js b/lib/ace/test/mode/css_tokenizer_test.js index 858770ba..84f63f6f 100644 --- a/lib/ace/test/mode/css_tokenizer_test.js +++ b/lib/ace/test/mode/css_tokenizer_test.js @@ -35,12 +35,12 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { +require("../../../../support/paths"); -var Css = require("ace/mode/css").Mode; - -var CssTest = new TestCase("mode.CssTest", { +var CssMode = require("ace/mode/css").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.tokenizer = new CssMode().getTokenizer(); }, @@ -49,32 +49,35 @@ var CssTest = new TestCase("mode.CssTest", { var line = "-12px"; var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - assertEquals(1, tokens.length); - assertEquals("number", tokens[0].type); + assert.equal(1, tokens.length); + assert.equal("constant.numeric", tokens[0].type); }, "test: tokenize hex3 color" : function() { var tokens = this.tokenizer.getLineTokens("#abc", "start").tokens; - assertEquals(1, tokens.length); - assertEquals("number", tokens[0].type); + assert.equal(1, tokens.length); + assert.equal("constant.numeric", tokens[0].type); }, "test: tokenize hex6 color" : function() { var tokens = this.tokenizer.getLineTokens("#abc012", "start").tokens; - assertEquals(1, tokens.length); - assertEquals("number", tokens[0].type); + assert.equal(1, tokens.length); + assert.equal("constant.numeric", tokens[0].type); }, "test: tokenize parens" : function() { var tokens = this.tokenizer.getLineTokens("{()}", "start").tokens; - assertEquals(3, tokens.length); - assertEquals("lparen", tokens[0].type); - assertEquals("text", tokens[1].type); - assertEquals("rparen", tokens[2].type); + assert.equal(3, tokens.length); + assert.equal("lparen", tokens[0].type); + assert.equal("text", tokens[1].type); + assert.equal("rparen", tokens[2].type); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/html_test.js b/lib/ace/test/mode/html_test.js index d37e47e8..9e28d32f 100644 --- a/lib/ace/test/mode/html_test.js +++ b/lib/ace/test/mode/html_test.js @@ -35,15 +35,15 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { +require("../../../../support/paths"); var Document = require("ace/document").Document; var Range = require("ace/range").Range; -var Html = require("ace/mode/html").Mode; +var HtmlMode = require("ace/mode/html").Mode; +var assert = require("../assertions"); -var HtmlTest = new TestCase("mode.HtmlTest", { - - setUp : function() { +var Test = { + setUp : function() { this.mode = new HtmlMode(); }, @@ -52,14 +52,17 @@ var HtmlTest = new TestCase("mode.HtmlTest", { var range = new Range(0, 3, 1, 1); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals([" abc", "cde", "fg"].join("\n"), doc.toString()); + assert.equal([" abc", "cde", "fg"].join("\n"), doc.toString()); }, "test: next line indent should be the same as the current line indent" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", " abc")); - assertEquals("", this.mode.getNextLineIndent("start", "abc")); - assertEquals("\t", this.mode.getNextLineIndent("start", "\tabc")); + assert.equal(" ", this.mode.getNextLineIndent("start", " abc")); + assert.equal("", this.mode.getNextLineIndent("start", "abc")); + assert.equal("\t", this.mode.getNextLineIndent("start", "\tabc")); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/html_tokenizer_test.js b/lib/ace/test/mode/html_tokenizer_test.js index 6c89dc81..da82074b 100644 --- a/lib/ace/test/mode/html_tokenizer_test.js +++ b/lib/ace/test/mode/html_tokenizer_test.js @@ -35,12 +35,12 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { +require("../../../../support/paths"); -var Html = require("ace/mode/html").Mode; - -var HtmlTest = new TestCase("mode.HtmlTest", { +var HtmlMode = require("ace/mode/html").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.tokenizer = new HtmlMode().getTokenizer(); }, @@ -50,19 +50,22 @@ var HtmlTest = new TestCase("mode.HtmlTest", { var line = "'123'"; var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - //assertEquals(10, tokens.length); - assertEquals("text", tokens[0].type); - assertEquals("keyword", tokens[1].type); - assertEquals("text", tokens[2].type); - assertEquals("keyword", tokens[3].type); - assertEquals("text", tokens[4].type); - assertEquals("string", tokens[5].type); - assertEquals("text", tokens[6].type); - assertEquals("keyword", tokens[7].type); - assertEquals("text", tokens[8].type); - assertEquals("keyword", tokens[9].type); - assertEquals("text", tokens[10].type); + //assert.equal(10, tokens.length); + assert.equal("text", tokens[0].type); + assert.equal("keyword", tokens[1].type); + assert.equal("text", tokens[2].type); + assert.equal("keyword", tokens[3].type); + assert.equal("text", tokens[4].type); + assert.equal("string", tokens[5].type); + assert.equal("text", tokens[6].type); + assert.equal("keyword", tokens[7].type); + assert.equal("text", tokens[8].type); + assert.equal("keyword", tokens[9].type); + assert.equal("text", tokens[10].type); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/javascript_test.js b/lib/ace/test/mode/javascript_test.js index ed65caaf..20a75d14 100644 --- a/lib/ace/test/mode/javascript_test.js +++ b/lib/ace/test/mode/javascript_test.js @@ -35,39 +35,39 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { +require("../../../../support/paths"); var Document = require("ace/document").Document; var Tokenizer = require("ace/tokenizer").Tokenizer; -var JavaScript = require("ace/mode/javascript").Mode; +var JavaScriptMode = require("ace/mode/javascript").Mode; +var assert = require("../assertions"); -var JavaScriptTest = new TestCase("mode.JavaScriptTest", { - - setUp : function() { +var Test = { + setUp : function() { this.mode = new JavaScriptMode(); }, "test: getTokenizer() (smoke test)" : function() { var tokenizer = this.mode.getTokenizer(); - assertTrue(tokenizer instanceof Tokenizer); + assert.ok(tokenizer instanceof Tokenizer); var tokens = tokenizer.getLineTokens("'juhu'", "start").tokens; - assertEquals("string", tokens[0].type); + assert.equal("string", tokens[0].type); }, "test: toggle comment lines should prepend '//' to each line" : function() { var doc = new Document([" abc", "cde", "fg"]); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals(["// abc", "//cde", "fg"].join("\n"), doc.toString()); + assert.equal(["// abc", "//cde", "fg"].join("\n"), doc.toString()); }, "test: toggle comment on commented lines should remove leading '//' chars" : function() { var doc = new Document(["// abc", "//cde", "fg"]); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals([" abc", "cde", "fg"].join("\n"), doc.toString()); + assert.equal([" abc", "cde", "fg"].join("\n"), doc.toString()); }, "test: toggle comment lines twice should return the original text" : function() { @@ -75,74 +75,76 @@ var JavaScriptTest = new TestCase("mode.JavaScriptTest", { this.mode.toggleCommentLines("start", doc, 0, 2); this.mode.toggleCommentLines("start", doc, 0, 2); - assertEquals([" abc", "cde", "fg"].join("\n"), doc.toString()); + assert.equal([" abc", "cde", "fg"].join("\n"), doc.toString()); }, "test: toggle comment on multiple lines with one commented line prepend '//' to each line" : function() { var doc = new Document(["// abc", "//cde", "fg"]); var comment = this.mode.toggleCommentLines("start", doc, 0, 2); - assertEquals(["//// abc", "////cde", "//fg"].join("\n"), doc.toString()); + assert.equal(["//// abc", "////cde", "//fg"].join("\n"), doc.toString()); }, "test: toggle comment on a comment line with leading white space": function() { var doc = new Document(["//cde", " //fg"]); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals(["cde", " fg"].join("\n"), doc.toString()); + assert.equal(["cde", " fg"].join("\n"), doc.toString()); }, "test: auto indent after opening brace" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", "if () {", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", "if () {", " ")); }, "test: no auto indent after opening brace in multi line comment" : function() { - assertEquals("", this.mode.getNextLineIndent("start", "/*if () {", " ")); - assertEquals(" ", this.mode.getNextLineIndent("comment", " abcd", " ")); + assert.equal("", this.mode.getNextLineIndent("start", "/*if () {", " ")); + assert.equal(" ", this.mode.getNextLineIndent("comment", " abcd", " ")); }, "test: no auto indent after opening brace in single line comment" : function() { - assertEquals("", this.mode.getNextLineIndent("start", "//if () {", " ")); - assertEquals(" ", this.mode.getNextLineIndent("start", " //if () {", " ")); + assert.equal("", this.mode.getNextLineIndent("start", "//if () {", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " //if () {", " ")); }, "test: no auto indent should add to existing indent" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", " if () {", " ")); - assertEquals(" ", this.mode.getNextLineIndent("start", " cde", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " if () {", " ")); + assert.equal(" ", this.mode.getNextLineIndent("start", " cde", " ")); }, "test: special indent in doc comments" : function() { - assertEquals(" * ", this.mode.getNextLineIndent("doc-start", "/**", " ")); - assertEquals(" * ", this.mode.getNextLineIndent("doc-start", " /**", " ")); - assertEquals(" * ", this.mode.getNextLineIndent("doc-start", " *", " ")); - assertEquals(" * ", this.mode.getNextLineIndent("doc-start", " *", " ")); - assertEquals(" ", this.mode.getNextLineIndent("doc-start", " abc", " ")); + assert.equal(" * ", this.mode.getNextLineIndent("doc-start", "/**", " ")); + assert.equal(" * ", this.mode.getNextLineIndent("doc-start", " /**", " ")); + assert.equal(" * ", this.mode.getNextLineIndent("doc-start", " *", " ")); + assert.equal(" * ", this.mode.getNextLineIndent("doc-start", " *", " ")); + assert.equal(" ", this.mode.getNextLineIndent("doc-start", " abc", " ")); }, "test: no indent after doc comments" : function() { - assertEquals("", this.mode.getNextLineIndent("doc-start", " */", " ")); + assert.equal("", this.mode.getNextLineIndent("doc-start", " */", " ")); }, "test: trigger outdent if line is space and new text starts with closing brace" : function() { - assertTrue(this.mode.checkOutdent("start", " ", " }")); - assertFalse(this.mode.checkOutdent("start", " a ", " }")); - assertFalse(this.mode.checkOutdent("start", "", "}")); - assertFalse(this.mode.checkOutdent("start", " ", "a }")); - assertFalse(this.mode.checkOutdent("start", " }", "}")); + assert.ok(this.mode.checkOutdent("start", " ", " }")); + assert.equal(this.mode.checkOutdent("start", " a ", " }")); + assert.equal(this.mode.checkOutdent("start", "", "}")); + assert.equal(this.mode.checkOutdent("start", " ", "a }")); + assert.equal(this.mode.checkOutdent("start", " }", "}")); }, "test: auto outdent should indent the line with the same indent as the line with the matching opening brace" : function() { var doc = new Document([" function foo() {", " bla", " }"]); this.mode.autoOutdent("start", doc, 2); - assertEquals(" }", doc.getLine(2)); + assert.equal(" }", doc.getLine(2)); }, "test: no auto outdent if no matching brace is found" : function() { var doc = new Document([" function foo()", " bla", " }"]); this.mode.autoOutdent("start", doc, 2); - assertEquals(" }", doc.getLine(2)); + assert.equal(" }", doc.getLine(2)); } +}; -}); +module.exports = require("async/test").testcase(Test); -}); \ No newline at end of file +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/javascript_tokenizer_test.js b/lib/ace/test/mode/javascript_tokenizer_test.js index 518d58e4..e292574b 100644 --- a/lib/ace/test/mode/javascript_tokenizer_test.js +++ b/lib/ace/test/mode/javascript_tokenizer_test.js @@ -35,12 +35,12 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { - -var JavaScript = require("ace/mode/javascript").Mode; - -var JavaScriptTokenizerTest = new TestCase("mode.JavaScriptTokenizerTest", { +require("../../../../support/paths"); + +var JavaScriptMode = require("ace/mode/javascript").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.tokenizer = new JavaScriptMode().getTokenizer(); }, @@ -50,10 +50,12 @@ var JavaScriptTokenizerTest = new TestCase("mode.JavaScriptTokenizerTest", { var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - assertEquals(3, tokens.length); - assertEquals("identifier", tokens[0].type); - assertEquals("text", tokens[1].type); - assertEquals("keyword", tokens[2].type); + assert.equal(5, tokens.length); + assert.equal("identifier", tokens[0].type); + assert.equal("text", tokens[1].type); + assert.equal("keyword.operator", tokens[2].type); + assert.equal("text", tokens[3].type); + assert.equal("keyword", tokens[4].type); }, "test: tokenize doc comment" : function() { @@ -61,12 +63,12 @@ var JavaScriptTokenizerTest = new TestCase("mode.JavaScriptTokenizerTest", { var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - assertEquals(5, tokens.length); - assertEquals("identifier", tokens[0].type); - assertEquals("text", tokens[1].type); - assertEquals("doc-comment", tokens[2].type); - assertEquals("text", tokens[3].type); - assertEquals("identifier", tokens[4].type); + assert.equal(5, tokens.length); + assert.equal("identifier", tokens[0].type); + assert.equal("text", tokens[1].type); + assert.equal("comment.doc", tokens[2].type); + assert.equal("text", tokens[3].type); + assert.equal("identifier", tokens[4].type); }, "test: tokenize doc comment with tag" : function() { @@ -74,10 +76,10 @@ var JavaScriptTokenizerTest = new TestCase("mode.JavaScriptTokenizerTest", { var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - assertEquals(3, tokens.length); - assertEquals("doc-comment", tokens[0].type); - assertEquals("doc-comment-tag", tokens[1].type); - assertEquals("doc-comment", tokens[2].type); + assert.equal(3, tokens.length); + assert.equal("comment.doc", tokens[0].type); + assert.equal("comment.doc.tag", tokens[1].type); + assert.equal("comment.doc", tokens[2].type); }, "test: tokenize parens" : function() { @@ -85,11 +87,14 @@ var JavaScriptTokenizerTest = new TestCase("mode.JavaScriptTokenizerTest", { var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - assertEquals(3, tokens.length); - assertEquals("lparen", tokens[0].type); - assertEquals("text", tokens[1].type); - assertEquals("rparen", tokens[2].type); + assert.equal(3, tokens.length); + assert.equal("lparen", tokens[0].type); + assert.equal("text", tokens[1].type); + assert.equal("rparen", tokens[2].type); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/text_test.js b/lib/ace/test/mode/text_test.js index 5f39311e..79dc35aa 100644 --- a/lib/ace/test/mode/text_test.js +++ b/lib/ace/test/mode/text_test.js @@ -35,13 +35,13 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { - +require("../../../../support/paths"); + var Document = require("ace/document").Document; -var Text = require("ace/mode/text").Mode; - -var TextTest = new TestCase("mode.TextTest", { +var TextMode = require("ace/mode/text").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.mode = new TextMode(); }, @@ -50,13 +50,16 @@ var TextTest = new TestCase("mode.TextTest", { var doc = new Document([" abc", "cde", "fg"]); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals([" abc", "cde", "fg"].join("\n"), doc.toString()); + assert.equal([" abc", "cde", "fg"].join("\n"), doc.toString()); }, "text: lines should not be indented" : function() { - assertEquals("", this.mode.getNextLineIndent("start", " abc", " ")); + assert.equal("", this.mode.getNextLineIndent("start", " abc", " ")); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/xml_test.js b/lib/ace/test/mode/xml_test.js index bf3578da..11ca111a 100644 --- a/lib/ace/test/mode/xml_test.js +++ b/lib/ace/test/mode/xml_test.js @@ -35,14 +35,14 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { - +require("../../../../support/paths"); + var Document = require("ace/document").Document; var Tokenizer = require("ace/tokenizer").Tokenizer; -var Xml = require("ace/mode/xml").Mode; - -var XmlTest = new TestCase("mode.XmlTest", { +var XmlMode = require("ace/mode/xml").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.mode = new XmlMode(); }, @@ -50,24 +50,27 @@ var XmlTest = new TestCase("mode.XmlTest", { "test: getTokenizer() (smoke test)" : function() { var tokenizer = this.mode.getTokenizer(); - assertTrue(tokenizer instanceof Tokenizer); + assert.ok(tokenizer instanceof Tokenizer); var tokens = tokenizer.getLineTokens("", "start").tokens; - assertEquals("keyword", tokens[1].type); + assert.equal("keyword", tokens[1].type); }, "test: toggle comment lines should not do anything" : function() { var doc = new Document([" abc", "cde", "fg"]); var comment = this.mode.toggleCommentLines("start", doc, 0, 1); - assertEquals([" abc", "cde", "fg"].join("\n"), doc.toString()); + assert.equal([" abc", "cde", "fg"].join("\n"), doc.toString()); }, "test: next line indent should be the same as the current line indent" : function() { - assertEquals(" ", this.mode.getNextLineIndent("start", " abc")); - assertEquals("", this.mode.getNextLineIndent("start", "abc")); - assertEquals("\t", this.mode.getNextLineIndent("start", "\tabc")); + assert.equal(" ", this.mode.getNextLineIndent("start", " abc")); + assert.equal("", this.mode.getNextLineIndent("start", "abc")); + assert.equal("\t", this.mode.getNextLineIndent("start", "\tabc")); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file diff --git a/lib/ace/test/mode/xml_tokenizer_test.js b/lib/ace/test/mode/xml_tokenizer_test.js index cb03b4f5..d1e16bc2 100644 --- a/lib/ace/test/mode/xml_tokenizer_test.js +++ b/lib/ace/test/mode/xml_tokenizer_test.js @@ -35,12 +35,13 @@ * * ***** END LICENSE BLOCK ***** */ -define(function(require, exports, module) { + +require("../../../../support/paths"); -var Xml = require("ace/mode/xml").Mode; - -var XmlTest = new TestCase("mode.XmlTest", { +var XmlMode = require("ace/mode/xml").Mode; +var assert = require("../assertions"); +var Test = { setUp : function() { this.tokenizer = new XmlMode().getTokenizer(); }, @@ -50,13 +51,16 @@ var XmlTest = new TestCase("mode.XmlTest", { var line = "//Juhu Kinners"; var tokens = this.tokenizer.getLineTokens(line, "start").tokens; - assertEquals(5, tokens.length); - assertEquals("text", tokens[0].type); - assertEquals("keyword", tokens[1].type); - assertEquals("text", tokens[2].type); - assertEquals("keyword", tokens[3].type); - assertEquals("text", tokens[4].type); + assert.equal(5, tokens.length); + assert.equal("text", tokens[0].type); + assert.equal("keyword", tokens[1].type); + assert.equal("text", tokens[2].type); + assert.equal("keyword", tokens[3].type); + assert.equal("text", tokens[4].type); } -}); +}; -}); \ No newline at end of file +module.exports = require("async/test").testcase(Test); + +if (module === require.main) + module.exports.exec() \ No newline at end of file