code: func (s *Server) CloseClientConnections() {
  	s.mu.Lock()
  	nconn := len(s.conns)
  	ch := make(chan struct{}, nconn)
  	for c := range s.conns {
  		go s.closeConnChan(c, ch)
  	}
  	s.mu.Unlock()
  
  	// Wait for outstanding closes to finish.
  	//
  	// Out of paranoia for making a late change in Go 1.6, we
  	// bound how long this can wait, since golang.org/issue/14291
  	// isn't fully understood yet. At least this should only be used
  	// in tests.
  	timer := time.NewTimer(5 * time.Second)
  	defer timer.Stop()
  	for i := 0; i < nconn; i++ {
  		select {
  		case <-ch:
  		case <-timer.C:
  			// Too slow. Give up.
  			return
  		}
  	}
  }
docs: // CloseClientConnections closes any open HTTP connections to the test Server.