From 4967f7459924031119cb060ad17c027dfcbc2cb3 Mon Sep 17 00:00:00 2001 From: Benjamin Elder Date: Thu, 3 Oct 2019 09:06:36 -0700 Subject: [PATCH] check that N job pods succceeded instead of exactly N pods existing and succeeding --- test/e2e/apps/job.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/test/e2e/apps/job.go b/test/e2e/apps/job.go index 203dbe2d71c..ead1669792f 100644 --- a/test/e2e/apps/job.go +++ b/test/e2e/apps/job.go @@ -38,7 +38,7 @@ var _ = SIGDescribe("Job", func() { completions := int32(4) backoffLimit := int32(6) // default value - // Simplest case: all pods succeed promptly + // Simplest case: N pods succeed ginkgo.It("should run a job to completion when tasks succeed", func() { ginkgo.By("Creating a job") job := jobutil.NewTestJob("succeed", "all-succeed", v1.RestartPolicyNever, parallelism, completions, nil, backoffLimit) @@ -52,10 +52,13 @@ var _ = SIGDescribe("Job", func() { ginkgo.By("Ensuring pods for job exist") pods, err := jobutil.GetJobPods(f.ClientSet, f.Namespace.Name, job.Name) framework.ExpectNoError(err, "failed to get pod list for job in namespace: %s", f.Namespace.Name) - framework.ExpectEqual(len(pods.Items), int(completions), "failed to ensure sufficient pod for job: got %d, want %d", len(pods.Items), completions) + successes := int32(0) for _, pod := range pods.Items { - framework.ExpectEqual(pod.Status.Phase, v1.PodSucceeded, "failed to ensure pod status: pod %s status %s", pod.Name, pod.Status.Phase) + if pod.Status.Phase == v1.PodSucceeded { + successes++ + } } + framework.ExpectEqual(successes, completions, "epected %d successful job pods, but got %d", completions, successes) }) /*