diff options
author | shyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-08-15 23:23:39 +0000 |
---|---|---|
committer | shyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-08-15 23:23:39 +0000 |
commit | 6175ca03be6d0d51359f9017123708987d0f5eb7 (patch) | |
tree | ecfcf6e79a21b1d25c3f6f42dd68ea0a14add89c /ruby_1_8_5/ext/win32ole/tests/testOLEPARAM.rb | |
parent | 80a56b248b2e9cfc95622aed98750df05a19f667 (diff) |
add tag v1_8_5_91v1_8_5_91
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_8_5_91@13046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby_1_8_5/ext/win32ole/tests/testOLEPARAM.rb')
-rw-r--r-- | ruby_1_8_5/ext/win32ole/tests/testOLEPARAM.rb | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/ruby_1_8_5/ext/win32ole/tests/testOLEPARAM.rb b/ruby_1_8_5/ext/win32ole/tests/testOLEPARAM.rb new file mode 100644 index 0000000000..4014fadbfc --- /dev/null +++ b/ruby_1_8_5/ext/win32ole/tests/testOLEPARAM.rb @@ -0,0 +1,65 @@ +# You need RubyUnit and MS Excel and MSI to run this test script + +require 'rubyunit' + +require 'win32ole' +require 'oleserver' + +class TestOLEPARAM < RUNIT::TestCase + include OLESERVER + def test_name + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + sh = classes.find {|c| c.name == 'Worksheet'} + saveas = sh.ole_methods.find {|m| m.name == 'SaveAs'} + param_names = saveas.params.collect{|p| p.name} + assert(param_names.size > 0) + assert(param_names.include?('Filename')) + end + def test_to_s + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + sh = classes.find {|c| c.name == 'Worksheet'} + saveas = sh.ole_methods.find {|m| m.name == 'SaveAs'} + param_names = saveas.params.collect{|p| "#{p}"} + assert(param_names.include?('Filename')) + end + def test_ole_type + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + methods = classes.find {|c| c.name == 'Worksheet'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert_equal('BSTR', f.params[0].ole_type) + methods = classes.find {|c| c.name == 'Workbook'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert_equal('XlSaveAsAccessMode', f.params[6].ole_type) + end + def test_ole_type_detail + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + methods = classes.find {|c| c.name == 'Worksheet'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert_equal(['BSTR'], f.params[0].ole_type_detail) + methods = classes.find {|c| c.name == 'Workbook'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert_equal(['USERDEFINED', 'XlSaveAsAccessMode'], f.params[6].ole_type_detail) + end + def test_input + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + methods = classes.find {|c| c.name == 'Worksheet'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert(f.params[0].input?) + end + + def test_output + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + methods = classes.find {|c| c.name == 'Worksheet'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert(!f.params[0].output?) + end + def test_optional + classes = WIN32OLE_TYPE.ole_classes(MS_EXCEL_TYPELIB) + methods = classes.find {|c| c.name == 'Worksheet'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert(!f.params[0].optional?) + methods = classes.find {|c| c.name == 'Workbook'}.ole_methods + f = methods.find {|m| m.name == 'SaveAs'} + assert(f.params[0].optional?) + end +end |