зеркало из https://github.com/github/ruby.git
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:
Родитель
3f113219df
Коммит
1b8534e66b
|
@ -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
|
||||
|
|
Загрузка…
Ссылка в новой задаче