summaryrefslogtreecommitdiff
path: root/test/ripper
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2019-07-06 18:46:00 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2019-07-06 18:46:00 +0900
commit9d8855b6820a53020d034756f6ec523fc14f663b (patch)
tree59f40f9ba0d74b267bda08a8430cb0ff6f15921b /test/ripper
parentf296c260ef3b2d1a9299dbb4a84df567972453f2 (diff)
Added assertions for Unicode escaped CHAR scanner events
Diffstat (limited to 'test/ripper')
-rw-r--r--test/ripper/test_scanner_events.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/ripper/test_scanner_events.rb b/test/ripper/test_scanner_events.rb
index 8691924464..02312ef64c 100644
--- a/test/ripper/test_scanner_events.rb
+++ b/test/ripper/test_scanner_events.rb
@@ -941,9 +941,20 @@ class TestRipper::ScannerEvents < Test::Unit::TestCase
scan('CHAR', "@ivar")
assert_equal ["?\\M-H"], scan('CHAR', '?\\M-H')
+
+ assert_equal ["?\\u0041"],
+ scan('CHAR', "?\\u0041")
+
+ assert_equal ["?\\u{41}"],
+ scan('CHAR', "?\\u{41}")
+
err = nil
assert_equal [], scan('CHAR', '?\\M ') {|*e| err = e}
assert_equal([:on_parse_error, "Invalid escape character syntax", "?\\M "], err)
+
+ err = nil
+ scan('CHAR', '?\u{41 42}') {|*e| err = e}
+ assert_equal [:on_parse_error, "Multiple codepoints at single character literal", "42"], err
end
def test_label