From 1ee20363e0bca9237f20b9d66e9ad40b7454b8d8 Mon Sep 17 00:00:00 2001 From: Maciej Szulik Date: Mon, 19 Oct 2015 12:46:33 +0200 Subject: [PATCH] An attempt to fix flake in TestControllerSyncJob (14500) --- pkg/controller/job/controller_test.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) 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)