diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-06-17 11:51:04 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-06-17 11:51:04 +0900 |
| commit | d9985631e7bbbfbd9b5d7ec33d6060b5aa02e6c8 (patch) | |
| tree | 0760005e71c7505e94f5ed055571867e82272cd2 /test/t/superclass.rb | |
| parent | 44a834f30b0a6872210e0b20dadc3e9eb8cea461 (diff) | |
| parent | 77047b5ed4e49ab4dd87185dd61c7e4854169ad3 (diff) | |
| download | mruby-d9985631e7bbbfbd9b5d7ec33d6060b5aa02e6c8.tar.gz mruby-d9985631e7bbbfbd9b5d7ec33d6060b5aa02e6c8.zip | |
Merge pull request #2396 from take-cheeze/superclass_check
Move direct superclass checking to `test/t/superclass.rb`.
Diffstat (limited to 'test/t/superclass.rb')
| -rw-r--r-- | test/t/superclass.rb | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/test/t/superclass.rb b/test/t/superclass.rb new file mode 100644 index 000000000..22d3b69cb --- /dev/null +++ b/test/t/superclass.rb @@ -0,0 +1,46 @@ +[ + # [: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'], + [:TrueClass, :Object, '15.2.5.2'], + [:FalseClass, :Object, '15.2.6.2'], + [:Numeric, :Object, '15.2.7.2'], + [:Integer, :Numeric, '15.2.8.2'], + [:Float, :Numeric, '15.2.9.2'], + [:String, :Object, '15.2.10.2'], + [:Symbol, :Object, '15.2.11.2'], + [: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 + skip "#{cls} isn't defined" unless Object.const_defined? cls + assert_equal Object.const_get(super_cls), Object.const_get(cls).superclass + end +end |
