diff options
Diffstat (limited to 'ext/win32ole')
-rw-r--r-- | ext/win32ole/tests/testOLEVARIANT.rb | 74 | ||||
-rw-r--r-- | ext/win32ole/tests/testall.rb | 1 |
2 files changed, 75 insertions, 0 deletions
diff --git a/ext/win32ole/tests/testOLEVARIANT.rb b/ext/win32ole/tests/testOLEVARIANT.rb new file mode 100644 index 0000000000..a9a52a826f --- /dev/null +++ b/ext/win32ole/tests/testOLEVARIANT.rb @@ -0,0 +1,74 @@ +require 'test/unit' + +require 'win32ole' + +class TestWIN32OLE_VARIANT < Test::Unit::TestCase + def test_new + obj = WIN32OLE_VARIANT.new('foo') + assert_instance_of(WIN32OLE_VARIANT, obj) + end + + def test_new_no_argument + ex = nil + begin + obj = WIN32OLE_VARIANT.new + rescue ArgumentError + ex = $! + end + assert_instance_of(ArgumentError, ex) + assert_equal("wrong number of arguments (0 for 1..3)", ex.message); + end + + def test_new_one_argument + ex = nil + begin + obj = WIN32OLE_VARIANT.new('foo') + rescue + ex = $! + end + assert_equal(nil, ex); + end + + def test_value + obj = WIN32OLE_VARIANT.new('foo') + assert_equal('foo', obj.value) + end + + def test_new_2_argument + ex = nil + obj = nil + begin + obj = WIN32OLE_VARIANT.new('foo', WIN32OLE::VARIANT::VT_BSTR|WIN32OLE::VARIANT::VT_BYREF) + rescue + ex = $! + end + assert_equal('foo', obj.value); + end + + def test_new_2_argument2 + ex = nil + obj = nil + begin + obj = WIN32OLE_VARIANT.new('foo', WIN32OLE::VARIANT::VT_BSTR) + rescue + ex = $! + end + assert_equal('foo', obj.value); + end + + def test_conversion_num2str + obj = WIN32OLE_VARIANT.new(124, WIN32OLE::VARIANT::VT_BSTR) + assert_equal("124", obj.value); + end + + def test_conversion_str2date + obj = WIN32OLE_VARIANT.new("2004-12-24 12:24:45", WIN32OLE::VARIANT::VT_DATE) + assert_equal("2004/12/24 12:24:45", obj.value) + end + + def test_conversion_str2cy + obj = WIN32OLE_VARIANT.new("\\10,000", WIN32OLE::VARIANT::VT_CY) + assert_equal("10000", obj.value) + end + +end diff --git a/ext/win32ole/tests/testall.rb b/ext/win32ole/tests/testall.rb index a943ae09b9..6bd3797718 100644 --- a/ext/win32ole/tests/testall.rb +++ b/ext/win32ole/tests/testall.rb @@ -8,4 +8,5 @@ require "testOLEMETHOD" require "testOLEVARIABLE" require "testVARIANT" require "testOLETYPELIB" +# require "testOLEVARIANT" # require "testOLEEVENT" |