summaryrefslogtreecommitdiff
path: root/ext/win32ole/tests
diff options
context:
space:
mode:
authorsuke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-03-19 00:56:59 +0000
committersuke <suke@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-03-19 00:56:59 +0000
commit6c0256933be0dd43356fb80b4824cfbb70dc4e88 (patch)
tree2d2e3c3841c69a875c11f41d77cdd7819834b97c /ext/win32ole/tests
parent597cfafb88f31e58e50aa9da327e4e165322b39c (diff)
change behavior of converting OLE Variant object with VT_ARRAY|VT_UI1
and Ruby String object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/win32ole/tests')
-rw-r--r--ext/win32ole/tests/testOLEVARIANT.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/ext/win32ole/tests/testOLEVARIANT.rb b/ext/win32ole/tests/testOLEVARIANT.rb
index d94eede2da..247ceb1f86 100644
--- a/ext/win32ole/tests/testOLEVARIANT.rb
+++ b/ext/win32ole/tests/testOLEVARIANT.rb
@@ -76,4 +76,23 @@ class TestWIN32OLE_VARIANT < Test::Unit::TestCase
assert_equal([1.2, 2.3], obj.value)
end
+ def test_create_vt_array_str2ui1array
+ obj = WIN32OLE_VARIANT.new("ABC", WIN32OLE::VARIANT::VT_ARRAY|WIN32OLE::VARIANT::VT_UI1)
+ assert_equal("ABC", obj.value)
+
+ obj = WIN32OLE_VARIANT.new([65, 0].pack("C*"), WIN32OLE::VARIANT::VT_ARRAY|WIN32OLE::VARIANT::VT_UI1)
+ assert_equal([65, 0].pack("C*"), obj.value)
+
+ end
+ def test_create_vt_array_int
+ obj = WIN32OLE_VARIANT.new([65, 0], WIN32OLE::VARIANT::VT_ARRAY|WIN32OLE::VARIANT::VT_UI1)
+ assert_equal([65, 0].pack("C*"), obj.value)
+
+ obj = WIN32OLE_VARIANT.new([65, 0])
+ assert_equal([65, 0], obj.value)
+
+ obj = WIN32OLE_VARIANT.new([65, 0], WIN32OLE::VARIANT::VT_I2|WIN32OLE::VARIANT::VT_ARRAY)
+ assert_equal([65, 0], obj.value)
+ end
+
end