summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2024-02-19 14:07:49 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2024-02-19 16:33:26 +0900
commitfcc55dc2261b4c61da711c10a5476d05d4391eca (patch)
treecdb28d1399dc7b78ccec5d85beadee36a1c64e80 /test/ruby
parenta52fc5df7ab7c5cf6a32dcbd2adfaf48a18d3947 (diff)
[Bug #20280] Raise SyntaxError on invalid encoding symbol
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_syntax.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/test/ruby/test_syntax.rb b/test/ruby/test_syntax.rb
index 1ea0d1763f..355f524e1a 100644
--- a/test/ruby/test_syntax.rb
+++ b/test/ruby/test_syntax.rb
@@ -1365,13 +1365,17 @@ eom
assert_valid_syntax 'p :foo, {proc do end => proc do end, b: proc do end}', bug13073
end
+ def test_invalid_encoding_symbol
+ assert_syntax_error('{"\xC3": 1}', "invalid symbol")
+ end
+
def test_invalid_symbol_in_hash_memory_leak
assert_no_memory_leak([], "#{<<-'begin;'}", "#{<<-'end;'}", rss: true)
str = '{"\xC3": 1}'.force_encoding("UTF-8")
code = proc do
eval(str)
raise "unreachable"
- rescue EncodingError
+ rescue SyntaxError
end
1_000.times(&code)