• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2022 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.google.cloud.dialogflow.v2;
18 
19 import static com.google.cloud.dialogflow.v2.ContextsClient.ListContextsPagedResponse;
20 import static com.google.cloud.dialogflow.v2.ContextsClient.ListLocationsPagedResponse;
21 
22 import com.google.api.gax.core.NoCredentialsProvider;
23 import com.google.api.gax.grpc.GaxGrpcProperties;
24 import com.google.api.gax.grpc.testing.LocalChannelProvider;
25 import com.google.api.gax.grpc.testing.MockGrpcService;
26 import com.google.api.gax.grpc.testing.MockServiceHelper;
27 import com.google.api.gax.rpc.ApiClientHeaderProvider;
28 import com.google.api.gax.rpc.InvalidArgumentException;
29 import com.google.cloud.location.GetLocationRequest;
30 import com.google.cloud.location.ListLocationsRequest;
31 import com.google.cloud.location.ListLocationsResponse;
32 import com.google.cloud.location.Location;
33 import com.google.common.collect.Lists;
34 import com.google.protobuf.AbstractMessage;
35 import com.google.protobuf.Any;
36 import com.google.protobuf.Empty;
37 import com.google.protobuf.FieldMask;
38 import com.google.protobuf.Struct;
39 import io.grpc.StatusRuntimeException;
40 import java.io.IOException;
41 import java.util.Arrays;
42 import java.util.HashMap;
43 import java.util.List;
44 import java.util.UUID;
45 import javax.annotation.Generated;
46 import org.junit.After;
47 import org.junit.AfterClass;
48 import org.junit.Assert;
49 import org.junit.Before;
50 import org.junit.BeforeClass;
51 import org.junit.Test;
52 
53 @Generated("by gapic-generator-java")
54 public class ContextsClientTest {
55   private static MockContexts mockContexts;
56   private static MockLocations mockLocations;
57   private static MockServiceHelper mockServiceHelper;
58   private LocalChannelProvider channelProvider;
59   private ContextsClient client;
60 
61   @BeforeClass
startStaticServer()62   public static void startStaticServer() {
63     mockContexts = new MockContexts();
64     mockLocations = new MockLocations();
65     mockServiceHelper =
66         new MockServiceHelper(
67             UUID.randomUUID().toString(),
68             Arrays.<MockGrpcService>asList(mockContexts, mockLocations));
69     mockServiceHelper.start();
70   }
71 
72   @AfterClass
stopServer()73   public static void stopServer() {
74     mockServiceHelper.stop();
75   }
76 
77   @Before
setUp()78   public void setUp() throws IOException {
79     mockServiceHelper.reset();
80     channelProvider = mockServiceHelper.createChannelProvider();
81     ContextsSettings settings =
82         ContextsSettings.newBuilder()
83             .setTransportChannelProvider(channelProvider)
84             .setCredentialsProvider(NoCredentialsProvider.create())
85             .build();
86     client = ContextsClient.create(settings);
87   }
88 
89   @After
tearDown()90   public void tearDown() throws Exception {
91     client.close();
92   }
93 
94   @Test
listContextsTest()95   public void listContextsTest() throws Exception {
96     Context responsesElement = Context.newBuilder().build();
97     ListContextsResponse expectedResponse =
98         ListContextsResponse.newBuilder()
99             .setNextPageToken("")
100             .addAllContexts(Arrays.asList(responsesElement))
101             .build();
102     mockContexts.addResponse(expectedResponse);
103 
104     SessionName parent = SessionName.ofProjectSessionName("[PROJECT]", "[SESSION]");
105 
106     ListContextsPagedResponse pagedListResponse = client.listContexts(parent);
107 
108     List<Context> resources = Lists.newArrayList(pagedListResponse.iterateAll());
109 
110     Assert.assertEquals(1, resources.size());
111     Assert.assertEquals(expectedResponse.getContextsList().get(0), resources.get(0));
112 
113     List<AbstractMessage> actualRequests = mockContexts.getRequests();
114     Assert.assertEquals(1, actualRequests.size());
115     ListContextsRequest actualRequest = ((ListContextsRequest) actualRequests.get(0));
116 
117     Assert.assertEquals(parent.toString(), actualRequest.getParent());
118     Assert.assertTrue(
119         channelProvider.isHeaderSent(
120             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
121             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
122   }
123 
124   @Test
listContextsExceptionTest()125   public void listContextsExceptionTest() throws Exception {
126     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
127     mockContexts.addException(exception);
128 
129     try {
130       SessionName parent = SessionName.ofProjectSessionName("[PROJECT]", "[SESSION]");
131       client.listContexts(parent);
132       Assert.fail("No exception raised");
133     } catch (InvalidArgumentException e) {
134       // Expected exception.
135     }
136   }
137 
138   @Test
listContextsTest2()139   public void listContextsTest2() throws Exception {
140     Context responsesElement = Context.newBuilder().build();
141     ListContextsResponse expectedResponse =
142         ListContextsResponse.newBuilder()
143             .setNextPageToken("")
144             .addAllContexts(Arrays.asList(responsesElement))
145             .build();
146     mockContexts.addResponse(expectedResponse);
147 
148     String parent = "parent-995424086";
149 
150     ListContextsPagedResponse pagedListResponse = client.listContexts(parent);
151 
152     List<Context> resources = Lists.newArrayList(pagedListResponse.iterateAll());
153 
154     Assert.assertEquals(1, resources.size());
155     Assert.assertEquals(expectedResponse.getContextsList().get(0), resources.get(0));
156 
157     List<AbstractMessage> actualRequests = mockContexts.getRequests();
158     Assert.assertEquals(1, actualRequests.size());
159     ListContextsRequest actualRequest = ((ListContextsRequest) actualRequests.get(0));
160 
161     Assert.assertEquals(parent, actualRequest.getParent());
162     Assert.assertTrue(
163         channelProvider.isHeaderSent(
164             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
165             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
166   }
167 
168   @Test
listContextsExceptionTest2()169   public void listContextsExceptionTest2() throws Exception {
170     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
171     mockContexts.addException(exception);
172 
173     try {
174       String parent = "parent-995424086";
175       client.listContexts(parent);
176       Assert.fail("No exception raised");
177     } catch (InvalidArgumentException e) {
178       // Expected exception.
179     }
180   }
181 
182   @Test
getContextTest()183   public void getContextTest() throws Exception {
184     Context expectedResponse =
185         Context.newBuilder()
186             .setName(
187                 ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]")
188                     .toString())
189             .setLifespanCount(1178775510)
190             .setParameters(Struct.newBuilder().build())
191             .build();
192     mockContexts.addResponse(expectedResponse);
193 
194     ContextName name =
195         ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]");
196 
197     Context actualResponse = client.getContext(name);
198     Assert.assertEquals(expectedResponse, actualResponse);
199 
200     List<AbstractMessage> actualRequests = mockContexts.getRequests();
201     Assert.assertEquals(1, actualRequests.size());
202     GetContextRequest actualRequest = ((GetContextRequest) actualRequests.get(0));
203 
204     Assert.assertEquals(name.toString(), actualRequest.getName());
205     Assert.assertTrue(
206         channelProvider.isHeaderSent(
207             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
208             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
209   }
210 
211   @Test
getContextExceptionTest()212   public void getContextExceptionTest() throws Exception {
213     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
214     mockContexts.addException(exception);
215 
216     try {
217       ContextName name =
218           ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]");
219       client.getContext(name);
220       Assert.fail("No exception raised");
221     } catch (InvalidArgumentException e) {
222       // Expected exception.
223     }
224   }
225 
226   @Test
getContextTest2()227   public void getContextTest2() throws Exception {
228     Context expectedResponse =
229         Context.newBuilder()
230             .setName(
231                 ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]")
232                     .toString())
233             .setLifespanCount(1178775510)
234             .setParameters(Struct.newBuilder().build())
235             .build();
236     mockContexts.addResponse(expectedResponse);
237 
238     String name = "name3373707";
239 
240     Context actualResponse = client.getContext(name);
241     Assert.assertEquals(expectedResponse, actualResponse);
242 
243     List<AbstractMessage> actualRequests = mockContexts.getRequests();
244     Assert.assertEquals(1, actualRequests.size());
245     GetContextRequest actualRequest = ((GetContextRequest) actualRequests.get(0));
246 
247     Assert.assertEquals(name, actualRequest.getName());
248     Assert.assertTrue(
249         channelProvider.isHeaderSent(
250             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
251             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
252   }
253 
254   @Test
getContextExceptionTest2()255   public void getContextExceptionTest2() throws Exception {
256     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
257     mockContexts.addException(exception);
258 
259     try {
260       String name = "name3373707";
261       client.getContext(name);
262       Assert.fail("No exception raised");
263     } catch (InvalidArgumentException e) {
264       // Expected exception.
265     }
266   }
267 
268   @Test
createContextTest()269   public void createContextTest() throws Exception {
270     Context expectedResponse =
271         Context.newBuilder()
272             .setName(
273                 ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]")
274                     .toString())
275             .setLifespanCount(1178775510)
276             .setParameters(Struct.newBuilder().build())
277             .build();
278     mockContexts.addResponse(expectedResponse);
279 
280     SessionName parent = SessionName.ofProjectSessionName("[PROJECT]", "[SESSION]");
281     Context context = Context.newBuilder().build();
282 
283     Context actualResponse = client.createContext(parent, context);
284     Assert.assertEquals(expectedResponse, actualResponse);
285 
286     List<AbstractMessage> actualRequests = mockContexts.getRequests();
287     Assert.assertEquals(1, actualRequests.size());
288     CreateContextRequest actualRequest = ((CreateContextRequest) actualRequests.get(0));
289 
290     Assert.assertEquals(parent.toString(), actualRequest.getParent());
291     Assert.assertEquals(context, actualRequest.getContext());
292     Assert.assertTrue(
293         channelProvider.isHeaderSent(
294             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
295             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
296   }
297 
298   @Test
createContextExceptionTest()299   public void createContextExceptionTest() throws Exception {
300     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
301     mockContexts.addException(exception);
302 
303     try {
304       SessionName parent = SessionName.ofProjectSessionName("[PROJECT]", "[SESSION]");
305       Context context = Context.newBuilder().build();
306       client.createContext(parent, context);
307       Assert.fail("No exception raised");
308     } catch (InvalidArgumentException e) {
309       // Expected exception.
310     }
311   }
312 
313   @Test
createContextTest2()314   public void createContextTest2() throws Exception {
315     Context expectedResponse =
316         Context.newBuilder()
317             .setName(
318                 ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]")
319                     .toString())
320             .setLifespanCount(1178775510)
321             .setParameters(Struct.newBuilder().build())
322             .build();
323     mockContexts.addResponse(expectedResponse);
324 
325     String parent = "parent-995424086";
326     Context context = Context.newBuilder().build();
327 
328     Context actualResponse = client.createContext(parent, context);
329     Assert.assertEquals(expectedResponse, actualResponse);
330 
331     List<AbstractMessage> actualRequests = mockContexts.getRequests();
332     Assert.assertEquals(1, actualRequests.size());
333     CreateContextRequest actualRequest = ((CreateContextRequest) actualRequests.get(0));
334 
335     Assert.assertEquals(parent, actualRequest.getParent());
336     Assert.assertEquals(context, actualRequest.getContext());
337     Assert.assertTrue(
338         channelProvider.isHeaderSent(
339             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
340             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
341   }
342 
343   @Test
createContextExceptionTest2()344   public void createContextExceptionTest2() throws Exception {
345     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
346     mockContexts.addException(exception);
347 
348     try {
349       String parent = "parent-995424086";
350       Context context = Context.newBuilder().build();
351       client.createContext(parent, context);
352       Assert.fail("No exception raised");
353     } catch (InvalidArgumentException e) {
354       // Expected exception.
355     }
356   }
357 
358   @Test
updateContextTest()359   public void updateContextTest() throws Exception {
360     Context expectedResponse =
361         Context.newBuilder()
362             .setName(
363                 ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]")
364                     .toString())
365             .setLifespanCount(1178775510)
366             .setParameters(Struct.newBuilder().build())
367             .build();
368     mockContexts.addResponse(expectedResponse);
369 
370     Context context = Context.newBuilder().build();
371     FieldMask updateMask = FieldMask.newBuilder().build();
372 
373     Context actualResponse = client.updateContext(context, updateMask);
374     Assert.assertEquals(expectedResponse, actualResponse);
375 
376     List<AbstractMessage> actualRequests = mockContexts.getRequests();
377     Assert.assertEquals(1, actualRequests.size());
378     UpdateContextRequest actualRequest = ((UpdateContextRequest) actualRequests.get(0));
379 
380     Assert.assertEquals(context, actualRequest.getContext());
381     Assert.assertEquals(updateMask, actualRequest.getUpdateMask());
382     Assert.assertTrue(
383         channelProvider.isHeaderSent(
384             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
385             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
386   }
387 
388   @Test
updateContextExceptionTest()389   public void updateContextExceptionTest() throws Exception {
390     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
391     mockContexts.addException(exception);
392 
393     try {
394       Context context = Context.newBuilder().build();
395       FieldMask updateMask = FieldMask.newBuilder().build();
396       client.updateContext(context, updateMask);
397       Assert.fail("No exception raised");
398     } catch (InvalidArgumentException e) {
399       // Expected exception.
400     }
401   }
402 
403   @Test
deleteContextTest()404   public void deleteContextTest() throws Exception {
405     Empty expectedResponse = Empty.newBuilder().build();
406     mockContexts.addResponse(expectedResponse);
407 
408     ContextName name =
409         ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]");
410 
411     client.deleteContext(name);
412 
413     List<AbstractMessage> actualRequests = mockContexts.getRequests();
414     Assert.assertEquals(1, actualRequests.size());
415     DeleteContextRequest actualRequest = ((DeleteContextRequest) actualRequests.get(0));
416 
417     Assert.assertEquals(name.toString(), actualRequest.getName());
418     Assert.assertTrue(
419         channelProvider.isHeaderSent(
420             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
421             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
422   }
423 
424   @Test
deleteContextExceptionTest()425   public void deleteContextExceptionTest() throws Exception {
426     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
427     mockContexts.addException(exception);
428 
429     try {
430       ContextName name =
431           ContextName.ofProjectSessionContextName("[PROJECT]", "[SESSION]", "[CONTEXT]");
432       client.deleteContext(name);
433       Assert.fail("No exception raised");
434     } catch (InvalidArgumentException e) {
435       // Expected exception.
436     }
437   }
438 
439   @Test
deleteContextTest2()440   public void deleteContextTest2() throws Exception {
441     Empty expectedResponse = Empty.newBuilder().build();
442     mockContexts.addResponse(expectedResponse);
443 
444     String name = "name3373707";
445 
446     client.deleteContext(name);
447 
448     List<AbstractMessage> actualRequests = mockContexts.getRequests();
449     Assert.assertEquals(1, actualRequests.size());
450     DeleteContextRequest actualRequest = ((DeleteContextRequest) actualRequests.get(0));
451 
452     Assert.assertEquals(name, actualRequest.getName());
453     Assert.assertTrue(
454         channelProvider.isHeaderSent(
455             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
456             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
457   }
458 
459   @Test
deleteContextExceptionTest2()460   public void deleteContextExceptionTest2() throws Exception {
461     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
462     mockContexts.addException(exception);
463 
464     try {
465       String name = "name3373707";
466       client.deleteContext(name);
467       Assert.fail("No exception raised");
468     } catch (InvalidArgumentException e) {
469       // Expected exception.
470     }
471   }
472 
473   @Test
deleteAllContextsTest()474   public void deleteAllContextsTest() throws Exception {
475     Empty expectedResponse = Empty.newBuilder().build();
476     mockContexts.addResponse(expectedResponse);
477 
478     SessionName parent = SessionName.ofProjectSessionName("[PROJECT]", "[SESSION]");
479 
480     client.deleteAllContexts(parent);
481 
482     List<AbstractMessage> actualRequests = mockContexts.getRequests();
483     Assert.assertEquals(1, actualRequests.size());
484     DeleteAllContextsRequest actualRequest = ((DeleteAllContextsRequest) actualRequests.get(0));
485 
486     Assert.assertEquals(parent.toString(), actualRequest.getParent());
487     Assert.assertTrue(
488         channelProvider.isHeaderSent(
489             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
490             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
491   }
492 
493   @Test
deleteAllContextsExceptionTest()494   public void deleteAllContextsExceptionTest() throws Exception {
495     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
496     mockContexts.addException(exception);
497 
498     try {
499       SessionName parent = SessionName.ofProjectSessionName("[PROJECT]", "[SESSION]");
500       client.deleteAllContexts(parent);
501       Assert.fail("No exception raised");
502     } catch (InvalidArgumentException e) {
503       // Expected exception.
504     }
505   }
506 
507   @Test
deleteAllContextsTest2()508   public void deleteAllContextsTest2() throws Exception {
509     Empty expectedResponse = Empty.newBuilder().build();
510     mockContexts.addResponse(expectedResponse);
511 
512     String parent = "parent-995424086";
513 
514     client.deleteAllContexts(parent);
515 
516     List<AbstractMessage> actualRequests = mockContexts.getRequests();
517     Assert.assertEquals(1, actualRequests.size());
518     DeleteAllContextsRequest actualRequest = ((DeleteAllContextsRequest) actualRequests.get(0));
519 
520     Assert.assertEquals(parent, actualRequest.getParent());
521     Assert.assertTrue(
522         channelProvider.isHeaderSent(
523             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
524             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
525   }
526 
527   @Test
deleteAllContextsExceptionTest2()528   public void deleteAllContextsExceptionTest2() throws Exception {
529     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
530     mockContexts.addException(exception);
531 
532     try {
533       String parent = "parent-995424086";
534       client.deleteAllContexts(parent);
535       Assert.fail("No exception raised");
536     } catch (InvalidArgumentException e) {
537       // Expected exception.
538     }
539   }
540 
541   @Test
listLocationsTest()542   public void listLocationsTest() throws Exception {
543     Location responsesElement = Location.newBuilder().build();
544     ListLocationsResponse expectedResponse =
545         ListLocationsResponse.newBuilder()
546             .setNextPageToken("")
547             .addAllLocations(Arrays.asList(responsesElement))
548             .build();
549     mockLocations.addResponse(expectedResponse);
550 
551     ListLocationsRequest request =
552         ListLocationsRequest.newBuilder()
553             .setName("name3373707")
554             .setFilter("filter-1274492040")
555             .setPageSize(883849137)
556             .setPageToken("pageToken873572522")
557             .build();
558 
559     ListLocationsPagedResponse pagedListResponse = client.listLocations(request);
560 
561     List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll());
562 
563     Assert.assertEquals(1, resources.size());
564     Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0));
565 
566     List<AbstractMessage> actualRequests = mockLocations.getRequests();
567     Assert.assertEquals(1, actualRequests.size());
568     ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0));
569 
570     Assert.assertEquals(request.getName(), actualRequest.getName());
571     Assert.assertEquals(request.getFilter(), actualRequest.getFilter());
572     Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize());
573     Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken());
574     Assert.assertTrue(
575         channelProvider.isHeaderSent(
576             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
577             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
578   }
579 
580   @Test
listLocationsExceptionTest()581   public void listLocationsExceptionTest() throws Exception {
582     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
583     mockLocations.addException(exception);
584 
585     try {
586       ListLocationsRequest request =
587           ListLocationsRequest.newBuilder()
588               .setName("name3373707")
589               .setFilter("filter-1274492040")
590               .setPageSize(883849137)
591               .setPageToken("pageToken873572522")
592               .build();
593       client.listLocations(request);
594       Assert.fail("No exception raised");
595     } catch (InvalidArgumentException e) {
596       // Expected exception.
597     }
598   }
599 
600   @Test
getLocationTest()601   public void getLocationTest() throws Exception {
602     Location expectedResponse =
603         Location.newBuilder()
604             .setName("name3373707")
605             .setLocationId("locationId1541836720")
606             .setDisplayName("displayName1714148973")
607             .putAllLabels(new HashMap<String, String>())
608             .setMetadata(Any.newBuilder().build())
609             .build();
610     mockLocations.addResponse(expectedResponse);
611 
612     GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
613 
614     Location actualResponse = client.getLocation(request);
615     Assert.assertEquals(expectedResponse, actualResponse);
616 
617     List<AbstractMessage> actualRequests = mockLocations.getRequests();
618     Assert.assertEquals(1, actualRequests.size());
619     GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0));
620 
621     Assert.assertEquals(request.getName(), actualRequest.getName());
622     Assert.assertTrue(
623         channelProvider.isHeaderSent(
624             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
625             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
626   }
627 
628   @Test
getLocationExceptionTest()629   public void getLocationExceptionTest() throws Exception {
630     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
631     mockLocations.addException(exception);
632 
633     try {
634       GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
635       client.getLocation(request);
636       Assert.fail("No exception raised");
637     } catch (InvalidArgumentException e) {
638       // Expected exception.
639     }
640   }
641 }
642