summaryrefslogtreecommitdiff
path: root/spec/ruby/library
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library')
-rw-r--r--spec/ruby/library/win32ole/fixtures/classes.rb1
-rw-r--r--spec/ruby/library/win32ole/win32ole_method/event_spec.rb26
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