From 31c764ff7fd0d0dbd5700d0850a2d6e8a3951f7e Mon Sep 17 00:00:00 2001 From: suke Date: Sat, 13 Oct 2007 12:40:24 +0000 Subject: * ext/win32ole/win32ole.c (foletype_s_ole_classes, foletype_s_typelibs): refactoring. * test/win32ole/test_win32ole_type.rb: add some test. * ext/win32ole/win32ole.c (Init_win32ole): change method name WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes. * test/win32ole/test_win32ole_typelib.rb: ditto. * test/win32ole/test_folderitem2_invokeverb.rb: check create shortcut string more strictly (This test is invoked in Japanese Windows environment). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/win32ole/test_folderitem2_invokeverb.rb | 5 +++-- test/win32ole/test_win32ole_type.rb | 14 ++++++++++++++ test/win32ole/test_win32ole_typelib.rb | 10 +++++----- 3 files changed, 22 insertions(+), 7 deletions(-) (limited to 'test/win32ole') diff --git a/test/win32ole/test_folderitem2_invokeverb.rb b/test/win32ole/test_folderitem2_invokeverb.rb index a4e90fb66b..853b05bed2 100644 --- a/test/win32ole/test_folderitem2_invokeverb.rb +++ b/test/win32ole/test_folderitem2_invokeverb.rb @@ -29,7 +29,7 @@ if defined?(WIN32OLE) @shortcut = nil # - # Search the 'Create Shortcut (&S)' string. + # Search the 'Create Shortcut (&S)' string in Japanese. # Yes, I know the string in the Windows 2000 Japanese Edition. # But I do not know about the string in any other Windows. # @@ -38,7 +38,8 @@ if defined?(WIN32OLE) @shortcut = verbs.collect{|verb| verb.name }.find {|name| - /.*\(\&S\)$/ =~ name + name.unpack("C*") == [131, 86, 131, 135, 129, 91, 131, 103, 131, 74, 131, 98, 131, 103, 130, 204, 141, 236, 144, 172, 40, 38, 83, 41] + # /.*\(\&S\)$/ =~ name } end diff --git a/test/win32ole/test_win32ole_type.rb b/test/win32ole/test_win32ole_type.rb index 3ef62b10d1..a5b59ca477 100644 --- a/test/win32ole/test_win32ole_type.rb +++ b/test/win32ole/test_win32ole_type.rb @@ -158,6 +158,20 @@ if defined?(WIN32OLE_TYPE) def test_inspect assert_equal("#", @ole_type.inspect) end + # WIN32OLE_TYPE.typelibs will be obsoleted. + def test_s_typelibs + tlibs = WIN32OLE_TYPE.typelibs.sort + tlibs2 = WIN32OLE_TYPELIB.typelibs.collect{|t|t.name}.sort + assert_equal(tlibs2, tlibs) + end + # WIN32OLE_TYPE.ole_classes will be obsoleted. + def test_s_ole_classes + ots1 = WIN32OLE_TYPE.ole_classes("Microsoft Shell Controls And Automation") + ots2 = WIN32OLE_TYPELIB.new("Microsoft Shell Controls And Automation").ole_types + otns1 = ots1.collect{|t| t.name}.sort + otns2 = ots2.collect{|t| t.name}.sort + assert_equal(otns2, otns1) + end end end diff --git a/test/win32ole/test_win32ole_typelib.rb b/test/win32ole/test_win32ole_typelib.rb index 2da50d9299..16e6c1a663 100644 --- a/test/win32ole/test_win32ole_typelib.rb +++ b/test/win32ole/test_win32ole_typelib.rb @@ -88,12 +88,12 @@ if defined?(WIN32OLE_TYPELIB) assert_equal("Microsoft Shell Controls And Automation", tlib.to_s) end - def test_ole_classes + def test_ole_types tlib = WIN32OLE_TYPELIB.new("Microsoft Shell Controls And Automation") - ole_classes = tlib.ole_classes - assert_instance_of(Array, ole_classes) - assert(ole_classes.size > 0) - assert_instance_of(WIN32OLE_TYPE, ole_classes[0]) + ole_types = tlib.ole_types + assert_instance_of(Array, ole_types) + assert(ole_types.size > 0) + assert_instance_of(WIN32OLE_TYPE, ole_types[0]) end def test_inspect -- cgit v1.2.3