From f16f2918a3eeaac93c13fabfdc882bce56690cfe Mon Sep 17 00:00:00 2001 From: Tobe O Date: Mon, 16 Oct 2017 17:01:02 -0400 Subject: [PATCH] dash id --- jael.iml | 1 + jael/lib/src/text/scanner.dart | 2 +- jael/pubspec.yaml | 2 +- jael/test/text/scan_test.dart | 19 +++++++++++-------- 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/jael.iml b/jael.iml index 7a7b1cb3..6f2c9ef7 100644 --- a/jael.iml +++ b/jael.iml @@ -16,5 +16,6 @@ + \ No newline at end of file diff --git a/jael/lib/src/text/scanner.dart b/jael/lib/src/text/scanner.dart index 9f6303e7..7a4dc0e6 100644 --- a/jael/lib/src/text/scanner.dart +++ b/jael/lib/src/text/scanner.dart @@ -31,7 +31,7 @@ final Map _htmlPatterns = { '!=': TokenType.nequ, _string1: TokenType.string, _string2: TokenType.string, - new RegExp(r'([A-Za-z][A-Za-z0-9]*-)*([A-Za-z][A-Za-z0-9]*)'): TokenType.id, + new RegExp(r'(([A-Za-z][A-Za-z0-9]*-)*([A-Za-z][A-Za-z0-9]*))'): TokenType.id, }; final Map _expressionPatterns = { diff --git a/jael/pubspec.yaml b/jael/pubspec.yaml index bee0e252..c0545dd6 100644 --- a/jael/pubspec.yaml +++ b/jael/pubspec.yaml @@ -1,5 +1,5 @@ name: jael -version: 1.0.0-beta +version: 1.0.0-beta+1 description: A simple server-side HTML templating engine for Dart. author: Tobe O homepage: https://github.com/angel-dart/jael/tree/master/jael diff --git a/jael/test/text/scan_test.dart b/jael/test/text/scan_test.dart index 5a9fe99d..dee9f806 100644 --- a/jael/test/text/scan_test.dart +++ b/jael/test/text/scan_test.dart @@ -65,7 +65,7 @@ main() { test('script tag interpolation', () { var tokens = scan( ''' - ''', @@ -74,15 +74,18 @@ main() { .tokens; tokens.forEach(print); - expect(tokens, hasLength(8)); + expect(tokens, hasLength(11)); expect(tokens[0], isToken(TokenType.lt)); expect(tokens[1], isToken(TokenType.id, 'script')); - expect(tokens[2], isToken(TokenType.gt)); + expect(tokens[2], isToken(TokenType.id, 'aria-label')); + expect(tokens[3], isToken(TokenType.equals)); + expect(tokens[4], isToken(TokenType.string)); + expect(tokens[5], isToken(TokenType.gt)); expect( - tokens[3], isToken(TokenType.text, "\n window.alert('a string');\n")); - expect(tokens[4], isToken(TokenType.lt)); - expect(tokens[5], isToken(TokenType.slash)); - expect(tokens[6], isToken(TokenType.id, 'script')); - expect(tokens[7], isToken(TokenType.gt)); + tokens[6], isToken(TokenType.text, "\n window.alert('a string');\n")); + expect(tokens[7], isToken(TokenType.lt)); + expect(tokens[8], isToken(TokenType.slash)); + expect(tokens[9], isToken(TokenType.id, 'script')); + expect(tokens[10], isToken(TokenType.gt)); }); }