[前][次][番号順一覧][スレッド一覧]

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/

[前][次][番号順一覧][スレッド一覧]