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