2017-05-07 12:04:49 +00:00
|
|
|
platform_is :windows do
|
2018-12-15 05:04:40 +00:00
|
|
|
require_relative '../fixtures/classes'
|
|
|
|
guard -> { WIN32OLESpecs::SYSTEM_MONITOR_CONTROL_AVAILABLE } do
|
2017-05-07 12:04:49 +00:00
|
|
|
|
2018-12-15 05:04:40 +00:00
|
|
|
describe "WIN32OLE_METHOD#event_interface" do
|
|
|
|
before :each do
|
|
|
|
ole_type = WIN32OLE_TYPE.new("System Monitor Control", "SystemMonitor")
|
|
|
|
@on_dbl_click_method = WIN32OLE_METHOD.new(ole_type, "OnDblClick")
|
|
|
|
ole_type = WIN32OLE_TYPE.new("Microsoft Shell Controls And Automation", "Shell")
|
|
|
|
@namespace_method = WIN32OLE_METHOD.new(ole_type, "namespace")
|
|
|
|
end
|
2017-05-07 12:04:49 +00:00
|
|
|
|
2018-12-15 05:04:40 +00:00
|
|
|
it "raises ArgumentError if argument is given" do
|
|
|
|
lambda { @on_dbl_click_method.event_interface(1) }.should raise_error ArgumentError
|
|
|
|
end
|
2017-05-07 12:04:49 +00:00
|
|
|
|
2018-12-15 05:04:40 +00:00
|
|
|
it "returns expected string for System Monitor Control's 'OnDblClick' method" do
|
|
|
|
@on_dbl_click_method.event_interface.should == "DISystemMonitorEvents"
|
|
|
|
end
|
2017-05-07 12:04:49 +00:00
|
|
|
|
2018-12-15 05:04:40 +00:00
|
|
|
it "returns nil if method has no event interface" do
|
|
|
|
@namespace_method.event_interface.should be_nil
|
|
|
|
end
|
2017-05-07 12:04:49 +00:00
|
|
|
|
2018-12-15 05:04:40 +00:00
|
|
|
end
|
2017-05-07 12:04:49 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
end
|