• 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.cx.v3;
18 
19 import static com.google.cloud.dialogflow.cx.v3.TransitionRouteGroupsClient.ListLocationsPagedResponse;
20 import static com.google.cloud.dialogflow.cx.v3.TransitionRouteGroupsClient.ListTransitionRouteGroupsPagedResponse;
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 io.grpc.StatusRuntimeException;
39 import java.io.IOException;
40 import java.util.ArrayList;
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 TransitionRouteGroupsClientTest {
55   private static MockLocations mockLocations;
56   private static MockServiceHelper mockServiceHelper;
57   private static MockTransitionRouteGroups mockTransitionRouteGroups;
58   private LocalChannelProvider channelProvider;
59   private TransitionRouteGroupsClient client;
60 
61   @BeforeClass
startStaticServer()62   public static void startStaticServer() {
63     mockTransitionRouteGroups = new MockTransitionRouteGroups();
64     mockLocations = new MockLocations();
65     mockServiceHelper =
66         new MockServiceHelper(
67             UUID.randomUUID().toString(),
68             Arrays.<MockGrpcService>asList(mockTransitionRouteGroups, 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     TransitionRouteGroupsSettings settings =
82         TransitionRouteGroupsSettings.newBuilder()
83             .setTransportChannelProvider(channelProvider)
84             .setCredentialsProvider(NoCredentialsProvider.create())
85             .build();
86     client = TransitionRouteGroupsClient.create(settings);
87   }
88 
89   @After
tearDown()90   public void tearDown() throws Exception {
91     client.close();
92   }
93 
94   @Test
listTransitionRouteGroupsTest()95   public void listTransitionRouteGroupsTest() throws Exception {
96     TransitionRouteGroup responsesElement = TransitionRouteGroup.newBuilder().build();
97     ListTransitionRouteGroupsResponse expectedResponse =
98         ListTransitionRouteGroupsResponse.newBuilder()
99             .setNextPageToken("")
100             .addAllTransitionRouteGroups(Arrays.asList(responsesElement))
101             .build();
102     mockTransitionRouteGroups.addResponse(expectedResponse);
103 
104     FlowName parent = FlowName.of("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]");
105 
106     ListTransitionRouteGroupsPagedResponse pagedListResponse =
107         client.listTransitionRouteGroups(parent);
108 
109     List<TransitionRouteGroup> resources = Lists.newArrayList(pagedListResponse.iterateAll());
110 
111     Assert.assertEquals(1, resources.size());
112     Assert.assertEquals(expectedResponse.getTransitionRouteGroupsList().get(0), resources.get(0));
113 
114     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
115     Assert.assertEquals(1, actualRequests.size());
116     ListTransitionRouteGroupsRequest actualRequest =
117         ((ListTransitionRouteGroupsRequest) actualRequests.get(0));
118 
119     Assert.assertEquals(parent.toString(), actualRequest.getParent());
120     Assert.assertTrue(
121         channelProvider.isHeaderSent(
122             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
123             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
124   }
125 
126   @Test
listTransitionRouteGroupsExceptionTest()127   public void listTransitionRouteGroupsExceptionTest() throws Exception {
128     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
129     mockTransitionRouteGroups.addException(exception);
130 
131     try {
132       FlowName parent = FlowName.of("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]");
133       client.listTransitionRouteGroups(parent);
134       Assert.fail("No exception raised");
135     } catch (InvalidArgumentException e) {
136       // Expected exception.
137     }
138   }
139 
140   @Test
listTransitionRouteGroupsTest2()141   public void listTransitionRouteGroupsTest2() throws Exception {
142     TransitionRouteGroup responsesElement = TransitionRouteGroup.newBuilder().build();
143     ListTransitionRouteGroupsResponse expectedResponse =
144         ListTransitionRouteGroupsResponse.newBuilder()
145             .setNextPageToken("")
146             .addAllTransitionRouteGroups(Arrays.asList(responsesElement))
147             .build();
148     mockTransitionRouteGroups.addResponse(expectedResponse);
149 
150     String parent = "parent-995424086";
151 
152     ListTransitionRouteGroupsPagedResponse pagedListResponse =
153         client.listTransitionRouteGroups(parent);
154 
155     List<TransitionRouteGroup> resources = Lists.newArrayList(pagedListResponse.iterateAll());
156 
157     Assert.assertEquals(1, resources.size());
158     Assert.assertEquals(expectedResponse.getTransitionRouteGroupsList().get(0), resources.get(0));
159 
160     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
161     Assert.assertEquals(1, actualRequests.size());
162     ListTransitionRouteGroupsRequest actualRequest =
163         ((ListTransitionRouteGroupsRequest) actualRequests.get(0));
164 
165     Assert.assertEquals(parent, actualRequest.getParent());
166     Assert.assertTrue(
167         channelProvider.isHeaderSent(
168             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
169             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
170   }
171 
172   @Test
listTransitionRouteGroupsExceptionTest2()173   public void listTransitionRouteGroupsExceptionTest2() throws Exception {
174     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
175     mockTransitionRouteGroups.addException(exception);
176 
177     try {
178       String parent = "parent-995424086";
179       client.listTransitionRouteGroups(parent);
180       Assert.fail("No exception raised");
181     } catch (InvalidArgumentException e) {
182       // Expected exception.
183     }
184   }
185 
186   @Test
getTransitionRouteGroupTest()187   public void getTransitionRouteGroupTest() throws Exception {
188     TransitionRouteGroup expectedResponse =
189         TransitionRouteGroup.newBuilder()
190             .setName(
191                 TransitionRouteGroupName.of(
192                         "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]")
193                     .toString())
194             .setDisplayName("displayName1714148973")
195             .addAllTransitionRoutes(new ArrayList<TransitionRoute>())
196             .build();
197     mockTransitionRouteGroups.addResponse(expectedResponse);
198 
199     TransitionRouteGroupName name =
200         TransitionRouteGroupName.of(
201             "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]");
202 
203     TransitionRouteGroup actualResponse = client.getTransitionRouteGroup(name);
204     Assert.assertEquals(expectedResponse, actualResponse);
205 
206     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
207     Assert.assertEquals(1, actualRequests.size());
208     GetTransitionRouteGroupRequest actualRequest =
209         ((GetTransitionRouteGroupRequest) actualRequests.get(0));
210 
211     Assert.assertEquals(name.toString(), actualRequest.getName());
212     Assert.assertTrue(
213         channelProvider.isHeaderSent(
214             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
215             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
216   }
217 
218   @Test
getTransitionRouteGroupExceptionTest()219   public void getTransitionRouteGroupExceptionTest() throws Exception {
220     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
221     mockTransitionRouteGroups.addException(exception);
222 
223     try {
224       TransitionRouteGroupName name =
225           TransitionRouteGroupName.of(
226               "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]");
227       client.getTransitionRouteGroup(name);
228       Assert.fail("No exception raised");
229     } catch (InvalidArgumentException e) {
230       // Expected exception.
231     }
232   }
233 
234   @Test
getTransitionRouteGroupTest2()235   public void getTransitionRouteGroupTest2() throws Exception {
236     TransitionRouteGroup expectedResponse =
237         TransitionRouteGroup.newBuilder()
238             .setName(
239                 TransitionRouteGroupName.of(
240                         "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]")
241                     .toString())
242             .setDisplayName("displayName1714148973")
243             .addAllTransitionRoutes(new ArrayList<TransitionRoute>())
244             .build();
245     mockTransitionRouteGroups.addResponse(expectedResponse);
246 
247     String name = "name3373707";
248 
249     TransitionRouteGroup actualResponse = client.getTransitionRouteGroup(name);
250     Assert.assertEquals(expectedResponse, actualResponse);
251 
252     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
253     Assert.assertEquals(1, actualRequests.size());
254     GetTransitionRouteGroupRequest actualRequest =
255         ((GetTransitionRouteGroupRequest) actualRequests.get(0));
256 
257     Assert.assertEquals(name, actualRequest.getName());
258     Assert.assertTrue(
259         channelProvider.isHeaderSent(
260             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
261             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
262   }
263 
264   @Test
getTransitionRouteGroupExceptionTest2()265   public void getTransitionRouteGroupExceptionTest2() throws Exception {
266     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
267     mockTransitionRouteGroups.addException(exception);
268 
269     try {
270       String name = "name3373707";
271       client.getTransitionRouteGroup(name);
272       Assert.fail("No exception raised");
273     } catch (InvalidArgumentException e) {
274       // Expected exception.
275     }
276   }
277 
278   @Test
createTransitionRouteGroupTest()279   public void createTransitionRouteGroupTest() throws Exception {
280     TransitionRouteGroup expectedResponse =
281         TransitionRouteGroup.newBuilder()
282             .setName(
283                 TransitionRouteGroupName.of(
284                         "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]")
285                     .toString())
286             .setDisplayName("displayName1714148973")
287             .addAllTransitionRoutes(new ArrayList<TransitionRoute>())
288             .build();
289     mockTransitionRouteGroups.addResponse(expectedResponse);
290 
291     FlowName parent = FlowName.of("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]");
292     TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().build();
293 
294     TransitionRouteGroup actualResponse =
295         client.createTransitionRouteGroup(parent, transitionRouteGroup);
296     Assert.assertEquals(expectedResponse, actualResponse);
297 
298     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
299     Assert.assertEquals(1, actualRequests.size());
300     CreateTransitionRouteGroupRequest actualRequest =
301         ((CreateTransitionRouteGroupRequest) actualRequests.get(0));
302 
303     Assert.assertEquals(parent.toString(), actualRequest.getParent());
304     Assert.assertEquals(transitionRouteGroup, actualRequest.getTransitionRouteGroup());
305     Assert.assertTrue(
306         channelProvider.isHeaderSent(
307             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
308             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
309   }
310 
311   @Test
createTransitionRouteGroupExceptionTest()312   public void createTransitionRouteGroupExceptionTest() throws Exception {
313     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
314     mockTransitionRouteGroups.addException(exception);
315 
316     try {
317       FlowName parent = FlowName.of("[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]");
318       TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().build();
319       client.createTransitionRouteGroup(parent, transitionRouteGroup);
320       Assert.fail("No exception raised");
321     } catch (InvalidArgumentException e) {
322       // Expected exception.
323     }
324   }
325 
326   @Test
createTransitionRouteGroupTest2()327   public void createTransitionRouteGroupTest2() throws Exception {
328     TransitionRouteGroup expectedResponse =
329         TransitionRouteGroup.newBuilder()
330             .setName(
331                 TransitionRouteGroupName.of(
332                         "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]")
333                     .toString())
334             .setDisplayName("displayName1714148973")
335             .addAllTransitionRoutes(new ArrayList<TransitionRoute>())
336             .build();
337     mockTransitionRouteGroups.addResponse(expectedResponse);
338 
339     String parent = "parent-995424086";
340     TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().build();
341 
342     TransitionRouteGroup actualResponse =
343         client.createTransitionRouteGroup(parent, transitionRouteGroup);
344     Assert.assertEquals(expectedResponse, actualResponse);
345 
346     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
347     Assert.assertEquals(1, actualRequests.size());
348     CreateTransitionRouteGroupRequest actualRequest =
349         ((CreateTransitionRouteGroupRequest) actualRequests.get(0));
350 
351     Assert.assertEquals(parent, actualRequest.getParent());
352     Assert.assertEquals(transitionRouteGroup, actualRequest.getTransitionRouteGroup());
353     Assert.assertTrue(
354         channelProvider.isHeaderSent(
355             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
356             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
357   }
358 
359   @Test
createTransitionRouteGroupExceptionTest2()360   public void createTransitionRouteGroupExceptionTest2() throws Exception {
361     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
362     mockTransitionRouteGroups.addException(exception);
363 
364     try {
365       String parent = "parent-995424086";
366       TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().build();
367       client.createTransitionRouteGroup(parent, transitionRouteGroup);
368       Assert.fail("No exception raised");
369     } catch (InvalidArgumentException e) {
370       // Expected exception.
371     }
372   }
373 
374   @Test
updateTransitionRouteGroupTest()375   public void updateTransitionRouteGroupTest() throws Exception {
376     TransitionRouteGroup expectedResponse =
377         TransitionRouteGroup.newBuilder()
378             .setName(
379                 TransitionRouteGroupName.of(
380                         "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]")
381                     .toString())
382             .setDisplayName("displayName1714148973")
383             .addAllTransitionRoutes(new ArrayList<TransitionRoute>())
384             .build();
385     mockTransitionRouteGroups.addResponse(expectedResponse);
386 
387     TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().build();
388     FieldMask updateMask = FieldMask.newBuilder().build();
389 
390     TransitionRouteGroup actualResponse =
391         client.updateTransitionRouteGroup(transitionRouteGroup, updateMask);
392     Assert.assertEquals(expectedResponse, actualResponse);
393 
394     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
395     Assert.assertEquals(1, actualRequests.size());
396     UpdateTransitionRouteGroupRequest actualRequest =
397         ((UpdateTransitionRouteGroupRequest) actualRequests.get(0));
398 
399     Assert.assertEquals(transitionRouteGroup, actualRequest.getTransitionRouteGroup());
400     Assert.assertEquals(updateMask, actualRequest.getUpdateMask());
401     Assert.assertTrue(
402         channelProvider.isHeaderSent(
403             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
404             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
405   }
406 
407   @Test
updateTransitionRouteGroupExceptionTest()408   public void updateTransitionRouteGroupExceptionTest() throws Exception {
409     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
410     mockTransitionRouteGroups.addException(exception);
411 
412     try {
413       TransitionRouteGroup transitionRouteGroup = TransitionRouteGroup.newBuilder().build();
414       FieldMask updateMask = FieldMask.newBuilder().build();
415       client.updateTransitionRouteGroup(transitionRouteGroup, updateMask);
416       Assert.fail("No exception raised");
417     } catch (InvalidArgumentException e) {
418       // Expected exception.
419     }
420   }
421 
422   @Test
deleteTransitionRouteGroupTest()423   public void deleteTransitionRouteGroupTest() throws Exception {
424     Empty expectedResponse = Empty.newBuilder().build();
425     mockTransitionRouteGroups.addResponse(expectedResponse);
426 
427     TransitionRouteGroupName name =
428         TransitionRouteGroupName.of(
429             "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]");
430 
431     client.deleteTransitionRouteGroup(name);
432 
433     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
434     Assert.assertEquals(1, actualRequests.size());
435     DeleteTransitionRouteGroupRequest actualRequest =
436         ((DeleteTransitionRouteGroupRequest) actualRequests.get(0));
437 
438     Assert.assertEquals(name.toString(), actualRequest.getName());
439     Assert.assertTrue(
440         channelProvider.isHeaderSent(
441             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
442             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
443   }
444 
445   @Test
deleteTransitionRouteGroupExceptionTest()446   public void deleteTransitionRouteGroupExceptionTest() throws Exception {
447     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
448     mockTransitionRouteGroups.addException(exception);
449 
450     try {
451       TransitionRouteGroupName name =
452           TransitionRouteGroupName.of(
453               "[PROJECT]", "[LOCATION]", "[AGENT]", "[FLOW]", "[TRANSITION_ROUTE_GROUP]");
454       client.deleteTransitionRouteGroup(name);
455       Assert.fail("No exception raised");
456     } catch (InvalidArgumentException e) {
457       // Expected exception.
458     }
459   }
460 
461   @Test
deleteTransitionRouteGroupTest2()462   public void deleteTransitionRouteGroupTest2() throws Exception {
463     Empty expectedResponse = Empty.newBuilder().build();
464     mockTransitionRouteGroups.addResponse(expectedResponse);
465 
466     String name = "name3373707";
467 
468     client.deleteTransitionRouteGroup(name);
469 
470     List<AbstractMessage> actualRequests = mockTransitionRouteGroups.getRequests();
471     Assert.assertEquals(1, actualRequests.size());
472     DeleteTransitionRouteGroupRequest actualRequest =
473         ((DeleteTransitionRouteGroupRequest) actualRequests.get(0));
474 
475     Assert.assertEquals(name, actualRequest.getName());
476     Assert.assertTrue(
477         channelProvider.isHeaderSent(
478             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
479             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
480   }
481 
482   @Test
deleteTransitionRouteGroupExceptionTest2()483   public void deleteTransitionRouteGroupExceptionTest2() throws Exception {
484     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
485     mockTransitionRouteGroups.addException(exception);
486 
487     try {
488       String name = "name3373707";
489       client.deleteTransitionRouteGroup(name);
490       Assert.fail("No exception raised");
491     } catch (InvalidArgumentException e) {
492       // Expected exception.
493     }
494   }
495 
496   @Test
listLocationsTest()497   public void listLocationsTest() throws Exception {
498     Location responsesElement = Location.newBuilder().build();
499     ListLocationsResponse expectedResponse =
500         ListLocationsResponse.newBuilder()
501             .setNextPageToken("")
502             .addAllLocations(Arrays.asList(responsesElement))
503             .build();
504     mockLocations.addResponse(expectedResponse);
505 
506     ListLocationsRequest request =
507         ListLocationsRequest.newBuilder()
508             .setName("name3373707")
509             .setFilter("filter-1274492040")
510             .setPageSize(883849137)
511             .setPageToken("pageToken873572522")
512             .build();
513 
514     ListLocationsPagedResponse pagedListResponse = client.listLocations(request);
515 
516     List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll());
517 
518     Assert.assertEquals(1, resources.size());
519     Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0));
520 
521     List<AbstractMessage> actualRequests = mockLocations.getRequests();
522     Assert.assertEquals(1, actualRequests.size());
523     ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0));
524 
525     Assert.assertEquals(request.getName(), actualRequest.getName());
526     Assert.assertEquals(request.getFilter(), actualRequest.getFilter());
527     Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize());
528     Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken());
529     Assert.assertTrue(
530         channelProvider.isHeaderSent(
531             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
532             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
533   }
534 
535   @Test
listLocationsExceptionTest()536   public void listLocationsExceptionTest() throws Exception {
537     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
538     mockLocations.addException(exception);
539 
540     try {
541       ListLocationsRequest request =
542           ListLocationsRequest.newBuilder()
543               .setName("name3373707")
544               .setFilter("filter-1274492040")
545               .setPageSize(883849137)
546               .setPageToken("pageToken873572522")
547               .build();
548       client.listLocations(request);
549       Assert.fail("No exception raised");
550     } catch (InvalidArgumentException e) {
551       // Expected exception.
552     }
553   }
554 
555   @Test
getLocationTest()556   public void getLocationTest() throws Exception {
557     Location expectedResponse =
558         Location.newBuilder()
559             .setName("name3373707")
560             .setLocationId("locationId1541836720")
561             .setDisplayName("displayName1714148973")
562             .putAllLabels(new HashMap<String, String>())
563             .setMetadata(Any.newBuilder().build())
564             .build();
565     mockLocations.addResponse(expectedResponse);
566 
567     GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
568 
569     Location actualResponse = client.getLocation(request);
570     Assert.assertEquals(expectedResponse, actualResponse);
571 
572     List<AbstractMessage> actualRequests = mockLocations.getRequests();
573     Assert.assertEquals(1, actualRequests.size());
574     GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0));
575 
576     Assert.assertEquals(request.getName(), actualRequest.getName());
577     Assert.assertTrue(
578         channelProvider.isHeaderSent(
579             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
580             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
581   }
582 
583   @Test
getLocationExceptionTest()584   public void getLocationExceptionTest() throws Exception {
585     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
586     mockLocations.addException(exception);
587 
588     try {
589       GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
590       client.getLocation(request);
591       Assert.fail("No exception raised");
592     } catch (InvalidArgumentException e) {
593       // Expected exception.
594     }
595   }
596 }
597