setupBackendsAndFakeGRPCLB sets up backendCount number of stub server backends and a fake grpclb server for tests which exercise balancer switch scenarios involving grpclb. The fake grpclb server always returns the first of the configured stub backends as backend addresses. So, the tests are free t
(t *testing.T)
| 75 | // |
| 76 | // Returns a cleanup function to be invoked by the caller. |
| 77 | func setupBackendsAndFakeGRPCLB(t *testing.T) ([]*stubserver.StubServer, *fakegrpclb.Server, func()) { |
| 78 | backends, backendsCleanup := startBackendsForBalancerSwitch(t) |
| 79 | |
| 80 | lbServer, err := fakegrpclb.NewServer(fakegrpclb.ServerParams{ |
| 81 | LoadBalancedServiceName: loadBalancedServiceName, |
| 82 | LoadBalancedServicePort: loadBalancedServicePort, |
| 83 | BackendAddresses: []string{backends[0].Address}, |
| 84 | }) |
| 85 | if err != nil { |
| 86 | t.Fatalf("failed to create fake grpclb server: %v", err) |
| 87 | } |
| 88 | go func() { |
| 89 | if err := lbServer.Serve(); err != nil { |
| 90 | t.Errorf("fake grpclb Serve() failed: %v", err) |
| 91 | } |
| 92 | }() |
| 93 | |
| 94 | return backends, lbServer, func() { |
| 95 | backendsCleanup() |
| 96 | lbServer.Stop() |
| 97 | } |
| 98 | } |
| 99 | |
| 100 | // startBackendsForBalancerSwitch spins up a bunch of stub server backends |
| 101 | // exposing the TestService. Returns a cleanup function to be invoked by the |
no test coverage detected