@@ -120,49 +120,53 @@ func TestEmptyRequest(t *testing.T) {
120120}
121121
122122func TestResolver (t * testing.T ) {
123- grpcServer := grpc .NewServer ()
124- listener := newLocalListener ()
125- monitoring .RegisterMetricServiceServer (grpcServer , & metricServiceServer {nil })
126- go grpcServer .Serve (listener )
127- defer grpcServer .Stop ()
128-
129- logBuffer := & bytes.Buffer {}
130- defer func () {
131- if logBuffer .Len () > 0 {
132- t .Log (logBuffer .String ())
133- }
134- }()
135- logger := log .NewLogfmtLogger (logBuffer )
123+ addressesToTest := []string {"stackdriver.invalid" , "2001:db8::" }
124+ for _ , address := range addressesToTest {
125+ grpcServer := grpc .NewServer ()
126+ listener := newLocalListener ()
127+ monitoring .RegisterMetricServiceServer (grpcServer , & metricServiceServer {nil })
128+ go grpcServer .Serve (listener )
129+ defer grpcServer .Stop ()
130+
131+ logBuffer := & bytes.Buffer {}
132+ defer func () {
133+ if logBuffer .Len () > 0 {
134+ t .Log (logBuffer .String ())
135+ }
136+ }()
137+ logger := log .NewLogfmtLogger (logBuffer )
136138
137- // Without ?auth=false, the test fails with context deadline exceeded.
138- serverURL , err := url .Parse ("http://stackdriver.invalid ?auth=false" )
139- if err != nil {
140- t .Fatal (err )
141- }
139+ // Without ?auth=false, the test fails with context deadline exceeded.
140+ serverURL , err := url .Parse ("http://" + address + " ?auth=false" )
141+ if err != nil {
142+ t .Fatal (err )
143+ }
142144
143- res , _ := manual .GenerateAndRegisterManualResolver ()
144- res .InitialAddrs ([]resolver.Address {
145- {Addr : listener .Addr ().String ()},
146- })
145+ res , _ := manual .GenerateAndRegisterManualResolver ()
146+ res .InitialAddrs ([]resolver.Address {
147+ {Addr : listener .Addr ().String ()},
148+ })
147149
148- c := NewClient (& ClientConfig {
149- URL : serverURL ,
150- Timeout : time .Second ,
151- Resolver : res ,
152- Logger : logger ,
153- })
150+ c := NewClient (& ClientConfig {
151+ URL : serverURL ,
152+ Timeout : time .Second ,
153+ Resolver : res ,
154+ Logger : logger ,
155+ })
154156
155- err = c .Store (& monitoring.CreateTimeSeriesRequest {
156- TimeSeries : []* monitoring.TimeSeries {
157- & monitoring.TimeSeries {},
158- },
159- })
160- if err != nil {
161- t .Fatal (err )
162- }
163- requestedTarget := c .conn .Target ()
164- if requestedTarget != c .resolver .Scheme ()+ ":///stackdriver.invalid" {
165- t .Errorf ("ERROR: Remote address is %s, want stackdriver.invalid." ,
166- requestedTarget )
157+ err = c .Store (& monitoring.CreateTimeSeriesRequest {
158+ TimeSeries : []* monitoring.TimeSeries {
159+ & monitoring.TimeSeries {},
160+ },
161+ })
162+ if err != nil {
163+ t .Fatal (err )
164+ }
165+ requestedTarget := c .conn .Target ()
166+ expectedTarget := c .resolver .Scheme ()+ ":///" + address
167+ if requestedTarget != expectedTarget {
168+ t .Errorf ("ERROR: Remote address is %s, want " + expectedTarget ,
169+ requestedTarget )
170+ }
167171 }
168172}
0 commit comments