code: func DiscoverPeers(n *Network, p *Peer, user, channelName string) func() []DiscoveredPeer {
  	return func() []DiscoveredPeer {
  		peers := commands.Peers{
  			UserCert: n.PeerUserCert(p, user),
  			UserKey:  n.PeerUserKey(p, user),
  			MSPID:    n.Organization(p.Organization).MSPID,
  			Server:   n.PeerAddress(p, ListenPort),
  			Channel:  channelName,
  		}
  		sess, err := n.Discover(peers)
  		Expect(err).NotTo(HaveOccurred())
  		Eventually(sess).Should(gexec.Exit(0))
  
  		var discovered []DiscoveredPeer
  		err = json.Unmarshal(sess.Out.Contents(), &discovered)
  		Expect(err).NotTo(HaveOccurred())
  		return discovered
  	}
  }
docs: // running discovery service command discover peers against peer using channel name and user as specified in the
  // function arguments. return a slice of the discovered peers