mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
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. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ade73091cb
commit
eb38472824
2 changed files with 49 additions and 13 deletions
|
@ -18,9 +18,6 @@ if defined?(WIN32OLE_METHOD)
|
||||||
|
|
||||||
ole_type = WIN32OLE_TYPE.new("Microsoft Scripting Runtime", "File")
|
ole_type = WIN32OLE_TYPE.new("Microsoft Scripting Runtime", "File")
|
||||||
@m_file_name = WIN32OLE_METHOD.new(ole_type, "name")
|
@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
|
end
|
||||||
|
|
||||||
def test_initialize
|
def test_initialize
|
||||||
|
@ -81,16 +78,6 @@ if defined?(WIN32OLE_METHOD)
|
||||||
assert(!@m_invoke.visible?)
|
assert(!@m_invoke.visible?)
|
||||||
end
|
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
|
def test_helpstring
|
||||||
assert_equal("Get special folder from ShellSpecialFolderConstants", @m_namespace.helpstring)
|
assert_equal("Get special folder from ShellSpecialFolderConstants", @m_namespace.helpstring)
|
||||||
end
|
end
|
||||||
|
|
49
test/win32ole/test_win32ole_method_event.rb
Normal file
49
test/win32ole/test_win32ole_method_event.rb
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
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
|
Loading…
Add table
Reference in a new issue