mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
use System Monitor Control to test win32ole
* test/win32ole/test_win32ole_method_event.rb: use System Monitor Control to test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
2a75c70a36
commit
d02a7ac01c
1 changed files with 7 additions and 20 deletions
|
@ -6,39 +6,26 @@ 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
|
||||
|
||||
require_relative 'available_ole'
|
||||
class TestWIN32OLE_METHOD_EVENT < Test::Unit::TestCase
|
||||
unless ado_installed?
|
||||
unless AvailableOLE.sysmon_available?
|
||||
def test_dummy_for_skip_message
|
||||
skip 'ActiveX Data Object Library not found'
|
||||
skip 'System Monitor Control is not available'
|
||||
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('System Monitor Control', 'SystemMonitor')
|
||||
@on_dbl_click = WIN32OLE_METHOD.new(ole_type, 'OnDblClick')
|
||||
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?)
|
||||
assert(@on_dbl_click.event?)
|
||||
end
|
||||
|
||||
def test_event_interface
|
||||
assert('ConnectionEvents', @will_connect.event_interface)
|
||||
assert('DISystemMonitorEvents', @on_dbl_click.event_interface)
|
||||
end
|
||||
|
||||
def test_event_interface_is_nil
|
||||
|
|
Loading…
Add table
Reference in a new issue