Compare commits

...
2 changed files with 4 additions and 1 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ module Liquid
'?'.freeze => :question,
'-'.freeze => :dash
}
IDENTIFIER = /[a-zA-Z_][\w-]*\??/
IDENTIFIER = /[a-zA-Z_](?:[\w-]*\w)?\??/
SINGLE_STRING_LITERAL = /'[^\']*'/
DOUBLE_STRING_LITERAL = /"[^\"]*"/
NUMBER_LITERAL = /-?\d+(\.\d+)?/
+3
View File
@@ -36,6 +36,9 @@ class LexerUnitTest < Minitest::Test
tokens = Lexer.new('2foo').tokenize
assert_equal [[:number, '2'], [:id, 'foo'], [:end_of_string]], tokens
tokens = Lexer.new('foo-bar--baz-').tokenize
assert_equal [[:id, 'foo-bar--baz'], [:dash, "-"], [:end_of_string]], tokens
end
def test_whitespace