mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
Update Kernel#method_missing tests for new NoMethodError message.
Also removed tests that depends on implementation details of the default `method_missing` behavior.
This commit is contained in:
+2
-36
@@ -366,48 +366,14 @@ assert('Kernel#method_missing', '15.3.1.3.30') do
|
||||
begin
|
||||
no_super_test.no_super_method_named_this
|
||||
rescue NoMethodError => e
|
||||
assert_equal "undefined method 'no_super_method_named_this' for #{no_super_test}", e.message
|
||||
assert_equal "undefined method 'no_super_method_named_this'", e.message
|
||||
end
|
||||
|
||||
a = String.new
|
||||
begin
|
||||
a.no_method_named_this
|
||||
rescue NoMethodError => e
|
||||
assert_equal "undefined method 'no_method_named_this' for \"\"", e.message
|
||||
end
|
||||
|
||||
class ShortInspectClass
|
||||
def inspect
|
||||
'An inspect string'
|
||||
end
|
||||
end
|
||||
b = ShortInspectClass.new
|
||||
begin
|
||||
b.no_method_named_this
|
||||
rescue NoMethodError => e
|
||||
assert_equal "undefined method 'no_method_named_this' for An inspect string", e.message
|
||||
end
|
||||
|
||||
class LongInspectClass
|
||||
def inspect
|
||||
"A" * 70
|
||||
end
|
||||
end
|
||||
c = LongInspectClass.new
|
||||
begin
|
||||
c.no_method_named_this
|
||||
rescue NoMethodError => e
|
||||
assert_equal "undefined method 'no_method_named_this' for #{c}", e.message
|
||||
end
|
||||
|
||||
class NoInspectClass
|
||||
undef inspect
|
||||
end
|
||||
d = NoInspectClass.new
|
||||
begin
|
||||
d.no_method_named_this
|
||||
rescue NoMethodError => e
|
||||
assert_equal "undefined method 'no_method_named_this' for #{d}", e.message
|
||||
assert_equal "undefined method 'no_method_named_this'", e.message
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user