summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-08-11 22:35:40 +0900
committerGitHub <[email protected]>2017-08-11 22:35:40 +0900
commit42f9af41fbd420d59f9cad5320218c45254ebb55 (patch)
tree35bed4c1f2671fd1e1e78020def07b90da922bdd
parentd077a5f0a6a70a949a6129979b7ffcfbd269b636 (diff)
parent731dd78aa06e399497ddf9c54aea2e758b0f6b4b (diff)
downloadmruby-42f9af41fbd420d59f9cad5320218c45254ebb55.tar.gz
mruby-42f9af41fbd420d59f9cad5320218c45254ebb55.zip
Merge pull request #3777 from christopheraue/super_method_missing_test
Added basic test for calling a missing method through super
-rw-r--r--test/t/kernel.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/t/kernel.rb b/test/t/kernel.rb
index 40a3482f8..e9bd24dc3 100644
--- a/test/t/kernel.rb
+++ b/test/t/kernel.rb
@@ -359,6 +359,26 @@ assert('Kernel#method_missing', '15.3.1.3.30') do
mm_test = MMTestClass.new
assert_equal 'A call to no_method_named_this', mm_test.no_method_named_this
+ class SuperMMTestClass < MMTestClass
+ def no_super_method_named_this
+ super
+ end
+ end
+ super_mm_test = SuperMMTestClass.new
+ assert_equal 'A call to no_super_method_named_this', super_mm_test.no_super_method_named_this
+
+ class NoSuperMethodTestClass
+ def no_super_method_named_this
+ super
+ end
+ end
+ no_super_test = NoSuperMethodTestClass.new
+ 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
+ end
+
a = String.new
begin
a.no_method_named_this