diff options
Diffstat (limited to 'basictest/test.rb')
-rwxr-xr-x | basictest/test.rb | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/basictest/test.rb b/basictest/test.rb index a2eb107bce..52008b78db 100755 --- a/basictest/test.rb +++ b/basictest/test.rb @@ -2137,7 +2137,7 @@ $_ = foobar test_ok($_ == foobar) class Gods - @@rule = "Uranus" # private to Gods + @@rule = "Uranus" def ruler0 @@rule end @@ -2160,7 +2160,7 @@ module Olympians end class Titans < Gods - @@rule = "Cronus" # do not affect @@rule in Gods + @@rule = "Cronus" # modifies @@rule in Gods include Olympians def ruler4 @@rule @@ -2175,7 +2175,14 @@ test_ok(Titans.ruler2 == "Cronus") atlas = Titans.new test_ok(atlas.ruler0 == "Cronus") test_ok(atlas.ruler3 == "Zeus") -test_ok(atlas.ruler4 == "Cronus") +begin + atlas.ruler4 +rescue RuntimeError => e + test_ok(e.message.include?("class variable @@rule of Olympians is overtaken by Gods")) +else + test_ok(false) +end +test_ok(atlas.ruler3 == "Zeus") test_check "trace" $x = 1234 |