ruby-changes:54056
From: suke <ko1@a...>
Date: Fri, 7 Dec 2018 21:12:50 +0900 (JST)
Subject: [ruby-changes:54056] suke:r66275 (trunk): should not use Internet Explorer
suke 2018-12-07 21:12:45 +0900 (Fri, 07 Dec 2018) New Revision: 66275 https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=66275 Log: should not use Internet Explorer * spec/ruby/library/win32ole/fixtures/classes.rb: add SYSTEM_MONITOR_CONTROL_AVAILABLE. * spec/ruby/library/win32ole/win32ole_method/event_spec.rb: Internet Explorer is not available in some environment. Instead, try to use System Monitor Control. Modified files: trunk/spec/ruby/library/win32ole/fixtures/classes.rb trunk/spec/ruby/library/win32ole/win32ole_method/event_spec.rb Index: spec/ruby/library/win32ole/win32ole_method/event_spec.rb =================================================================== --- spec/ruby/library/win32ole/win32ole_method/event_spec.rb (revision 66274) +++ spec/ruby/library/win32ole/win32ole_method/event_spec.rb (revision 66275) @@ -1,20 +1,22 @@ https://github.com/ruby/ruby/blob/trunk/spec/ruby/library/win32ole/win32ole_method/event_spec.rb#L1 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 Index: spec/ruby/library/win32ole/fixtures/classes.rb =================================================================== --- spec/ruby/library/win32ole/fixtures/classes.rb (revision 66274) +++ spec/ruby/library/win32ole/fixtures/classes.rb (revision 66275) @@ -2,6 +2,7 @@ require 'win32ole' https://github.com/ruby/ruby/blob/trunk/spec/ruby/library/win32ole/fixtures/classes.rb#L2 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 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/