ruby-changes:52815
From: suke <ko1@a...>
Date: Fri, 12 Oct 2018 12:55:27 +0900 (JST)
Subject: [ruby-changes:52815] suke:r65027 (trunk): use ADODB.connection instead of Microsoft Internet Controls
suke 2018-10-12 12:55:21 +0900 (Fri, 12 Oct 2018) New Revision: 65027 https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=65027 Log: use ADODB.connection instead of Microsoft Internet Controls * test/win32ole/test_win32ole_method.rb: remove test using Microsoft Internet Controls. * test/win32ole/test_win32ole_method_event.rb: add test using ADODB.connection. Added files: trunk/test/win32ole/test_win32ole_method_event.rb Modified files: trunk/test/win32ole/test_win32ole_method.rb Index: test/win32ole/test_win32ole_method.rb =================================================================== --- test/win32ole/test_win32ole_method.rb (revision 65026) +++ test/win32ole/test_win32ole_method.rb (revision 65027) @@ -18,9 +18,6 @@ if defined?(WIN32OLE_METHOD) https://github.com/ruby/ruby/blob/trunk/test/win32ole/test_win32ole_method.rb#L18 ole_type = WIN32OLE_TYPE.new("Microsoft Scripting Runtime", "File") @m_file_name = WIN32OLE_METHOD.new(ole_type, "name") - - ole_type = WIN32OLE_TYPE.new("Microsoft Internet Controls", "WebBrowser") - @m_navigate_complete = WIN32OLE_METHOD.new(ole_type, "NavigateComplete") end def test_initialize @@ -81,16 +78,6 @@ if defined?(WIN32OLE_METHOD) https://github.com/ruby/ruby/blob/trunk/test/win32ole/test_win32ole_method.rb#L78 assert(!@m_invoke.visible?) end - def test_event? - assert(@m_navigate_complete.event?) - assert(!@m_namespace.event?) - end - - def test_event_interface - assert_equal("DWebBrowserEvents", @m_navigate_complete.event_interface) - assert_equal(nil, @m_namespace.event_interface) - end - def test_helpstring assert_equal("Get special folder from ShellSpecialFolderConstants", @m_namespace.helpstring) end Index: test/win32ole/test_win32ole_method_event.rb =================================================================== --- test/win32ole/test_win32ole_method_event.rb (nonexistent) +++ test/win32ole/test_win32ole_method_event.rb (revision 65027) @@ -0,0 +1,49 @@ https://github.com/ruby/ruby/blob/trunk/test/win32ole/test_win32ole_method_event.rb#L1 +begin + require 'win32ole' +rescue LoadError +end + +require 'test/unit' + +if defined?(WIN32OLE_METHOD) + + def ado_installed? + installed = false + if defined?(WIN32OLE) + begin + WIN32OLE.new('ADODB.Connection') + installed = true + rescue + end + end + installed + end + + class TestWIN32OLE_METHOD_EVENT < Test::Unit::TestCase + unless ado_installed? + def test_dummy_for_skip_message + skip 'ActiveX Data Object Library not found' + end + else + def setup + typelib = WIN32OLE.new('ADODB.Connection').ole_typelib + otype = WIN32OLE_TYPE.new(typelib.name, 'Connection') + @will_connect = WIN32OLE_METHOD.new(otype, 'WillConnect') + ole_type = WIN32OLE_TYPE.new('Microsoft Shell Controls And Automation', 'Shell') + @namespace = WIN32OLE_METHOD.new(ole_type, 'namespace') + end + + def test_event? + assert(@will_connect.event?) + end + + def test_event_interface + assert('ConnectionEvents', @will_connect.event_interface) + end + + def test_event_interface_is_nil + assert_equal(nil, @namespace.event_interface) + end + end + end +end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/