File tree Expand file tree Collapse file tree 2 files changed +40
-0
lines changed
lib/selenium/webdriver/common
spec/unit/selenium/webdriver/common Expand file tree Collapse file tree 2 files changed +40
-0
lines changed Original file line number Diff line number Diff line change @@ -122,6 +122,8 @@ def terminate_and_wait_else_kill(timeout)
122122
123123 def terminate ( pid )
124124 Process . kill ( SIGTERM , pid )
125+ rescue Errno ::ECHILD , Errno ::ESRCH
126+ # Process does not exist, nothing to terminate
125127 end
126128
127129 def kill ( pid )
Original file line number Diff line number Diff line change 1+ # frozen_string_literal: true
2+
3+ # Licensed to the Software Freedom Conservancy (SFC) under one
4+ # or more contributor license agreements. See the NOTICE file
5+ # distributed with this work for additional information
6+ # regarding copyright ownership. The SFC licenses this file
7+ # to you under the Apache License, Version 2.0 (the
8+ # "License"); you may not use this file except in compliance
9+ # with the License. You may obtain a copy of the License at
10+ #
11+ # http://www.apache.org/licenses/LICENSE-2.0
12+ #
13+ # Unless required by applicable law or agreed to in writing,
14+ # software distributed under the License is distributed on an
15+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+ # KIND, either express or implied. See the License for the
17+ # specific language governing permissions and limitations
18+ # under the License.
19+
20+ require File . expand_path ( '../spec_helper' , __dir__ )
21+
22+ module Selenium
23+ module WebDriver
24+ describe ChildProcess do
25+ it 'does not raise an error when terminating a killed process' do
26+ process = described_class . new ( 'sleep' , '5' )
27+ process . start
28+
29+ pid = process . instance_variable_get ( :@pid )
30+ Process . kill ( 'KILL' , pid )
31+
32+ expect {
33+ process . send ( :terminate , pid )
34+ } . not_to raise_error
35+ end
36+ end
37+ end
38+ end
You can’t perform that action at this time.
0 commit comments