summaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authortake_cheeze <[email protected]>2014-06-15 17:07:01 +0900
committertake_cheeze <[email protected]>2014-06-15 17:07:01 +0900
commit77047b5ed4e49ab4dd87185dd61c7e4854169ad3 (patch)
tree034f24bc3c4732b0e135a75f216ed50672f82a48 /test
parentec5b0556940e9ab01cca07d0efee3fdeefe803ae (diff)
downloadmruby-77047b5ed4e49ab4dd87185dd61c7e4854169ad3.tar.gz
mruby-77047b5ed4e49ab4dd87185dd61c7e4854169ad3.zip
Test all ISO defined classes direct superclass except `Object` class.
Move mrbgems ISO direct superclass test to `superclass.rb`. Skips test if class isn't defined. Close #2332.
Diffstat (limited to 'test')
-rw-r--r--test/t/superclass.rb20
1 files changed, 18 insertions, 2 deletions
diff --git a/test/t/superclass.rb b/test/t/superclass.rb
index cf88fea6f..22d3b69cb 100644
--- a/test/t/superclass.rb
+++ b/test/t/superclass.rb
@@ -1,4 +1,5 @@
[
+ # [:Object, :implementation_defined_value, '15.2.2.1'],
[:Module, :Object, '15.2.2.2'],
[:Class, :Module, '15.2.3.2'],
[:NilClass, :Object, '15.2.4.2'],
@@ -12,19 +13,34 @@
[:Array, :Object, '15.2.12.2'],
[:Hash, :Object, '15.2.13.2'],
[:Range, :Object, '15.2.14.2'],
+ [:Regexp, :Object, '15.2.15.2'],
+ [:MatchData, :Object, '15.2.16.2'],
[:Proc, :Object, '15.2.17.2'],
+ [:Struct, :Object, '15.2.18.2'],
+ [:Time, :Object, '15.2.19.2'],
+ [:IO, :Object, '15.2.20.2'],
+ [:File, :IO, '15.2.21.2'],
[:Exception, :Object, '15.2.22.2'],
[:StandardError, :Exception, '15.2.23.2'],
[:ArgumentError, :StandardError, '15.2.24.2'],
+ [:LocalJumpError, :StandardError, '15.2.25.2'],
[:RangeError, :StandardError, '12.2.26.2'],
+ [:RegexpError, :StandardError, '12.2.27.2'],
+ [:RuntimeError, :StandardError, '12.2.28.2'],
[:TypeError, :StandardError, '12.2.29.2'],
+ [:ZeroDivisionError, :StandardError, '12.2.30.2'],
[:NameError, :StandardError, '15.2.31.2'],
[:NoMethodError, :NameError, '15.2.32.2'],
[:IndexError, :StandardError, '15.2.33.2'],
+ [:IOError, :StandardError, '12.2.34.2'],
+ [:EOFError, :IOError, '12.2.35.2'],
+ [:SystemCallError, :StandardError, '15.2.36.2'],
+ [:ScriptError, :Exception, '12.2.37.2'],
+ [:SyntaxError, :ScriptError, '12.2.38.2'],
+ [:LoadError, :ScriptError, '12.2.39,2'],
].each do |cls, super_cls, iso|
assert "Direct superclass of #{cls}", iso do
- assert_true Object.const_defined? cls
- assert_true Object.const_defined? super_cls
+ skip "#{cls} isn't defined" unless Object.const_defined? cls
assert_equal Object.const_get(super_cls), Object.const_get(cls).superclass
end
end