From b100293a06a94b53684643954a96f239800a60e7 Mon Sep 17 00:00:00 2001 From: Michael Schurter Date: Tue, 17 Jan 2017 12:51:19 -0800 Subject: [PATCH] Try to get test passing in Travis --- client/driver/exec_test.go | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/client/driver/exec_test.go b/client/driver/exec_test.go index e5d8b24f3..279480435 100644 --- a/client/driver/exec_test.go +++ b/client/driver/exec_test.go @@ -145,12 +145,20 @@ func TestExecDriver_KillUserPid_OnPluginReconnectFailure(t *testing.T) { handle2.Kill() t.Fatalf("expected handle2 to be nil") } + // Test if the userpid is still present - userProc, err := os.FindProcess(id.UserPid) + userProc, _ := os.FindProcess(id.UserPid) - err = userProc.Signal(syscall.Signal(0)) + for retry := 3; retry > 0; retry-- { + if err = userProc.Signal(syscall.Signal(0)); err != nil { + // Process is gone as expected; exit + return + } - if err == nil { + // Killing processes is async; wait and check again + time.Sleep(time.Second) + } + if err = userProc.Signal(syscall.Signal(0)); err == nil { t.Fatalf("expected user process to die") } }