[macruby-changes] [3946] MacRuby/trunk/spec/macruby/core/pointer_spec.rb
source_changes at macosforge.org
source_changes at macosforge.org
Tue Apr 20 16:14:49 PDT 2010
Revision: 3946
http://trac.macosforge.org/projects/ruby/changeset/3946
Author: lsansonetti at apple.com
Date: 2010-04-20 16:14:49 -0700 (Tue, 20 Apr 2010)
Log Message:
-----------
added specs for Pointer#cast!
Modified Paths:
--------------
MacRuby/trunk/spec/macruby/core/pointer_spec.rb
Modified: MacRuby/trunk/spec/macruby/core/pointer_spec.rb
===================================================================
--- MacRuby/trunk/spec/macruby/core/pointer_spec.rb 2010-04-20 23:14:30 UTC (rev 3945)
+++ MacRuby/trunk/spec/macruby/core/pointer_spec.rb 2010-04-20 23:14:49 UTC (rev 3946)
@@ -170,3 +170,19 @@
lambda { pointer[3] = 42 }.should raise_error(ArgumentError)
end
end
+
+describe "A Pointer object" do
+ it "can have its type changed using #cast!" do
+ pointer = Pointer.new(NSRect.type)
+ pointer[0] = NSMakeRect(10, 20, 30, 40)
+
+ val = NSValue.valueWithPointer(pointer)
+ pointer2 = val.pointerValue
+ pointer2.class.should == Pointer
+ pointer2.type == 'v'
+
+ pointer2.cast!(NSRect.type).should == pointer2
+ pointer2.type.should == NSRect.type
+ pointer2[0].should == NSMakeRect(10, 20, 30, 40)
+ end
+end
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20100420/85036b33/attachment.html>
More information about the macruby-changes
mailing list