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.ConversationModelsClient.ListConversationModelEvaluationsPagedResponse; 20 import static com.google.cloud.dialogflow.v2.ConversationModelsClient.ListConversationModelsPagedResponse; 21 import static com.google.cloud.dialogflow.v2.ConversationModelsClient.ListLocationsPagedResponse; 22 23 import com.google.api.gax.core.NoCredentialsProvider; 24 import com.google.api.gax.grpc.GaxGrpcProperties; 25 import com.google.api.gax.grpc.testing.LocalChannelProvider; 26 import com.google.api.gax.grpc.testing.MockGrpcService; 27 import com.google.api.gax.grpc.testing.MockServiceHelper; 28 import com.google.api.gax.rpc.ApiClientHeaderProvider; 29 import com.google.api.gax.rpc.InvalidArgumentException; 30 import com.google.api.gax.rpc.StatusCode; 31 import com.google.cloud.location.GetLocationRequest; 32 import com.google.cloud.location.ListLocationsRequest; 33 import com.google.cloud.location.ListLocationsResponse; 34 import com.google.cloud.location.Location; 35 import com.google.common.collect.Lists; 36 import com.google.longrunning.Operation; 37 import com.google.protobuf.AbstractMessage; 38 import com.google.protobuf.Any; 39 import com.google.protobuf.Empty; 40 import com.google.protobuf.Timestamp; 41 import io.grpc.StatusRuntimeException; 42 import java.io.IOException; 43 import java.util.ArrayList; 44 import java.util.Arrays; 45 import java.util.HashMap; 46 import java.util.List; 47 import java.util.UUID; 48 import java.util.concurrent.ExecutionException; 49 import javax.annotation.Generated; 50 import org.junit.After; 51 import org.junit.AfterClass; 52 import org.junit.Assert; 53 import org.junit.Before; 54 import org.junit.BeforeClass; 55 import org.junit.Test; 56 57 @Generated("by gapic-generator-java") 58 public class ConversationModelsClientTest { 59 private static MockConversationModels mockConversationModels; 60 private static MockLocations mockLocations; 61 private static MockServiceHelper mockServiceHelper; 62 private LocalChannelProvider channelProvider; 63 private ConversationModelsClient client; 64 65 @BeforeClass startStaticServer()66 public static void startStaticServer() { 67 mockConversationModels = new MockConversationModels(); 68 mockLocations = new MockLocations(); 69 mockServiceHelper = 70 new MockServiceHelper( 71 UUID.randomUUID().toString(), 72 Arrays.<MockGrpcService>asList(mockConversationModels, mockLocations)); 73 mockServiceHelper.start(); 74 } 75 76 @AfterClass stopServer()77 public static void stopServer() { 78 mockServiceHelper.stop(); 79 } 80 81 @Before setUp()82 public void setUp() throws IOException { 83 mockServiceHelper.reset(); 84 channelProvider = mockServiceHelper.createChannelProvider(); 85 ConversationModelsSettings settings = 86 ConversationModelsSettings.newBuilder() 87 .setTransportChannelProvider(channelProvider) 88 .setCredentialsProvider(NoCredentialsProvider.create()) 89 .build(); 90 client = ConversationModelsClient.create(settings); 91 } 92 93 @After tearDown()94 public void tearDown() throws Exception { 95 client.close(); 96 } 97 98 @Test createConversationModelTest()99 public void createConversationModelTest() throws Exception { 100 ConversationModel expectedResponse = 101 ConversationModel.newBuilder() 102 .setName( 103 ConversationModelName.ofProjectLocationConversationModelName( 104 "[PROJECT]", "[LOCATION]", "[CONVERSATION_MODEL]") 105 .toString()) 106 .setDisplayName("displayName1714148973") 107 .setCreateTime(Timestamp.newBuilder().build()) 108 .addAllDatasets(new ArrayList<InputDataset>()) 109 .setLanguageCode("languageCode-2092349083") 110 .build(); 111 Operation resultOperation = 112 Operation.newBuilder() 113 .setName("createConversationModelTest") 114 .setDone(true) 115 .setResponse(Any.pack(expectedResponse)) 116 .build(); 117 mockConversationModels.addResponse(resultOperation); 118 119 String parent = "parent-995424086"; 120 ConversationModel conversationModel = ConversationModel.newBuilder().build(); 121 122 ConversationModel actualResponse = 123 client.createConversationModelAsync(parent, conversationModel).get(); 124 Assert.assertEquals(expectedResponse, actualResponse); 125 126 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 127 Assert.assertEquals(1, actualRequests.size()); 128 CreateConversationModelRequest actualRequest = 129 ((CreateConversationModelRequest) actualRequests.get(0)); 130 131 Assert.assertEquals(parent, actualRequest.getParent()); 132 Assert.assertEquals(conversationModel, actualRequest.getConversationModel()); 133 Assert.assertTrue( 134 channelProvider.isHeaderSent( 135 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 136 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 137 } 138 139 @Test createConversationModelExceptionTest()140 public void createConversationModelExceptionTest() throws Exception { 141 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 142 mockConversationModels.addException(exception); 143 144 try { 145 String parent = "parent-995424086"; 146 ConversationModel conversationModel = ConversationModel.newBuilder().build(); 147 client.createConversationModelAsync(parent, conversationModel).get(); 148 Assert.fail("No exception raised"); 149 } catch (ExecutionException e) { 150 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 151 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 152 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 153 } 154 } 155 156 @Test getConversationModelTest()157 public void getConversationModelTest() throws Exception { 158 ConversationModel expectedResponse = 159 ConversationModel.newBuilder() 160 .setName( 161 ConversationModelName.ofProjectConversationModelName( 162 "[PROJECT]", "[CONVERSATION_MODEL]") 163 .toString()) 164 .setDisplayName("displayName1714148973") 165 .setCreateTime(Timestamp.newBuilder().build()) 166 .addAllDatasets(new ArrayList<InputDataset>()) 167 .setLanguageCode("languageCode-2092349083") 168 .build(); 169 mockConversationModels.addResponse(expectedResponse); 170 171 String name = "name3373707"; 172 173 ConversationModel actualResponse = client.getConversationModel(name); 174 Assert.assertEquals(expectedResponse, actualResponse); 175 176 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 177 Assert.assertEquals(1, actualRequests.size()); 178 GetConversationModelRequest actualRequest = 179 ((GetConversationModelRequest) actualRequests.get(0)); 180 181 Assert.assertEquals(name, actualRequest.getName()); 182 Assert.assertTrue( 183 channelProvider.isHeaderSent( 184 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 185 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 186 } 187 188 @Test getConversationModelExceptionTest()189 public void getConversationModelExceptionTest() throws Exception { 190 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 191 mockConversationModels.addException(exception); 192 193 try { 194 String name = "name3373707"; 195 client.getConversationModel(name); 196 Assert.fail("No exception raised"); 197 } catch (InvalidArgumentException e) { 198 // Expected exception. 199 } 200 } 201 202 @Test listConversationModelsTest()203 public void listConversationModelsTest() throws Exception { 204 ConversationModel responsesElement = ConversationModel.newBuilder().build(); 205 ListConversationModelsResponse expectedResponse = 206 ListConversationModelsResponse.newBuilder() 207 .setNextPageToken("") 208 .addAllConversationModels(Arrays.asList(responsesElement)) 209 .build(); 210 mockConversationModels.addResponse(expectedResponse); 211 212 String parent = "parent-995424086"; 213 214 ListConversationModelsPagedResponse pagedListResponse = client.listConversationModels(parent); 215 216 List<ConversationModel> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 217 218 Assert.assertEquals(1, resources.size()); 219 Assert.assertEquals(expectedResponse.getConversationModelsList().get(0), resources.get(0)); 220 221 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 222 Assert.assertEquals(1, actualRequests.size()); 223 ListConversationModelsRequest actualRequest = 224 ((ListConversationModelsRequest) actualRequests.get(0)); 225 226 Assert.assertEquals(parent, actualRequest.getParent()); 227 Assert.assertTrue( 228 channelProvider.isHeaderSent( 229 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 230 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 231 } 232 233 @Test listConversationModelsExceptionTest()234 public void listConversationModelsExceptionTest() throws Exception { 235 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 236 mockConversationModels.addException(exception); 237 238 try { 239 String parent = "parent-995424086"; 240 client.listConversationModels(parent); 241 Assert.fail("No exception raised"); 242 } catch (InvalidArgumentException e) { 243 // Expected exception. 244 } 245 } 246 247 @Test deleteConversationModelTest()248 public void deleteConversationModelTest() throws Exception { 249 Empty expectedResponse = Empty.newBuilder().build(); 250 Operation resultOperation = 251 Operation.newBuilder() 252 .setName("deleteConversationModelTest") 253 .setDone(true) 254 .setResponse(Any.pack(expectedResponse)) 255 .build(); 256 mockConversationModels.addResponse(resultOperation); 257 258 String name = "name3373707"; 259 260 client.deleteConversationModelAsync(name).get(); 261 262 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 263 Assert.assertEquals(1, actualRequests.size()); 264 DeleteConversationModelRequest actualRequest = 265 ((DeleteConversationModelRequest) actualRequests.get(0)); 266 267 Assert.assertEquals(name, actualRequest.getName()); 268 Assert.assertTrue( 269 channelProvider.isHeaderSent( 270 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 271 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 272 } 273 274 @Test deleteConversationModelExceptionTest()275 public void deleteConversationModelExceptionTest() throws Exception { 276 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 277 mockConversationModels.addException(exception); 278 279 try { 280 String name = "name3373707"; 281 client.deleteConversationModelAsync(name).get(); 282 Assert.fail("No exception raised"); 283 } catch (ExecutionException e) { 284 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 285 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 286 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 287 } 288 } 289 290 @Test deployConversationModelTest()291 public void deployConversationModelTest() throws Exception { 292 Empty expectedResponse = Empty.newBuilder().build(); 293 Operation resultOperation = 294 Operation.newBuilder() 295 .setName("deployConversationModelTest") 296 .setDone(true) 297 .setResponse(Any.pack(expectedResponse)) 298 .build(); 299 mockConversationModels.addResponse(resultOperation); 300 301 DeployConversationModelRequest request = 302 DeployConversationModelRequest.newBuilder().setName("name3373707").build(); 303 304 client.deployConversationModelAsync(request).get(); 305 306 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 307 Assert.assertEquals(1, actualRequests.size()); 308 DeployConversationModelRequest actualRequest = 309 ((DeployConversationModelRequest) actualRequests.get(0)); 310 311 Assert.assertEquals(request.getName(), actualRequest.getName()); 312 Assert.assertTrue( 313 channelProvider.isHeaderSent( 314 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 315 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 316 } 317 318 @Test deployConversationModelExceptionTest()319 public void deployConversationModelExceptionTest() throws Exception { 320 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 321 mockConversationModels.addException(exception); 322 323 try { 324 DeployConversationModelRequest request = 325 DeployConversationModelRequest.newBuilder().setName("name3373707").build(); 326 client.deployConversationModelAsync(request).get(); 327 Assert.fail("No exception raised"); 328 } catch (ExecutionException e) { 329 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 330 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 331 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 332 } 333 } 334 335 @Test undeployConversationModelTest()336 public void undeployConversationModelTest() throws Exception { 337 Empty expectedResponse = Empty.newBuilder().build(); 338 Operation resultOperation = 339 Operation.newBuilder() 340 .setName("undeployConversationModelTest") 341 .setDone(true) 342 .setResponse(Any.pack(expectedResponse)) 343 .build(); 344 mockConversationModels.addResponse(resultOperation); 345 346 UndeployConversationModelRequest request = 347 UndeployConversationModelRequest.newBuilder().setName("name3373707").build(); 348 349 client.undeployConversationModelAsync(request).get(); 350 351 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 352 Assert.assertEquals(1, actualRequests.size()); 353 UndeployConversationModelRequest actualRequest = 354 ((UndeployConversationModelRequest) actualRequests.get(0)); 355 356 Assert.assertEquals(request.getName(), actualRequest.getName()); 357 Assert.assertTrue( 358 channelProvider.isHeaderSent( 359 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 360 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 361 } 362 363 @Test undeployConversationModelExceptionTest()364 public void undeployConversationModelExceptionTest() throws Exception { 365 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 366 mockConversationModels.addException(exception); 367 368 try { 369 UndeployConversationModelRequest request = 370 UndeployConversationModelRequest.newBuilder().setName("name3373707").build(); 371 client.undeployConversationModelAsync(request).get(); 372 Assert.fail("No exception raised"); 373 } catch (ExecutionException e) { 374 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 375 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 376 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 377 } 378 } 379 380 @Test getConversationModelEvaluationTest()381 public void getConversationModelEvaluationTest() throws Exception { 382 ConversationModelEvaluation expectedResponse = 383 ConversationModelEvaluation.newBuilder() 384 .setName( 385 ConversationModelEvaluationName.ofProjectConversationModelEvaluationName( 386 "[PROJECT]", "[CONVERSATION_MODEL]", "[EVALUATION]") 387 .toString()) 388 .setDisplayName("displayName1714148973") 389 .setEvaluationConfig(EvaluationConfig.newBuilder().build()) 390 .setCreateTime(Timestamp.newBuilder().build()) 391 .setRawHumanEvalTemplateCsv("rawHumanEvalTemplateCsv-247435189") 392 .build(); 393 mockConversationModels.addResponse(expectedResponse); 394 395 String name = "name3373707"; 396 397 ConversationModelEvaluation actualResponse = client.getConversationModelEvaluation(name); 398 Assert.assertEquals(expectedResponse, actualResponse); 399 400 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 401 Assert.assertEquals(1, actualRequests.size()); 402 GetConversationModelEvaluationRequest actualRequest = 403 ((GetConversationModelEvaluationRequest) actualRequests.get(0)); 404 405 Assert.assertEquals(name, actualRequest.getName()); 406 Assert.assertTrue( 407 channelProvider.isHeaderSent( 408 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 409 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 410 } 411 412 @Test getConversationModelEvaluationExceptionTest()413 public void getConversationModelEvaluationExceptionTest() throws Exception { 414 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 415 mockConversationModels.addException(exception); 416 417 try { 418 String name = "name3373707"; 419 client.getConversationModelEvaluation(name); 420 Assert.fail("No exception raised"); 421 } catch (InvalidArgumentException e) { 422 // Expected exception. 423 } 424 } 425 426 @Test listConversationModelEvaluationsTest()427 public void listConversationModelEvaluationsTest() throws Exception { 428 ConversationModelEvaluation responsesElement = ConversationModelEvaluation.newBuilder().build(); 429 ListConversationModelEvaluationsResponse expectedResponse = 430 ListConversationModelEvaluationsResponse.newBuilder() 431 .setNextPageToken("") 432 .addAllConversationModelEvaluations(Arrays.asList(responsesElement)) 433 .build(); 434 mockConversationModels.addResponse(expectedResponse); 435 436 String parent = "parent-995424086"; 437 438 ListConversationModelEvaluationsPagedResponse pagedListResponse = 439 client.listConversationModelEvaluations(parent); 440 441 List<ConversationModelEvaluation> resources = 442 Lists.newArrayList(pagedListResponse.iterateAll()); 443 444 Assert.assertEquals(1, resources.size()); 445 Assert.assertEquals( 446 expectedResponse.getConversationModelEvaluationsList().get(0), resources.get(0)); 447 448 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 449 Assert.assertEquals(1, actualRequests.size()); 450 ListConversationModelEvaluationsRequest actualRequest = 451 ((ListConversationModelEvaluationsRequest) actualRequests.get(0)); 452 453 Assert.assertEquals(parent, actualRequest.getParent()); 454 Assert.assertTrue( 455 channelProvider.isHeaderSent( 456 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 457 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 458 } 459 460 @Test listConversationModelEvaluationsExceptionTest()461 public void listConversationModelEvaluationsExceptionTest() throws Exception { 462 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 463 mockConversationModels.addException(exception); 464 465 try { 466 String parent = "parent-995424086"; 467 client.listConversationModelEvaluations(parent); 468 Assert.fail("No exception raised"); 469 } catch (InvalidArgumentException e) { 470 // Expected exception. 471 } 472 } 473 474 @Test createConversationModelEvaluationTest()475 public void createConversationModelEvaluationTest() throws Exception { 476 ConversationModelEvaluation expectedResponse = 477 ConversationModelEvaluation.newBuilder() 478 .setName( 479 ConversationModelEvaluationName.ofProjectConversationModelEvaluationName( 480 "[PROJECT]", "[CONVERSATION_MODEL]", "[EVALUATION]") 481 .toString()) 482 .setDisplayName("displayName1714148973") 483 .setEvaluationConfig(EvaluationConfig.newBuilder().build()) 484 .setCreateTime(Timestamp.newBuilder().build()) 485 .setRawHumanEvalTemplateCsv("rawHumanEvalTemplateCsv-247435189") 486 .build(); 487 Operation resultOperation = 488 Operation.newBuilder() 489 .setName("createConversationModelEvaluationTest") 490 .setDone(true) 491 .setResponse(Any.pack(expectedResponse)) 492 .build(); 493 mockConversationModels.addResponse(resultOperation); 494 495 ConversationModelName parent = 496 ConversationModelName.ofProjectLocationConversationModelName( 497 "[PROJECT]", "[LOCATION]", "[CONVERSATION_MODEL]"); 498 ConversationModelEvaluation conversationModelEvaluation = 499 ConversationModelEvaluation.newBuilder().build(); 500 501 ConversationModelEvaluation actualResponse = 502 client.createConversationModelEvaluationAsync(parent, conversationModelEvaluation).get(); 503 Assert.assertEquals(expectedResponse, actualResponse); 504 505 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 506 Assert.assertEquals(1, actualRequests.size()); 507 CreateConversationModelEvaluationRequest actualRequest = 508 ((CreateConversationModelEvaluationRequest) actualRequests.get(0)); 509 510 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 511 Assert.assertEquals( 512 conversationModelEvaluation, actualRequest.getConversationModelEvaluation()); 513 Assert.assertTrue( 514 channelProvider.isHeaderSent( 515 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 516 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 517 } 518 519 @Test createConversationModelEvaluationExceptionTest()520 public void createConversationModelEvaluationExceptionTest() throws Exception { 521 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 522 mockConversationModels.addException(exception); 523 524 try { 525 ConversationModelName parent = 526 ConversationModelName.ofProjectLocationConversationModelName( 527 "[PROJECT]", "[LOCATION]", "[CONVERSATION_MODEL]"); 528 ConversationModelEvaluation conversationModelEvaluation = 529 ConversationModelEvaluation.newBuilder().build(); 530 client.createConversationModelEvaluationAsync(parent, conversationModelEvaluation).get(); 531 Assert.fail("No exception raised"); 532 } catch (ExecutionException e) { 533 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 534 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 535 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 536 } 537 } 538 539 @Test createConversationModelEvaluationTest2()540 public void createConversationModelEvaluationTest2() throws Exception { 541 ConversationModelEvaluation expectedResponse = 542 ConversationModelEvaluation.newBuilder() 543 .setName( 544 ConversationModelEvaluationName.ofProjectConversationModelEvaluationName( 545 "[PROJECT]", "[CONVERSATION_MODEL]", "[EVALUATION]") 546 .toString()) 547 .setDisplayName("displayName1714148973") 548 .setEvaluationConfig(EvaluationConfig.newBuilder().build()) 549 .setCreateTime(Timestamp.newBuilder().build()) 550 .setRawHumanEvalTemplateCsv("rawHumanEvalTemplateCsv-247435189") 551 .build(); 552 Operation resultOperation = 553 Operation.newBuilder() 554 .setName("createConversationModelEvaluationTest") 555 .setDone(true) 556 .setResponse(Any.pack(expectedResponse)) 557 .build(); 558 mockConversationModels.addResponse(resultOperation); 559 560 String parent = "parent-995424086"; 561 ConversationModelEvaluation conversationModelEvaluation = 562 ConversationModelEvaluation.newBuilder().build(); 563 564 ConversationModelEvaluation actualResponse = 565 client.createConversationModelEvaluationAsync(parent, conversationModelEvaluation).get(); 566 Assert.assertEquals(expectedResponse, actualResponse); 567 568 List<AbstractMessage> actualRequests = mockConversationModels.getRequests(); 569 Assert.assertEquals(1, actualRequests.size()); 570 CreateConversationModelEvaluationRequest actualRequest = 571 ((CreateConversationModelEvaluationRequest) actualRequests.get(0)); 572 573 Assert.assertEquals(parent, actualRequest.getParent()); 574 Assert.assertEquals( 575 conversationModelEvaluation, actualRequest.getConversationModelEvaluation()); 576 Assert.assertTrue( 577 channelProvider.isHeaderSent( 578 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 579 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 580 } 581 582 @Test createConversationModelEvaluationExceptionTest2()583 public void createConversationModelEvaluationExceptionTest2() throws Exception { 584 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 585 mockConversationModels.addException(exception); 586 587 try { 588 String parent = "parent-995424086"; 589 ConversationModelEvaluation conversationModelEvaluation = 590 ConversationModelEvaluation.newBuilder().build(); 591 client.createConversationModelEvaluationAsync(parent, conversationModelEvaluation).get(); 592 Assert.fail("No exception raised"); 593 } catch (ExecutionException e) { 594 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 595 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 596 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 597 } 598 } 599 600 @Test listLocationsTest()601 public void listLocationsTest() throws Exception { 602 Location responsesElement = Location.newBuilder().build(); 603 ListLocationsResponse expectedResponse = 604 ListLocationsResponse.newBuilder() 605 .setNextPageToken("") 606 .addAllLocations(Arrays.asList(responsesElement)) 607 .build(); 608 mockLocations.addResponse(expectedResponse); 609 610 ListLocationsRequest request = 611 ListLocationsRequest.newBuilder() 612 .setName("name3373707") 613 .setFilter("filter-1274492040") 614 .setPageSize(883849137) 615 .setPageToken("pageToken873572522") 616 .build(); 617 618 ListLocationsPagedResponse pagedListResponse = client.listLocations(request); 619 620 List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 621 622 Assert.assertEquals(1, resources.size()); 623 Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0)); 624 625 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 626 Assert.assertEquals(1, actualRequests.size()); 627 ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0)); 628 629 Assert.assertEquals(request.getName(), actualRequest.getName()); 630 Assert.assertEquals(request.getFilter(), actualRequest.getFilter()); 631 Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); 632 Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); 633 Assert.assertTrue( 634 channelProvider.isHeaderSent( 635 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 636 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 637 } 638 639 @Test listLocationsExceptionTest()640 public void listLocationsExceptionTest() throws Exception { 641 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 642 mockLocations.addException(exception); 643 644 try { 645 ListLocationsRequest request = 646 ListLocationsRequest.newBuilder() 647 .setName("name3373707") 648 .setFilter("filter-1274492040") 649 .setPageSize(883849137) 650 .setPageToken("pageToken873572522") 651 .build(); 652 client.listLocations(request); 653 Assert.fail("No exception raised"); 654 } catch (InvalidArgumentException e) { 655 // Expected exception. 656 } 657 } 658 659 @Test getLocationTest()660 public void getLocationTest() throws Exception { 661 Location expectedResponse = 662 Location.newBuilder() 663 .setName("name3373707") 664 .setLocationId("locationId1541836720") 665 .setDisplayName("displayName1714148973") 666 .putAllLabels(new HashMap<String, String>()) 667 .setMetadata(Any.newBuilder().build()) 668 .build(); 669 mockLocations.addResponse(expectedResponse); 670 671 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 672 673 Location actualResponse = client.getLocation(request); 674 Assert.assertEquals(expectedResponse, actualResponse); 675 676 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 677 Assert.assertEquals(1, actualRequests.size()); 678 GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0)); 679 680 Assert.assertEquals(request.getName(), actualRequest.getName()); 681 Assert.assertTrue( 682 channelProvider.isHeaderSent( 683 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 684 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 685 } 686 687 @Test getLocationExceptionTest()688 public void getLocationExceptionTest() throws Exception { 689 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 690 mockLocations.addException(exception); 691 692 try { 693 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 694 client.getLocation(request); 695 Assert.fail("No exception raised"); 696 } catch (InvalidArgumentException e) { 697 // Expected exception. 698 } 699 } 700 } 701