diff --git a/pkg/controller/job/controller_test.go b/pkg/controller/job/controller_test.go index 25adf5ff858..536447dac15 100644 --- a/pkg/controller/job/controller_test.go +++ b/pkg/controller/job/controller_test.go @@ -166,7 +166,14 @@ func TestControllerSyncJob(t *testing.T) { manager := NewJobController(client, controller.NoResyncPeriodFunc) fakePodControl := controller.FakePodControl{Err: tc.podControllerError} manager.podControl = &fakePodControl - manager.podStoreSynced = alwaysReady + var job *extensions.Job + manager.podStoreSynced = func() bool { + selector, _ := extensions.PodSelectorAsSelector(job.Spec.Selector) + podList, _ := manager.podStore.Pods(job.Namespace).List(selector) + active := len(controller.FilterActivePods(podList.Items)) + succeeded, failed := getStatus(podList.Items) + return active == tc.activePods && succeeded == tc.succeededPods && failed == tc.failedPods + } var actual *extensions.Job manager.updateHandler = func(job *extensions.Job) error { actual = job @@ -174,7 +181,7 @@ func TestControllerSyncJob(t *testing.T) { } // job & pods setup - job := newJob(tc.parallelism, tc.completions) + job = newJob(tc.parallelism, tc.completions) manager.jobStore.Store.Add(job) for _, pod := range newPodList(tc.activePods, api.PodRunning, job) { manager.podStore.Store.Add(&pod)