clientFactory = func(_ *steno.Logger, _ string) (loggregatorclient.Client, error) { return nil, errors.New("boom") } }) It("does not include the client", func() { pool.Set(allServers, nil) Expect(pool.Clients()).To(BeEmpty()) Expect(loggertesthelper.TestLoggerSink.LogContents()).To(ContainSubstring("Invalid url")) }) }) Context("with Legacy Servers", func() { It("ignores them", func() { pool.Set(allServers, preferredServers) pool.SetLegacy(allLegacy, preferredLegacy) Expect(urls(pool.Clients())).To(ConsistOf(values(preferredServers))) }) Context("with non-overlapping servers", func() { It("returns a mix of legacy and non-legacy", func() { allLegacy["c"] = "udp://lchost:lcport" pool.Set(allServers, preferredServers) pool.SetLegacy(allLegacy, preferredLegacy) Expect(urls(pool.Clients())).To(ConsistOf(values(preferredServers))) }) }) })