* parse.y (rb_enc_symname2_p): :! is valid symbol. [Bug #5136]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2011-08-02 02:42:17 +00:00
parent f1a7dc3f13
commit 48fd404ffe
2 changed files with 15 additions and 7 deletions

View File

@ -1,3 +1,7 @@
Tue Aug 2 11:42:15 2011 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_enc_symname2_p): :! is valid symbol. [Bug #5136]
Tue Aug 2 07:33:29 2011 URABE Shyouhei <shyouhei@ruby-lang.org> Tue Aug 2 07:33:29 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* test/net/http/test_http.rb (TestNetHTTP_version_1_1_methods#test_timeout_during_HTTP_session): * test/net/http/test_http.rb (TestNetHTTP_version_1_1_methods#test_timeout_during_HTTP_session):

View File

@ -3,21 +3,25 @@ require 'test/unit'
class TestSymbol < Test::Unit::TestCase class TestSymbol < Test::Unit::TestCase
# [ruby-core:3573] # [ruby-core:3573]
def assert_eval_inspected(sym) def assert_eval_inspected(sym, valid = true)
n = sym.inspect n = sym.inspect
if valid
bug5136 = '[ruby-dev:44314]'
assert_not_match(/\A:"/, n, bug5136)
end
assert_nothing_raised(SyntaxError) {assert_equal(sym, eval(n))} assert_nothing_raised(SyntaxError) {assert_equal(sym, eval(n))}
end end
def test_inspect_invalid def test_inspect_invalid
# 2) Symbol#inspect sometimes returns invalid symbol representations: # 2) Symbol#inspect sometimes returns invalid symbol representations:
assert_eval_inspected(:"!") assert_eval_inspected(:"!")
assert_eval_inspected(:"=") assert_eval_inspected(:"=", false)
assert_eval_inspected(:"0") assert_eval_inspected(:"0", false)
assert_eval_inspected(:"$1") assert_eval_inspected(:"$1")
assert_eval_inspected(:"@1") assert_eval_inspected(:"@1", false)
assert_eval_inspected(:"@@1") assert_eval_inspected(:"@@1", false)
assert_eval_inspected(:"@") assert_eval_inspected(:"@", false)
assert_eval_inspected(:"@@") assert_eval_inspected(:"@@", false)
end end
def assert_inspect_evaled(n) def assert_inspect_evaled(n)