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

ruby-changes:53197

From: suke <ko1@a...>
Date: Sun, 28 Oct 2018 14:40:47 +0900 (JST)
Subject: [ruby-changes:53197] suke:r65412 (trunk): use MSXML.DOMDocument instead of InternetExplorer.Application.

suke	2018-10-28 14:40:41 +0900 (Sun, 28 Oct 2018)

  New Revision: 65412

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=65412

  Log:
    use MSXML.DOMDocument instead of InternetExplorer.Application.
    
    * spec/ruby/library/win32ole/win32ole_event/new_spec.rb: use
      MSXML.DOMDocument. InternetExplorer.Application is not available on
      some environments. Thanks to MSP-Greg (Greg L).

  Modified files:
    trunk/spec/ruby/library/win32ole/win32ole_event/new_spec.rb
Index: spec/ruby/library/win32ole/win32ole_event/new_spec.rb
===================================================================
--- spec/ruby/library/win32ole/win32ole_event/new_spec.rb	(revision 65411)
+++ spec/ruby/library/win32ole/win32ole_event/new_spec.rb	(revision 65412)
@@ -1,33 +1,33 @@ https://github.com/ruby/ruby/blob/trunk/spec/ruby/library/win32ole/win32ole_event/new_spec.rb#L1
-require_relative '../fixtures/classes'
-
 platform_is :windows do
-  require 'win32ole'
-
-  describe "WIN32OLE_EVENT.new" do
-    before :each do
-      @ie = WIN32OLESpecs.new_ole('InternetExplorer.Application')
-    end
-
-    after :each do
-      @ie.Quit if @ie
-    end
-
-    it "raises TypeError given invalid argument" do
-      lambda { WIN32OLE_EVENT.new "A" }.should raise_error TypeError
-    end
-
-    it "raises RuntimeError if event does not exist" do
-      lambda { WIN32OLE_EVENT.new(@ie, 'A') }.should raise_error RuntimeError
-    end
-
-    it "raises RuntimeError if OLE object has no events" do
-      dict = WIN32OLESpecs.new_ole('Scripting.Dictionary')
-      lambda { WIN32OLE_EVENT.new(dict) }.should raise_error RuntimeError
-    end
+  require_relative '../fixtures/classes'
 
-    it "creates WIN32OLE_EVENT object" do
-      ev = WIN32OLE_EVENT.new(@ie, 'DWebBrowserEvents')
-      ev.should be_kind_of WIN32OLE_EVENT
+  guard -> { WIN32OLESpecs::MSXML_AVAILABLE } do
+    describe "WIN32OLE_EVENT.new" do
+      before :all do
+        @xml_dom = WIN32OLESpecs.new_ole('MSXML.DOMDocument')
+      end
+
+      after :all do
+        @xml_dom = nil
+      end
+
+      it "raises TypeError given invalid argument" do
+        lambda { WIN32OLE_EVENT.new "A" }.should raise_error TypeError
+      end
+
+      it "raises RuntimeError if event does not exist" do
+        lambda { WIN32OLE_EVENT.new(@xml_dom, 'A') }.should raise_error RuntimeError
+      end
+
+      it "raises RuntimeError if OLE object has no events" do
+        dict = WIN32OLESpecs.new_ole('Scripting.Dictionary')
+        lambda { WIN32OLE_EVENT.new(dict) }.should raise_error RuntimeError
+      end
+
+      it "creates WIN32OLE_EVENT object" do
+        ev = WIN32OLE_EVENT.new(@xml_dom)
+        ev.should be_kind_of WIN32OLE_EVENT
+      end
     end
   end
 end

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

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