mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
spec/.../ole_method.rb: retry WIN32OLERuntimeError
This part sometimes causes random failure like: https://ci.appveyor.com/project/ruby/ruby/builds/19382723/job/bedc33p4nolcqkp6 Let me retry this to make CI stable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64993 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
3f113219df
commit
1b8534e66b
1 changed files with 14 additions and 1 deletions
|
@ -5,7 +5,20 @@ platform_is :windows do
|
|||
|
||||
describe :win32ole_ole_method, shared: true do
|
||||
before :each do
|
||||
@ie = WIN32OLESpecs.new_ole('InternetExplorer.Application')
|
||||
# This part is unstable, so retrying 3 times.
|
||||
tries = 0
|
||||
begin
|
||||
@ie = WIN32OLESpecs.new_ole('InternetExplorer.Application')
|
||||
rescue WIN32OLERuntimeError => e
|
||||
# WIN32OLERuntimeError: failed to create WIN32OLE object from `InternetExplorer.Application'
|
||||
# HRESULT error code:0x800704a6
|
||||
# A system shutdown has already been scheduled.
|
||||
if tries < 3
|
||||
tries += 1
|
||||
$stderr.puts "win32ole_ole_method retry (#{tries}): #{e.class}: #{e.message}"
|
||||
retry
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
after :each do
|
||||
|
|
Loading…
Reference in a new issue