1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

lib/drb/drb.rb: Use ruby2_keywords for keyword separation

[Bug #16634]
This commit is contained in:
Yusuke Endoh 2020-02-15 16:27:03 +09:00
parent 2bcfdad006
commit fb472ca7ad
3 changed files with 29 additions and 1 deletions

View file

@ -1131,7 +1131,7 @@ module DRb
end
# Routes method calls to the referenced remote object.
def method_missing(msg_id, *a, &b)
ruby2_keywords def method_missing(msg_id, *a, &b)
if DRb.here?(@uri)
obj = DRb.to_obj(@ref)
DRb.current_server.check_insecure_method(obj, msg_id)

View file

@ -349,4 +349,20 @@ class TestDRbTCP < Test::Unit::TestCase
end
end
class TestBug16634 < Test::Unit::TestCase
include DRbBase
def setup
super
setup_service 'ut_drb.rb'
end
def test_bug16634
assert_equal(42, @there.keyword_test1(a: 42))
assert_equal("default", @there.keyword_test2)
assert_equal(42, @there.keyword_test2(b: 42))
assert_equal({:a=>42, :b=>42}, @there.keyword_test3(a: 42, b: 42))
end
end
end

View file

@ -148,6 +148,18 @@ class DRbEx
end
end
def keyword_test1(a:)
a
end
def keyword_test2(b: "default")
b
end
def keyword_test3(**opt)
opt
end
private
def call_private_method
true