diff --git a/lib/rbs/unit_test/convertibles.rb b/lib/rbs/unit_test/convertibles.rb index c6f6aba56..61a33a963 100644 --- a/lib/rbs/unit_test/convertibles.rb +++ b/lib/rbs/unit_test/convertibles.rb @@ -5,6 +5,7 @@ module UnitTest module Convertibles class BlankSlate < BasicObject instance_methods.each do |im| + next if im == :__id__ next if im == :__send__ undef_method im end diff --git a/test/stdlib/BasicObject_test.rb b/test/stdlib/BasicObject_test.rb index fa97ec41a..182b3bf00 100644 --- a/test/stdlib/BasicObject_test.rb +++ b/test/stdlib/BasicObject_test.rb @@ -29,16 +29,20 @@ def test_eq end def test___id__ - assert_send_type '() -> Integer', - BOBJ, :__id__ + suppress_warning do + assert_send_type '() -> Integer', + BOBJ, :__id__ + end end def test___send__ - with_interned :__send__ do |name| - assert_send_type '(interned, *untyped, **untyped) -> untyped', - BOBJ, :__send__, name, :__id__ - assert_send_type '(interned, *untyped, **untyped) { (*untyped, **untyped) -> untyped} -> untyped', - BOBJ, :__send__, name, :instance_exec do _1 end + suppress_warning do + with_interned :__send__ do |name| + assert_send_type '(interned, *untyped, **untyped) -> untyped', + BOBJ, :__send__, name, :__id__ + assert_send_type '(interned, *untyped, **untyped) { (*untyped, **untyped) -> untyped} -> untyped', + BOBJ, :__send__, name, :instance_exec do _1 end + end end end @@ -70,4 +74,14 @@ def test_instance_exec assert_send_type '(*String) { (*String) [self: BasicObject] -> Integer } -> Integer', BOBJ, :instance_exec, '1', '2' do |*x| x.join.to_i end end + + def suppress_warning + origstderr = $stderr + begin + $stderr = StringIO.new + yield + ensure + $stderr = origstderr + end + end end diff --git a/test/stdlib/Ripper_test.rb b/test/stdlib/Ripper_test.rb index 9e9b255cf..257f5de7b 100644 --- a/test/stdlib/Ripper_test.rb +++ b/test/stdlib/Ripper_test.rb @@ -13,7 +13,7 @@ def test_new def test_dedent_string assert_send_type "(::String input, ::int width) -> ::Integer", - Ripper, :dedent_string, "", 0 + Ripper, :dedent_string, +"", 0 end def test_lex @@ -180,7 +180,7 @@ def test_compile_error def test_dedent_string assert_send_type "(String input, Integer width) -> Integer", - Ripper.new("def a; end"), :dedent_string, "", 0 + Ripper.new("def a; end"), :dedent_string, +"", 0 end def test_warning