[macruby-changes] [1317] MacRuby/branches/experimental/spec/frozen/language/class_spec.rb

source_changes at macosforge.org source_changes at macosforge.org
Fri Apr 3 18:53:20 PDT 2009


Revision: 1317
          http://trac.macosforge.org/projects/ruby/changeset/1317
Author:   lsansonetti at apple.com
Date:     2009-04-03 18:53:20 -0700 (Fri, 03 Apr 2009)
Log Message:
-----------
ported to match the 1.9 behaviors

Modified Paths:
--------------
    MacRuby/branches/experimental/spec/frozen/language/class_spec.rb

Modified: MacRuby/branches/experimental/spec/frozen/language/class_spec.rb
===================================================================
--- MacRuby/branches/experimental/spec/frozen/language/class_spec.rb	2009-04-04 01:44:24 UTC (rev 1316)
+++ MacRuby/branches/experimental/spec/frozen/language/class_spec.rb	2009-04-04 01:53:20 UTC (rev 1317)
@@ -17,11 +17,13 @@
     ClassSpecs::A.class_variables.should == []
   end
 
-  it "raises TypeError if constant given as class name exists and is not a Module" do
-    lambda {
-      class ClassSpecsNumber
-      end
-    }.should raise_error(TypeError)
+  ruby_version_is "" ... "1.9" do
+    it "raises TypeError if constant given as class name exists and is not a Module" do
+      lambda {
+        class ClassSpecsNumber
+        end
+      }.should raise_error(TypeError)
+    end
   end
 
   # test case known to be detecting bugs (JRuby, MRI 1.9)
@@ -58,31 +60,58 @@
 #  end
 
   it "allows the declaration of class variables in the body" do
-    ClassSpecs::B.class_variables.should == ["@@cvar"]
+    ruby_version_is "" ... "1.9" do
+      ClassSpecs::B.class_variables.should == ["@@cvar"]
+    end
+    ruby_version_is "1.9" do
+      ClassSpecs::B.class_variables.should == [:@@cvar]
+    end
     ClassSpecs::B.send(:class_variable_get, :@@cvar).should == :cvar
   end
   
   it "stores instance variables defined in the class body in the class object" do
-    ClassSpecs::B.instance_variables.include?("@ivar").should == true
+    ruby_version_is "" ... "1.9" do
+      ClassSpecs::B.instance_variables.include?("@ivar").should == true
+    end
+    ruby_version_is "1.9" do
+      ClassSpecs::B.instance_variables.include?(:@ivar).should == true
+    end
     ClassSpecs::B.instance_variable_get(:@ivar).should == :ivar
   end
 
   it "allows the declaration of class variables in a class method" do
     ClassSpecs::C.class_variables.should == []
     ClassSpecs::C.make_class_variable
-    ClassSpecs::C.class_variables.should == ["@@cvar"]
+    ruby_version_is "" ... "1.9" do
+      ClassSpecs::C.class_variables.should == ["@@cvar"]
+    end
+    ruby_version_is "1.9" do
+      ClassSpecs::C.class_variables.should == [:@@cvar]
+    end
   end
 
   it "allows the definition of class-level instance variables in a class method" do
-    ClassSpecs::C.instance_variables.include?("@civ").should == false
-    ClassSpecs::C.make_class_instance_variable
-    ClassSpecs::C.instance_variables.include?("@civ").should == true
+    ruby_version_is "" ... "1.9" do
+      ClassSpecs::C.instance_variables.include?("@civ").should == false
+      ClassSpecs::C.make_class_instance_variable
+      ClassSpecs::C.instance_variables.include?("@civ").should == true
+    end
+    ruby_version_is "1.9" do
+      ClassSpecs::C.instance_variables.include?(:@civ).should == false
+      ClassSpecs::C.make_class_instance_variable
+      ClassSpecs::C.instance_variables.include?(:@civ).should == true
+    end
   end
   
   it "allows the declaration of class variables in an instance method" do
     ClassSpecs::D.class_variables.should == []
     ClassSpecs::D.new.make_class_variable
-    ClassSpecs::D.class_variables.should == ["@@cvar"]
+    ruby_version_is "" ... "1.9" do
+      ClassSpecs::D.class_variables.should == ["@@cvar"]
+    end
+    ruby_version_is "1.9" do
+      ClassSpecs::D.class_variables.should == [:@@cvar]
+    end
   end
   
   it "allows the definition of instance methods" do
@@ -113,7 +142,12 @@
 
 describe "An outer class definition" do
   it "contains the inner classes" do
-    ClassSpecs::Container.constants.should include('A', 'B')
+    ruby_version_is "" ... "1.9" do
+      ClassSpecs::Container.constants.should include('A', 'B')
+    end
+    ruby_version_is "1.9" do
+      ClassSpecs::Container.constants.should include(:A, :B)
+    end
   end
 end
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090403/fda0e5c0/attachment-0001.html>


More information about the macruby-changes mailing list