diff options
Diffstat (limited to 'spec')
-rw-r--r-- | spec/ruby/library/win32ole/fixtures/classes.rb | 1 | ||||
-rw-r--r-- | spec/ruby/library/win32ole/win32ole_method/event_spec.rb | 26 |
2 files changed, 15 insertions, 12 deletions
diff --git a/spec/ruby/library/win32ole/fixtures/classes.rb b/spec/ruby/library/win32ole/fixtures/classes.rb index 139aa1225c..70612ed427 100644 --- a/spec/ruby/library/win32ole/fixtures/classes.rb +++ b/spec/ruby/library/win32ole/fixtures/classes.rb @@ -2,6 +2,7 @@ require 'win32ole' module WIN32OLESpecs MSXML_AVAILABLE = !!WIN32OLE_TYPELIB.typelibs.find { |t| t.name.start_with?('Microsoft XML') } + SYSTEM_MONITOR_CONTROL_AVAILABLE = !!WIN32OLE_TYPELIB.typelibs.find{ |t| t.name.start_with?('System Monitor Control') } def self.new_ole(name) tries = 0 diff --git a/spec/ruby/library/win32ole/win32ole_method/event_spec.rb b/spec/ruby/library/win32ole/win32ole_method/event_spec.rb index 25435438aa..81628805d0 100644 --- a/spec/ruby/library/win32ole/win32ole_method/event_spec.rb +++ b/spec/ruby/library/win32ole/win32ole_method/event_spec.rb @@ -1,20 +1,22 @@ platform_is :windows do - require 'win32ole' + require_relative '../fixtures/classes' + guard -> { WIN32OLESpecs::SYSTEM_MONITOR_CONTROL_AVAILABLE } do - describe "WIN32OLE_METHOD#event?" do - before :each do - ole_type = WIN32OLE_TYPE.new("Microsoft Internet Controls", "WebBrowser") - @navigate_method = WIN32OLE_METHOD.new(ole_type, "NavigateComplete") - end + describe "WIN32OLE_METHOD#event?" do + before :each do + ole_type = WIN32OLE_TYPE.new("System Monitor Control", "SystemMonitor") + @on_dbl_click_method = WIN32OLE_METHOD.new(ole_type, "OnDblClick") + end - it "raises ArgumentError if argument is given" do - lambda { @navigate_method.event?(1) }.should raise_error ArgumentError - end + it "raises ArgumentError if argument is given" do + lambda { @on_dbl_click_method.event?(1) }.should raise_error ArgumentError + end - it "returns true for browser's 'NavigateComplete' method" do - @navigate_method.event?.should be_true - end + it "returns true for System Monitor Control's 'OnDblClick' method" do + @on_dbl_click_method.event?.should be_true + end + end end end |