diff options
| author | Daniel Bovensiepen <[email protected]> | 2012-06-02 01:33:04 +0800 |
|---|---|---|
| committer | Daniel Bovensiepen <[email protected]> | 2012-06-02 01:33:04 +0800 |
| commit | cb10b927836fcc56fc40e677497cc303e79625c5 (patch) | |
| tree | aaa5223cb15d9ac4bbc3b48da4b714e8f5fbc7d3 | |
| parent | cd48737e118bcc1ed58e9710b9641e5a9e457179 (diff) | |
| download | mruby-cb10b927836fcc56fc40e677497cc303e79625c5.tar.gz mruby-cb10b927836fcc56fc40e677497cc303e79625c5.zip | |
Add Test Case for issue #210
| -rw-r--r-- | test/t/module.rb | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/test/t/module.rb b/test/t/module.rb index 854be75a5..a5331e96d 100644 --- a/test/t/module.rb +++ b/test/t/module.rb @@ -5,6 +5,53 @@ assert('Module', '15.2.2') do Module.class == Class end +assert('Module#const_defined?', '15.2.2.4.20') do + module Test4ConstDefined + Const4Test4ConstDefined = true + end + + Test4ConstDefined.const_defined?(:Const4Test4ConstDefined) and + not Test4ConstDefined.const_defined?(:NotExisting) +end + +assert('Module#const_get', '15.2.2.4.21') do + module Test4ConstGet + Const4Test4ConstGet = 42 + end + + Test4ConstGet.const_get(:Const4Test4ConstGet) == 42 +end + +assert('Module.const_missing', '15.2.2.4.22') do + e1 = nil + + module Test4ConstMissing + def const_missing(sym) + # ATM this redirect doesn't work + puts "PLEASE GO TO TEST CASE Module.const_missing!" + puts "IT IS WORKING NOW!! PLEASE FINALIZE." + puts "Thanks :)" + end + end + + begin + Test4ConstMissing.const_get(:ConstDoesntExist) + rescue => e2 + e1 = e2 + end + + e1.class == NameError +end + +assert('Module#const_get', '15.2.2.4.23') do + module Test4ConstSet + Const4Test4ConstSet = 42 + end + + Test4ConstSet.const_set(:Const4Test4ConstSet, 23) + Test4ConstSet.const_get(:Const4Test4ConstSet) == 23 +end + # TODO not implemented ATM assert('Module.constants', '15.2.2') do # TODO not implemented ATM assert('Module.nesting', '15.2.2') do |
