From 12b5a35e2615e81ca84c2f755ac1eaa0387a681d Mon Sep 17 00:00:00 2001 From: Michael Go Date: Tue, 29 Oct 2024 17:06:02 -0300 Subject: [PATCH] fix parsing quirky incomplete expressions --- test/unit/lexer_unit_test.rb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/unit/lexer_unit_test.rb b/test/unit/lexer_unit_test.rb index 26a25b62..45cfc53e 100644 --- a/test/unit/lexer_unit_test.rb +++ b/test/unit/lexer_unit_test.rb @@ -136,4 +136,11 @@ class LexerUnitTest < Minitest::Test def tokenize(input) Lexer.new(input).tokenize end + + def test_tokenize_incomplete_expression + assert_equal([[:id, "false"], [:dash, "-"], [:end_of_string]], Lexer.new("false -").tokenize) + assert_equal([[:id, "false"], [:comparison, "<"], [:end_of_string]], Lexer.new("false <").tokenize) + assert_equal([[:id, "false"], [:comparison, ">"], [:end_of_string]], Lexer.new("false >").tokenize) + assert_equal([[:id, "false"], [:number, "1"], [:end_of_string]], Lexer.new("false 1").tokenize) + end end