Eventually(drainDone).Should(BeClosed())
				Eventually(clientDone).Should(BeClosed())
			})
		})
	})

	Context("healthcheck with endpoint", func() {
		Context("when load balancer threshold is greater than start delay ", func() {
			var errChan chan error

			BeforeEach(func() {
				var err error
				logcounter := schema.NewLogCounter()

				errChan = make(chan error, 2)
				config.LoadBalancerHealthyThreshold = 2 * time.Second
				config.Port = 8347
				rtr, err = router.NewRouter(logger, config, p, mbusClient, registry, varz, &healthCheck, logcounter, errChan)
				Expect(err).ToNot(HaveOccurred())
				runRouterHealthcheck := func(r *router.Router) {
					signals := make(chan os.Signal)
					readyChan := make(chan struct{})
					go func() {
						r.Run(signals, readyChan)
					}()

					Eventually(func() int {
						return healthCheckWithEndpointReceives()
					}, time.Second).Should(Equal(http.StatusOK))
					select {
					case <-readyChan: