apiServer.Stop() Ω(fakeBackend.StopCallCount()).Should(Equal(1)) }) Context("when a Create request is in-flight", func() { var creating chan struct{} var finishCreating chan struct{} BeforeEach(func() { creating = make(chan struct{}) finishCreating = make(chan struct{}) fakeBackend.CreateStub = func(garden.ContainerSpec) (garden.Container, error) { close(creating) <-finishCreating return new(fakes.FakeContainer), nil } }) It("waits for it to complete and stops accepting requests", func() { created := make(chan garden.Container, 1) go func() { defer GinkgoRecover() container, err := apiClient.Create(garden.ContainerSpec{}) Ω(err).ShouldNot(HaveOccurred()) created <- container }()