Context("with multiple workers", func() { var ( workerA *fakes.FakeWorker workerB *fakes.FakeWorker workerC *fakes.FakeWorker fakeContainer *fakes.FakeContainer ) BeforeEach(func() { workerA = new(fakes.FakeWorker) workerB = new(fakes.FakeWorker) workerC = new(fakes.FakeWorker) workerA.ActiveContainersReturns(3) workerB.ActiveContainersReturns(2) workerA.SatisfyingReturns(workerA, nil) workerB.SatisfyingReturns(workerB, nil) workerC.SatisfyingReturns(nil, errors.New("nope")) fakeContainer = new(fakes.FakeContainer) workerA.CreateContainerReturns(fakeContainer, nil) workerB.CreateContainerReturns(fakeContainer, nil) workerC.CreateContainerReturns(fakeContainer, nil) fakeProvider.WorkersReturns([]Worker{workerA, workerB, workerC}, nil) }) It("succeeds", func() {