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) }) /*