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.aiplatform.v1; 18 19 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListLocationsPagedResponse; 20 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelEvaluationSlicesPagedResponse; 21 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelEvaluationsPagedResponse; 22 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelVersionsPagedResponse; 23 import static com.google.cloud.aiplatform.v1.ModelServiceClient.ListModelsPagedResponse; 24 25 import com.google.api.gax.core.NoCredentialsProvider; 26 import com.google.api.gax.grpc.GaxGrpcProperties; 27 import com.google.api.gax.grpc.testing.LocalChannelProvider; 28 import com.google.api.gax.grpc.testing.MockGrpcService; 29 import com.google.api.gax.grpc.testing.MockServiceHelper; 30 import com.google.api.gax.rpc.ApiClientHeaderProvider; 31 import com.google.api.gax.rpc.InvalidArgumentException; 32 import com.google.api.gax.rpc.StatusCode; 33 import com.google.cloud.location.GetLocationRequest; 34 import com.google.cloud.location.ListLocationsRequest; 35 import com.google.cloud.location.ListLocationsResponse; 36 import com.google.cloud.location.Location; 37 import com.google.common.collect.Lists; 38 import com.google.iam.v1.AuditConfig; 39 import com.google.iam.v1.Binding; 40 import com.google.iam.v1.GetIamPolicyRequest; 41 import com.google.iam.v1.GetPolicyOptions; 42 import com.google.iam.v1.Policy; 43 import com.google.iam.v1.SetIamPolicyRequest; 44 import com.google.iam.v1.TestIamPermissionsRequest; 45 import com.google.iam.v1.TestIamPermissionsResponse; 46 import com.google.longrunning.Operation; 47 import com.google.protobuf.AbstractMessage; 48 import com.google.protobuf.Any; 49 import com.google.protobuf.ByteString; 50 import com.google.protobuf.Empty; 51 import com.google.protobuf.FieldMask; 52 import com.google.protobuf.Timestamp; 53 import com.google.protobuf.Value; 54 import io.grpc.StatusRuntimeException; 55 import java.io.IOException; 56 import java.util.ArrayList; 57 import java.util.Arrays; 58 import java.util.HashMap; 59 import java.util.List; 60 import java.util.UUID; 61 import java.util.concurrent.ExecutionException; 62 import javax.annotation.Generated; 63 import org.junit.After; 64 import org.junit.AfterClass; 65 import org.junit.Assert; 66 import org.junit.Before; 67 import org.junit.BeforeClass; 68 import org.junit.Test; 69 70 @Generated("by gapic-generator-java") 71 public class ModelServiceClientTest { 72 private static MockIAMPolicy mockIAMPolicy; 73 private static MockLocations mockLocations; 74 private static MockModelService mockModelService; 75 private static MockServiceHelper mockServiceHelper; 76 private LocalChannelProvider channelProvider; 77 private ModelServiceClient client; 78 79 @BeforeClass startStaticServer()80 public static void startStaticServer() { 81 mockModelService = new MockModelService(); 82 mockLocations = new MockLocations(); 83 mockIAMPolicy = new MockIAMPolicy(); 84 mockServiceHelper = 85 new MockServiceHelper( 86 UUID.randomUUID().toString(), 87 Arrays.<MockGrpcService>asList(mockModelService, mockLocations, mockIAMPolicy)); 88 mockServiceHelper.start(); 89 } 90 91 @AfterClass stopServer()92 public static void stopServer() { 93 mockServiceHelper.stop(); 94 } 95 96 @Before setUp()97 public void setUp() throws IOException { 98 mockServiceHelper.reset(); 99 channelProvider = mockServiceHelper.createChannelProvider(); 100 ModelServiceSettings settings = 101 ModelServiceSettings.newBuilder() 102 .setTransportChannelProvider(channelProvider) 103 .setCredentialsProvider(NoCredentialsProvider.create()) 104 .build(); 105 client = ModelServiceClient.create(settings); 106 } 107 108 @After tearDown()109 public void tearDown() throws Exception { 110 client.close(); 111 } 112 113 @Test uploadModelTest()114 public void uploadModelTest() throws Exception { 115 UploadModelResponse expectedResponse = 116 UploadModelResponse.newBuilder() 117 .setModel(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 118 .setModelVersionId("modelVersionId-2006125846") 119 .build(); 120 Operation resultOperation = 121 Operation.newBuilder() 122 .setName("uploadModelTest") 123 .setDone(true) 124 .setResponse(Any.pack(expectedResponse)) 125 .build(); 126 mockModelService.addResponse(resultOperation); 127 128 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 129 Model model = Model.newBuilder().build(); 130 131 UploadModelResponse actualResponse = client.uploadModelAsync(parent, model).get(); 132 Assert.assertEquals(expectedResponse, actualResponse); 133 134 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 135 Assert.assertEquals(1, actualRequests.size()); 136 UploadModelRequest actualRequest = ((UploadModelRequest) actualRequests.get(0)); 137 138 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 139 Assert.assertEquals(model, actualRequest.getModel()); 140 Assert.assertTrue( 141 channelProvider.isHeaderSent( 142 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 143 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 144 } 145 146 @Test uploadModelExceptionTest()147 public void uploadModelExceptionTest() throws Exception { 148 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 149 mockModelService.addException(exception); 150 151 try { 152 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 153 Model model = Model.newBuilder().build(); 154 client.uploadModelAsync(parent, model).get(); 155 Assert.fail("No exception raised"); 156 } catch (ExecutionException e) { 157 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 158 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 159 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 160 } 161 } 162 163 @Test uploadModelTest2()164 public void uploadModelTest2() throws Exception { 165 UploadModelResponse expectedResponse = 166 UploadModelResponse.newBuilder() 167 .setModel(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 168 .setModelVersionId("modelVersionId-2006125846") 169 .build(); 170 Operation resultOperation = 171 Operation.newBuilder() 172 .setName("uploadModelTest") 173 .setDone(true) 174 .setResponse(Any.pack(expectedResponse)) 175 .build(); 176 mockModelService.addResponse(resultOperation); 177 178 String parent = "parent-995424086"; 179 Model model = Model.newBuilder().build(); 180 181 UploadModelResponse actualResponse = client.uploadModelAsync(parent, model).get(); 182 Assert.assertEquals(expectedResponse, actualResponse); 183 184 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 185 Assert.assertEquals(1, actualRequests.size()); 186 UploadModelRequest actualRequest = ((UploadModelRequest) actualRequests.get(0)); 187 188 Assert.assertEquals(parent, actualRequest.getParent()); 189 Assert.assertEquals(model, actualRequest.getModel()); 190 Assert.assertTrue( 191 channelProvider.isHeaderSent( 192 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 193 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 194 } 195 196 @Test uploadModelExceptionTest2()197 public void uploadModelExceptionTest2() throws Exception { 198 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 199 mockModelService.addException(exception); 200 201 try { 202 String parent = "parent-995424086"; 203 Model model = Model.newBuilder().build(); 204 client.uploadModelAsync(parent, model).get(); 205 Assert.fail("No exception raised"); 206 } catch (ExecutionException e) { 207 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 208 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 209 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 210 } 211 } 212 213 @Test getModelTest()214 public void getModelTest() throws Exception { 215 Model expectedResponse = 216 Model.newBuilder() 217 .setName(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 218 .setVersionId("versionId-1407102957") 219 .addAllVersionAliases(new ArrayList<String>()) 220 .setVersionCreateTime(Timestamp.newBuilder().build()) 221 .setVersionUpdateTime(Timestamp.newBuilder().build()) 222 .setDisplayName("displayName1714148973") 223 .setDescription("description-1724546052") 224 .setVersionDescription("versionDescription-1736173564") 225 .setPredictSchemata(PredictSchemata.newBuilder().build()) 226 .setMetadataSchemaUri("metadataSchemaUri781971868") 227 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 228 .addAllSupportedExportFormats(new ArrayList<Model.ExportFormat>()) 229 .setTrainingPipeline( 230 TrainingPipelineName.of("[PROJECT]", "[LOCATION]", "[TRAINING_PIPELINE]") 231 .toString()) 232 .setContainerSpec(ModelContainerSpec.newBuilder().build()) 233 .setArtifactUri("artifactUri-1130062278") 234 .addAllSupportedDeploymentResourcesTypes(new ArrayList<Model.DeploymentResourcesType>()) 235 .addAllSupportedInputStorageFormats(new ArrayList<String>()) 236 .addAllSupportedOutputStorageFormats(new ArrayList<String>()) 237 .setCreateTime(Timestamp.newBuilder().build()) 238 .setUpdateTime(Timestamp.newBuilder().build()) 239 .addAllDeployedModels(new ArrayList<DeployedModelRef>()) 240 .setExplanationSpec(ExplanationSpec.newBuilder().build()) 241 .setEtag("etag3123477") 242 .putAllLabels(new HashMap<String, String>()) 243 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 244 .setModelSourceInfo(ModelSourceInfo.newBuilder().build()) 245 .setOriginalModelInfo(Model.OriginalModelInfo.newBuilder().build()) 246 .setMetadataArtifact("metadataArtifact1018119713") 247 .build(); 248 mockModelService.addResponse(expectedResponse); 249 250 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 251 252 Model actualResponse = client.getModel(name); 253 Assert.assertEquals(expectedResponse, actualResponse); 254 255 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 256 Assert.assertEquals(1, actualRequests.size()); 257 GetModelRequest actualRequest = ((GetModelRequest) actualRequests.get(0)); 258 259 Assert.assertEquals(name.toString(), actualRequest.getName()); 260 Assert.assertTrue( 261 channelProvider.isHeaderSent( 262 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 263 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 264 } 265 266 @Test getModelExceptionTest()267 public void getModelExceptionTest() throws Exception { 268 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 269 mockModelService.addException(exception); 270 271 try { 272 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 273 client.getModel(name); 274 Assert.fail("No exception raised"); 275 } catch (InvalidArgumentException e) { 276 // Expected exception. 277 } 278 } 279 280 @Test getModelTest2()281 public void getModelTest2() throws Exception { 282 Model expectedResponse = 283 Model.newBuilder() 284 .setName(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 285 .setVersionId("versionId-1407102957") 286 .addAllVersionAliases(new ArrayList<String>()) 287 .setVersionCreateTime(Timestamp.newBuilder().build()) 288 .setVersionUpdateTime(Timestamp.newBuilder().build()) 289 .setDisplayName("displayName1714148973") 290 .setDescription("description-1724546052") 291 .setVersionDescription("versionDescription-1736173564") 292 .setPredictSchemata(PredictSchemata.newBuilder().build()) 293 .setMetadataSchemaUri("metadataSchemaUri781971868") 294 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 295 .addAllSupportedExportFormats(new ArrayList<Model.ExportFormat>()) 296 .setTrainingPipeline( 297 TrainingPipelineName.of("[PROJECT]", "[LOCATION]", "[TRAINING_PIPELINE]") 298 .toString()) 299 .setContainerSpec(ModelContainerSpec.newBuilder().build()) 300 .setArtifactUri("artifactUri-1130062278") 301 .addAllSupportedDeploymentResourcesTypes(new ArrayList<Model.DeploymentResourcesType>()) 302 .addAllSupportedInputStorageFormats(new ArrayList<String>()) 303 .addAllSupportedOutputStorageFormats(new ArrayList<String>()) 304 .setCreateTime(Timestamp.newBuilder().build()) 305 .setUpdateTime(Timestamp.newBuilder().build()) 306 .addAllDeployedModels(new ArrayList<DeployedModelRef>()) 307 .setExplanationSpec(ExplanationSpec.newBuilder().build()) 308 .setEtag("etag3123477") 309 .putAllLabels(new HashMap<String, String>()) 310 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 311 .setModelSourceInfo(ModelSourceInfo.newBuilder().build()) 312 .setOriginalModelInfo(Model.OriginalModelInfo.newBuilder().build()) 313 .setMetadataArtifact("metadataArtifact1018119713") 314 .build(); 315 mockModelService.addResponse(expectedResponse); 316 317 String name = "name3373707"; 318 319 Model actualResponse = client.getModel(name); 320 Assert.assertEquals(expectedResponse, actualResponse); 321 322 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 323 Assert.assertEquals(1, actualRequests.size()); 324 GetModelRequest actualRequest = ((GetModelRequest) actualRequests.get(0)); 325 326 Assert.assertEquals(name, actualRequest.getName()); 327 Assert.assertTrue( 328 channelProvider.isHeaderSent( 329 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 330 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 331 } 332 333 @Test getModelExceptionTest2()334 public void getModelExceptionTest2() throws Exception { 335 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 336 mockModelService.addException(exception); 337 338 try { 339 String name = "name3373707"; 340 client.getModel(name); 341 Assert.fail("No exception raised"); 342 } catch (InvalidArgumentException e) { 343 // Expected exception. 344 } 345 } 346 347 @Test listModelsTest()348 public void listModelsTest() throws Exception { 349 Model responsesElement = Model.newBuilder().build(); 350 ListModelsResponse expectedResponse = 351 ListModelsResponse.newBuilder() 352 .setNextPageToken("") 353 .addAllModels(Arrays.asList(responsesElement)) 354 .build(); 355 mockModelService.addResponse(expectedResponse); 356 357 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 358 359 ListModelsPagedResponse pagedListResponse = client.listModels(parent); 360 361 List<Model> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 362 363 Assert.assertEquals(1, resources.size()); 364 Assert.assertEquals(expectedResponse.getModelsList().get(0), resources.get(0)); 365 366 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 367 Assert.assertEquals(1, actualRequests.size()); 368 ListModelsRequest actualRequest = ((ListModelsRequest) actualRequests.get(0)); 369 370 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 371 Assert.assertTrue( 372 channelProvider.isHeaderSent( 373 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 374 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 375 } 376 377 @Test listModelsExceptionTest()378 public void listModelsExceptionTest() throws Exception { 379 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 380 mockModelService.addException(exception); 381 382 try { 383 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 384 client.listModels(parent); 385 Assert.fail("No exception raised"); 386 } catch (InvalidArgumentException e) { 387 // Expected exception. 388 } 389 } 390 391 @Test listModelsTest2()392 public void listModelsTest2() throws Exception { 393 Model responsesElement = Model.newBuilder().build(); 394 ListModelsResponse expectedResponse = 395 ListModelsResponse.newBuilder() 396 .setNextPageToken("") 397 .addAllModels(Arrays.asList(responsesElement)) 398 .build(); 399 mockModelService.addResponse(expectedResponse); 400 401 String parent = "parent-995424086"; 402 403 ListModelsPagedResponse pagedListResponse = client.listModels(parent); 404 405 List<Model> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 406 407 Assert.assertEquals(1, resources.size()); 408 Assert.assertEquals(expectedResponse.getModelsList().get(0), resources.get(0)); 409 410 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 411 Assert.assertEquals(1, actualRequests.size()); 412 ListModelsRequest actualRequest = ((ListModelsRequest) actualRequests.get(0)); 413 414 Assert.assertEquals(parent, actualRequest.getParent()); 415 Assert.assertTrue( 416 channelProvider.isHeaderSent( 417 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 418 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 419 } 420 421 @Test listModelsExceptionTest2()422 public void listModelsExceptionTest2() throws Exception { 423 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 424 mockModelService.addException(exception); 425 426 try { 427 String parent = "parent-995424086"; 428 client.listModels(parent); 429 Assert.fail("No exception raised"); 430 } catch (InvalidArgumentException e) { 431 // Expected exception. 432 } 433 } 434 435 @Test listModelVersionsTest()436 public void listModelVersionsTest() throws Exception { 437 Model responsesElement = Model.newBuilder().build(); 438 ListModelVersionsResponse expectedResponse = 439 ListModelVersionsResponse.newBuilder() 440 .setNextPageToken("") 441 .addAllModels(Arrays.asList(responsesElement)) 442 .build(); 443 mockModelService.addResponse(expectedResponse); 444 445 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 446 447 ListModelVersionsPagedResponse pagedListResponse = client.listModelVersions(name); 448 449 List<Model> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 450 451 Assert.assertEquals(1, resources.size()); 452 Assert.assertEquals(expectedResponse.getModelsList().get(0), resources.get(0)); 453 454 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 455 Assert.assertEquals(1, actualRequests.size()); 456 ListModelVersionsRequest actualRequest = ((ListModelVersionsRequest) actualRequests.get(0)); 457 458 Assert.assertEquals(name.toString(), actualRequest.getName()); 459 Assert.assertTrue( 460 channelProvider.isHeaderSent( 461 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 462 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 463 } 464 465 @Test listModelVersionsExceptionTest()466 public void listModelVersionsExceptionTest() throws Exception { 467 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 468 mockModelService.addException(exception); 469 470 try { 471 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 472 client.listModelVersions(name); 473 Assert.fail("No exception raised"); 474 } catch (InvalidArgumentException e) { 475 // Expected exception. 476 } 477 } 478 479 @Test listModelVersionsTest2()480 public void listModelVersionsTest2() throws Exception { 481 Model responsesElement = Model.newBuilder().build(); 482 ListModelVersionsResponse expectedResponse = 483 ListModelVersionsResponse.newBuilder() 484 .setNextPageToken("") 485 .addAllModels(Arrays.asList(responsesElement)) 486 .build(); 487 mockModelService.addResponse(expectedResponse); 488 489 String name = "name3373707"; 490 491 ListModelVersionsPagedResponse pagedListResponse = client.listModelVersions(name); 492 493 List<Model> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 494 495 Assert.assertEquals(1, resources.size()); 496 Assert.assertEquals(expectedResponse.getModelsList().get(0), resources.get(0)); 497 498 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 499 Assert.assertEquals(1, actualRequests.size()); 500 ListModelVersionsRequest actualRequest = ((ListModelVersionsRequest) actualRequests.get(0)); 501 502 Assert.assertEquals(name, actualRequest.getName()); 503 Assert.assertTrue( 504 channelProvider.isHeaderSent( 505 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 506 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 507 } 508 509 @Test listModelVersionsExceptionTest2()510 public void listModelVersionsExceptionTest2() throws Exception { 511 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 512 mockModelService.addException(exception); 513 514 try { 515 String name = "name3373707"; 516 client.listModelVersions(name); 517 Assert.fail("No exception raised"); 518 } catch (InvalidArgumentException e) { 519 // Expected exception. 520 } 521 } 522 523 @Test updateModelTest()524 public void updateModelTest() throws Exception { 525 Model expectedResponse = 526 Model.newBuilder() 527 .setName(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 528 .setVersionId("versionId-1407102957") 529 .addAllVersionAliases(new ArrayList<String>()) 530 .setVersionCreateTime(Timestamp.newBuilder().build()) 531 .setVersionUpdateTime(Timestamp.newBuilder().build()) 532 .setDisplayName("displayName1714148973") 533 .setDescription("description-1724546052") 534 .setVersionDescription("versionDescription-1736173564") 535 .setPredictSchemata(PredictSchemata.newBuilder().build()) 536 .setMetadataSchemaUri("metadataSchemaUri781971868") 537 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 538 .addAllSupportedExportFormats(new ArrayList<Model.ExportFormat>()) 539 .setTrainingPipeline( 540 TrainingPipelineName.of("[PROJECT]", "[LOCATION]", "[TRAINING_PIPELINE]") 541 .toString()) 542 .setContainerSpec(ModelContainerSpec.newBuilder().build()) 543 .setArtifactUri("artifactUri-1130062278") 544 .addAllSupportedDeploymentResourcesTypes(new ArrayList<Model.DeploymentResourcesType>()) 545 .addAllSupportedInputStorageFormats(new ArrayList<String>()) 546 .addAllSupportedOutputStorageFormats(new ArrayList<String>()) 547 .setCreateTime(Timestamp.newBuilder().build()) 548 .setUpdateTime(Timestamp.newBuilder().build()) 549 .addAllDeployedModels(new ArrayList<DeployedModelRef>()) 550 .setExplanationSpec(ExplanationSpec.newBuilder().build()) 551 .setEtag("etag3123477") 552 .putAllLabels(new HashMap<String, String>()) 553 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 554 .setModelSourceInfo(ModelSourceInfo.newBuilder().build()) 555 .setOriginalModelInfo(Model.OriginalModelInfo.newBuilder().build()) 556 .setMetadataArtifact("metadataArtifact1018119713") 557 .build(); 558 mockModelService.addResponse(expectedResponse); 559 560 Model model = Model.newBuilder().build(); 561 FieldMask updateMask = FieldMask.newBuilder().build(); 562 563 Model actualResponse = client.updateModel(model, updateMask); 564 Assert.assertEquals(expectedResponse, actualResponse); 565 566 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 567 Assert.assertEquals(1, actualRequests.size()); 568 UpdateModelRequest actualRequest = ((UpdateModelRequest) actualRequests.get(0)); 569 570 Assert.assertEquals(model, actualRequest.getModel()); 571 Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); 572 Assert.assertTrue( 573 channelProvider.isHeaderSent( 574 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 575 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 576 } 577 578 @Test updateModelExceptionTest()579 public void updateModelExceptionTest() throws Exception { 580 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 581 mockModelService.addException(exception); 582 583 try { 584 Model model = Model.newBuilder().build(); 585 FieldMask updateMask = FieldMask.newBuilder().build(); 586 client.updateModel(model, updateMask); 587 Assert.fail("No exception raised"); 588 } catch (InvalidArgumentException e) { 589 // Expected exception. 590 } 591 } 592 593 @Test deleteModelTest()594 public void deleteModelTest() throws Exception { 595 Empty expectedResponse = Empty.newBuilder().build(); 596 Operation resultOperation = 597 Operation.newBuilder() 598 .setName("deleteModelTest") 599 .setDone(true) 600 .setResponse(Any.pack(expectedResponse)) 601 .build(); 602 mockModelService.addResponse(resultOperation); 603 604 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 605 606 client.deleteModelAsync(name).get(); 607 608 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 609 Assert.assertEquals(1, actualRequests.size()); 610 DeleteModelRequest actualRequest = ((DeleteModelRequest) actualRequests.get(0)); 611 612 Assert.assertEquals(name.toString(), actualRequest.getName()); 613 Assert.assertTrue( 614 channelProvider.isHeaderSent( 615 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 616 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 617 } 618 619 @Test deleteModelExceptionTest()620 public void deleteModelExceptionTest() throws Exception { 621 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 622 mockModelService.addException(exception); 623 624 try { 625 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 626 client.deleteModelAsync(name).get(); 627 Assert.fail("No exception raised"); 628 } catch (ExecutionException e) { 629 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 630 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 631 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 632 } 633 } 634 635 @Test deleteModelTest2()636 public void deleteModelTest2() throws Exception { 637 Empty expectedResponse = Empty.newBuilder().build(); 638 Operation resultOperation = 639 Operation.newBuilder() 640 .setName("deleteModelTest") 641 .setDone(true) 642 .setResponse(Any.pack(expectedResponse)) 643 .build(); 644 mockModelService.addResponse(resultOperation); 645 646 String name = "name3373707"; 647 648 client.deleteModelAsync(name).get(); 649 650 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 651 Assert.assertEquals(1, actualRequests.size()); 652 DeleteModelRequest actualRequest = ((DeleteModelRequest) actualRequests.get(0)); 653 654 Assert.assertEquals(name, actualRequest.getName()); 655 Assert.assertTrue( 656 channelProvider.isHeaderSent( 657 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 658 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 659 } 660 661 @Test deleteModelExceptionTest2()662 public void deleteModelExceptionTest2() throws Exception { 663 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 664 mockModelService.addException(exception); 665 666 try { 667 String name = "name3373707"; 668 client.deleteModelAsync(name).get(); 669 Assert.fail("No exception raised"); 670 } catch (ExecutionException e) { 671 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 672 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 673 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 674 } 675 } 676 677 @Test deleteModelVersionTest()678 public void deleteModelVersionTest() throws Exception { 679 Empty expectedResponse = Empty.newBuilder().build(); 680 Operation resultOperation = 681 Operation.newBuilder() 682 .setName("deleteModelVersionTest") 683 .setDone(true) 684 .setResponse(Any.pack(expectedResponse)) 685 .build(); 686 mockModelService.addResponse(resultOperation); 687 688 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 689 690 client.deleteModelVersionAsync(name).get(); 691 692 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 693 Assert.assertEquals(1, actualRequests.size()); 694 DeleteModelVersionRequest actualRequest = ((DeleteModelVersionRequest) actualRequests.get(0)); 695 696 Assert.assertEquals(name.toString(), actualRequest.getName()); 697 Assert.assertTrue( 698 channelProvider.isHeaderSent( 699 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 700 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 701 } 702 703 @Test deleteModelVersionExceptionTest()704 public void deleteModelVersionExceptionTest() throws Exception { 705 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 706 mockModelService.addException(exception); 707 708 try { 709 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 710 client.deleteModelVersionAsync(name).get(); 711 Assert.fail("No exception raised"); 712 } catch (ExecutionException e) { 713 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 714 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 715 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 716 } 717 } 718 719 @Test deleteModelVersionTest2()720 public void deleteModelVersionTest2() throws Exception { 721 Empty expectedResponse = Empty.newBuilder().build(); 722 Operation resultOperation = 723 Operation.newBuilder() 724 .setName("deleteModelVersionTest") 725 .setDone(true) 726 .setResponse(Any.pack(expectedResponse)) 727 .build(); 728 mockModelService.addResponse(resultOperation); 729 730 String name = "name3373707"; 731 732 client.deleteModelVersionAsync(name).get(); 733 734 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 735 Assert.assertEquals(1, actualRequests.size()); 736 DeleteModelVersionRequest actualRequest = ((DeleteModelVersionRequest) actualRequests.get(0)); 737 738 Assert.assertEquals(name, actualRequest.getName()); 739 Assert.assertTrue( 740 channelProvider.isHeaderSent( 741 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 742 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 743 } 744 745 @Test deleteModelVersionExceptionTest2()746 public void deleteModelVersionExceptionTest2() throws Exception { 747 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 748 mockModelService.addException(exception); 749 750 try { 751 String name = "name3373707"; 752 client.deleteModelVersionAsync(name).get(); 753 Assert.fail("No exception raised"); 754 } catch (ExecutionException e) { 755 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 756 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 757 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 758 } 759 } 760 761 @Test mergeVersionAliasesTest()762 public void mergeVersionAliasesTest() throws Exception { 763 Model expectedResponse = 764 Model.newBuilder() 765 .setName(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 766 .setVersionId("versionId-1407102957") 767 .addAllVersionAliases(new ArrayList<String>()) 768 .setVersionCreateTime(Timestamp.newBuilder().build()) 769 .setVersionUpdateTime(Timestamp.newBuilder().build()) 770 .setDisplayName("displayName1714148973") 771 .setDescription("description-1724546052") 772 .setVersionDescription("versionDescription-1736173564") 773 .setPredictSchemata(PredictSchemata.newBuilder().build()) 774 .setMetadataSchemaUri("metadataSchemaUri781971868") 775 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 776 .addAllSupportedExportFormats(new ArrayList<Model.ExportFormat>()) 777 .setTrainingPipeline( 778 TrainingPipelineName.of("[PROJECT]", "[LOCATION]", "[TRAINING_PIPELINE]") 779 .toString()) 780 .setContainerSpec(ModelContainerSpec.newBuilder().build()) 781 .setArtifactUri("artifactUri-1130062278") 782 .addAllSupportedDeploymentResourcesTypes(new ArrayList<Model.DeploymentResourcesType>()) 783 .addAllSupportedInputStorageFormats(new ArrayList<String>()) 784 .addAllSupportedOutputStorageFormats(new ArrayList<String>()) 785 .setCreateTime(Timestamp.newBuilder().build()) 786 .setUpdateTime(Timestamp.newBuilder().build()) 787 .addAllDeployedModels(new ArrayList<DeployedModelRef>()) 788 .setExplanationSpec(ExplanationSpec.newBuilder().build()) 789 .setEtag("etag3123477") 790 .putAllLabels(new HashMap<String, String>()) 791 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 792 .setModelSourceInfo(ModelSourceInfo.newBuilder().build()) 793 .setOriginalModelInfo(Model.OriginalModelInfo.newBuilder().build()) 794 .setMetadataArtifact("metadataArtifact1018119713") 795 .build(); 796 mockModelService.addResponse(expectedResponse); 797 798 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 799 List<String> versionAliases = new ArrayList<>(); 800 801 Model actualResponse = client.mergeVersionAliases(name, versionAliases); 802 Assert.assertEquals(expectedResponse, actualResponse); 803 804 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 805 Assert.assertEquals(1, actualRequests.size()); 806 MergeVersionAliasesRequest actualRequest = ((MergeVersionAliasesRequest) actualRequests.get(0)); 807 808 Assert.assertEquals(name.toString(), actualRequest.getName()); 809 Assert.assertEquals(versionAliases, actualRequest.getVersionAliasesList()); 810 Assert.assertTrue( 811 channelProvider.isHeaderSent( 812 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 813 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 814 } 815 816 @Test mergeVersionAliasesExceptionTest()817 public void mergeVersionAliasesExceptionTest() throws Exception { 818 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 819 mockModelService.addException(exception); 820 821 try { 822 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 823 List<String> versionAliases = new ArrayList<>(); 824 client.mergeVersionAliases(name, versionAliases); 825 Assert.fail("No exception raised"); 826 } catch (InvalidArgumentException e) { 827 // Expected exception. 828 } 829 } 830 831 @Test mergeVersionAliasesTest2()832 public void mergeVersionAliasesTest2() throws Exception { 833 Model expectedResponse = 834 Model.newBuilder() 835 .setName(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 836 .setVersionId("versionId-1407102957") 837 .addAllVersionAliases(new ArrayList<String>()) 838 .setVersionCreateTime(Timestamp.newBuilder().build()) 839 .setVersionUpdateTime(Timestamp.newBuilder().build()) 840 .setDisplayName("displayName1714148973") 841 .setDescription("description-1724546052") 842 .setVersionDescription("versionDescription-1736173564") 843 .setPredictSchemata(PredictSchemata.newBuilder().build()) 844 .setMetadataSchemaUri("metadataSchemaUri781971868") 845 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 846 .addAllSupportedExportFormats(new ArrayList<Model.ExportFormat>()) 847 .setTrainingPipeline( 848 TrainingPipelineName.of("[PROJECT]", "[LOCATION]", "[TRAINING_PIPELINE]") 849 .toString()) 850 .setContainerSpec(ModelContainerSpec.newBuilder().build()) 851 .setArtifactUri("artifactUri-1130062278") 852 .addAllSupportedDeploymentResourcesTypes(new ArrayList<Model.DeploymentResourcesType>()) 853 .addAllSupportedInputStorageFormats(new ArrayList<String>()) 854 .addAllSupportedOutputStorageFormats(new ArrayList<String>()) 855 .setCreateTime(Timestamp.newBuilder().build()) 856 .setUpdateTime(Timestamp.newBuilder().build()) 857 .addAllDeployedModels(new ArrayList<DeployedModelRef>()) 858 .setExplanationSpec(ExplanationSpec.newBuilder().build()) 859 .setEtag("etag3123477") 860 .putAllLabels(new HashMap<String, String>()) 861 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 862 .setModelSourceInfo(ModelSourceInfo.newBuilder().build()) 863 .setOriginalModelInfo(Model.OriginalModelInfo.newBuilder().build()) 864 .setMetadataArtifact("metadataArtifact1018119713") 865 .build(); 866 mockModelService.addResponse(expectedResponse); 867 868 String name = "name3373707"; 869 List<String> versionAliases = new ArrayList<>(); 870 871 Model actualResponse = client.mergeVersionAliases(name, versionAliases); 872 Assert.assertEquals(expectedResponse, actualResponse); 873 874 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 875 Assert.assertEquals(1, actualRequests.size()); 876 MergeVersionAliasesRequest actualRequest = ((MergeVersionAliasesRequest) actualRequests.get(0)); 877 878 Assert.assertEquals(name, actualRequest.getName()); 879 Assert.assertEquals(versionAliases, actualRequest.getVersionAliasesList()); 880 Assert.assertTrue( 881 channelProvider.isHeaderSent( 882 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 883 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 884 } 885 886 @Test mergeVersionAliasesExceptionTest2()887 public void mergeVersionAliasesExceptionTest2() throws Exception { 888 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 889 mockModelService.addException(exception); 890 891 try { 892 String name = "name3373707"; 893 List<String> versionAliases = new ArrayList<>(); 894 client.mergeVersionAliases(name, versionAliases); 895 Assert.fail("No exception raised"); 896 } catch (InvalidArgumentException e) { 897 // Expected exception. 898 } 899 } 900 901 @Test exportModelTest()902 public void exportModelTest() throws Exception { 903 ExportModelResponse expectedResponse = ExportModelResponse.newBuilder().build(); 904 Operation resultOperation = 905 Operation.newBuilder() 906 .setName("exportModelTest") 907 .setDone(true) 908 .setResponse(Any.pack(expectedResponse)) 909 .build(); 910 mockModelService.addResponse(resultOperation); 911 912 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 913 ExportModelRequest.OutputConfig outputConfig = 914 ExportModelRequest.OutputConfig.newBuilder().build(); 915 916 ExportModelResponse actualResponse = client.exportModelAsync(name, outputConfig).get(); 917 Assert.assertEquals(expectedResponse, actualResponse); 918 919 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 920 Assert.assertEquals(1, actualRequests.size()); 921 ExportModelRequest actualRequest = ((ExportModelRequest) actualRequests.get(0)); 922 923 Assert.assertEquals(name.toString(), actualRequest.getName()); 924 Assert.assertEquals(outputConfig, actualRequest.getOutputConfig()); 925 Assert.assertTrue( 926 channelProvider.isHeaderSent( 927 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 928 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 929 } 930 931 @Test exportModelExceptionTest()932 public void exportModelExceptionTest() throws Exception { 933 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 934 mockModelService.addException(exception); 935 936 try { 937 ModelName name = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 938 ExportModelRequest.OutputConfig outputConfig = 939 ExportModelRequest.OutputConfig.newBuilder().build(); 940 client.exportModelAsync(name, outputConfig).get(); 941 Assert.fail("No exception raised"); 942 } catch (ExecutionException e) { 943 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 944 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 945 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 946 } 947 } 948 949 @Test exportModelTest2()950 public void exportModelTest2() throws Exception { 951 ExportModelResponse expectedResponse = ExportModelResponse.newBuilder().build(); 952 Operation resultOperation = 953 Operation.newBuilder() 954 .setName("exportModelTest") 955 .setDone(true) 956 .setResponse(Any.pack(expectedResponse)) 957 .build(); 958 mockModelService.addResponse(resultOperation); 959 960 String name = "name3373707"; 961 ExportModelRequest.OutputConfig outputConfig = 962 ExportModelRequest.OutputConfig.newBuilder().build(); 963 964 ExportModelResponse actualResponse = client.exportModelAsync(name, outputConfig).get(); 965 Assert.assertEquals(expectedResponse, actualResponse); 966 967 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 968 Assert.assertEquals(1, actualRequests.size()); 969 ExportModelRequest actualRequest = ((ExportModelRequest) actualRequests.get(0)); 970 971 Assert.assertEquals(name, actualRequest.getName()); 972 Assert.assertEquals(outputConfig, actualRequest.getOutputConfig()); 973 Assert.assertTrue( 974 channelProvider.isHeaderSent( 975 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 976 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 977 } 978 979 @Test exportModelExceptionTest2()980 public void exportModelExceptionTest2() throws Exception { 981 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 982 mockModelService.addException(exception); 983 984 try { 985 String name = "name3373707"; 986 ExportModelRequest.OutputConfig outputConfig = 987 ExportModelRequest.OutputConfig.newBuilder().build(); 988 client.exportModelAsync(name, outputConfig).get(); 989 Assert.fail("No exception raised"); 990 } catch (ExecutionException e) { 991 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 992 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 993 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 994 } 995 } 996 997 @Test copyModelTest()998 public void copyModelTest() throws Exception { 999 CopyModelResponse expectedResponse = 1000 CopyModelResponse.newBuilder() 1001 .setModel(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 1002 .setModelVersionId("modelVersionId-2006125846") 1003 .build(); 1004 Operation resultOperation = 1005 Operation.newBuilder() 1006 .setName("copyModelTest") 1007 .setDone(true) 1008 .setResponse(Any.pack(expectedResponse)) 1009 .build(); 1010 mockModelService.addResponse(resultOperation); 1011 1012 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 1013 ModelName sourceModel = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1014 1015 CopyModelResponse actualResponse = client.copyModelAsync(parent, sourceModel).get(); 1016 Assert.assertEquals(expectedResponse, actualResponse); 1017 1018 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1019 Assert.assertEquals(1, actualRequests.size()); 1020 CopyModelRequest actualRequest = ((CopyModelRequest) actualRequests.get(0)); 1021 1022 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1023 Assert.assertEquals(sourceModel.toString(), actualRequest.getSourceModel()); 1024 Assert.assertTrue( 1025 channelProvider.isHeaderSent( 1026 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1027 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1028 } 1029 1030 @Test copyModelExceptionTest()1031 public void copyModelExceptionTest() throws Exception { 1032 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1033 mockModelService.addException(exception); 1034 1035 try { 1036 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 1037 ModelName sourceModel = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1038 client.copyModelAsync(parent, sourceModel).get(); 1039 Assert.fail("No exception raised"); 1040 } catch (ExecutionException e) { 1041 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1042 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1043 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1044 } 1045 } 1046 1047 @Test copyModelTest2()1048 public void copyModelTest2() throws Exception { 1049 CopyModelResponse expectedResponse = 1050 CopyModelResponse.newBuilder() 1051 .setModel(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 1052 .setModelVersionId("modelVersionId-2006125846") 1053 .build(); 1054 Operation resultOperation = 1055 Operation.newBuilder() 1056 .setName("copyModelTest") 1057 .setDone(true) 1058 .setResponse(Any.pack(expectedResponse)) 1059 .build(); 1060 mockModelService.addResponse(resultOperation); 1061 1062 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 1063 String sourceModel = "sourceModel-101418034"; 1064 1065 CopyModelResponse actualResponse = client.copyModelAsync(parent, sourceModel).get(); 1066 Assert.assertEquals(expectedResponse, actualResponse); 1067 1068 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1069 Assert.assertEquals(1, actualRequests.size()); 1070 CopyModelRequest actualRequest = ((CopyModelRequest) actualRequests.get(0)); 1071 1072 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1073 Assert.assertEquals(sourceModel, actualRequest.getSourceModel()); 1074 Assert.assertTrue( 1075 channelProvider.isHeaderSent( 1076 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1077 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1078 } 1079 1080 @Test copyModelExceptionTest2()1081 public void copyModelExceptionTest2() throws Exception { 1082 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1083 mockModelService.addException(exception); 1084 1085 try { 1086 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 1087 String sourceModel = "sourceModel-101418034"; 1088 client.copyModelAsync(parent, sourceModel).get(); 1089 Assert.fail("No exception raised"); 1090 } catch (ExecutionException e) { 1091 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1092 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1093 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1094 } 1095 } 1096 1097 @Test copyModelTest3()1098 public void copyModelTest3() throws Exception { 1099 CopyModelResponse expectedResponse = 1100 CopyModelResponse.newBuilder() 1101 .setModel(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 1102 .setModelVersionId("modelVersionId-2006125846") 1103 .build(); 1104 Operation resultOperation = 1105 Operation.newBuilder() 1106 .setName("copyModelTest") 1107 .setDone(true) 1108 .setResponse(Any.pack(expectedResponse)) 1109 .build(); 1110 mockModelService.addResponse(resultOperation); 1111 1112 String parent = "parent-995424086"; 1113 ModelName sourceModel = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1114 1115 CopyModelResponse actualResponse = client.copyModelAsync(parent, sourceModel).get(); 1116 Assert.assertEquals(expectedResponse, actualResponse); 1117 1118 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1119 Assert.assertEquals(1, actualRequests.size()); 1120 CopyModelRequest actualRequest = ((CopyModelRequest) actualRequests.get(0)); 1121 1122 Assert.assertEquals(parent, actualRequest.getParent()); 1123 Assert.assertEquals(sourceModel.toString(), actualRequest.getSourceModel()); 1124 Assert.assertTrue( 1125 channelProvider.isHeaderSent( 1126 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1127 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1128 } 1129 1130 @Test copyModelExceptionTest3()1131 public void copyModelExceptionTest3() throws Exception { 1132 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1133 mockModelService.addException(exception); 1134 1135 try { 1136 String parent = "parent-995424086"; 1137 ModelName sourceModel = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1138 client.copyModelAsync(parent, sourceModel).get(); 1139 Assert.fail("No exception raised"); 1140 } catch (ExecutionException e) { 1141 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1142 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1143 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1144 } 1145 } 1146 1147 @Test copyModelTest4()1148 public void copyModelTest4() throws Exception { 1149 CopyModelResponse expectedResponse = 1150 CopyModelResponse.newBuilder() 1151 .setModel(ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]").toString()) 1152 .setModelVersionId("modelVersionId-2006125846") 1153 .build(); 1154 Operation resultOperation = 1155 Operation.newBuilder() 1156 .setName("copyModelTest") 1157 .setDone(true) 1158 .setResponse(Any.pack(expectedResponse)) 1159 .build(); 1160 mockModelService.addResponse(resultOperation); 1161 1162 String parent = "parent-995424086"; 1163 String sourceModel = "sourceModel-101418034"; 1164 1165 CopyModelResponse actualResponse = client.copyModelAsync(parent, sourceModel).get(); 1166 Assert.assertEquals(expectedResponse, actualResponse); 1167 1168 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1169 Assert.assertEquals(1, actualRequests.size()); 1170 CopyModelRequest actualRequest = ((CopyModelRequest) actualRequests.get(0)); 1171 1172 Assert.assertEquals(parent, actualRequest.getParent()); 1173 Assert.assertEquals(sourceModel, actualRequest.getSourceModel()); 1174 Assert.assertTrue( 1175 channelProvider.isHeaderSent( 1176 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1177 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1178 } 1179 1180 @Test copyModelExceptionTest4()1181 public void copyModelExceptionTest4() throws Exception { 1182 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1183 mockModelService.addException(exception); 1184 1185 try { 1186 String parent = "parent-995424086"; 1187 String sourceModel = "sourceModel-101418034"; 1188 client.copyModelAsync(parent, sourceModel).get(); 1189 Assert.fail("No exception raised"); 1190 } catch (ExecutionException e) { 1191 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1192 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1193 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1194 } 1195 } 1196 1197 @Test importModelEvaluationTest()1198 public void importModelEvaluationTest() throws Exception { 1199 ModelEvaluation expectedResponse = 1200 ModelEvaluation.newBuilder() 1201 .setName( 1202 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]") 1203 .toString()) 1204 .setDisplayName("displayName1714148973") 1205 .setMetricsSchemaUri("metricsSchemaUri-182209912") 1206 .setMetrics(Value.newBuilder().setBoolValue(true).build()) 1207 .setCreateTime(Timestamp.newBuilder().build()) 1208 .addAllSliceDimensions(new ArrayList<String>()) 1209 .setDataItemSchemaUri("dataItemSchemaUri-154921298") 1210 .setAnnotationSchemaUri("annotationSchemaUri1480032668") 1211 .setModelExplanation(ModelExplanation.newBuilder().build()) 1212 .addAllExplanationSpecs(new ArrayList<ModelEvaluation.ModelEvaluationExplanationSpec>()) 1213 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 1214 .build(); 1215 mockModelService.addResponse(expectedResponse); 1216 1217 ModelName parent = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1218 ModelEvaluation modelEvaluation = ModelEvaluation.newBuilder().build(); 1219 1220 ModelEvaluation actualResponse = client.importModelEvaluation(parent, modelEvaluation); 1221 Assert.assertEquals(expectedResponse, actualResponse); 1222 1223 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1224 Assert.assertEquals(1, actualRequests.size()); 1225 ImportModelEvaluationRequest actualRequest = 1226 ((ImportModelEvaluationRequest) actualRequests.get(0)); 1227 1228 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1229 Assert.assertEquals(modelEvaluation, actualRequest.getModelEvaluation()); 1230 Assert.assertTrue( 1231 channelProvider.isHeaderSent( 1232 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1233 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1234 } 1235 1236 @Test importModelEvaluationExceptionTest()1237 public void importModelEvaluationExceptionTest() throws Exception { 1238 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1239 mockModelService.addException(exception); 1240 1241 try { 1242 ModelName parent = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1243 ModelEvaluation modelEvaluation = ModelEvaluation.newBuilder().build(); 1244 client.importModelEvaluation(parent, modelEvaluation); 1245 Assert.fail("No exception raised"); 1246 } catch (InvalidArgumentException e) { 1247 // Expected exception. 1248 } 1249 } 1250 1251 @Test importModelEvaluationTest2()1252 public void importModelEvaluationTest2() throws Exception { 1253 ModelEvaluation expectedResponse = 1254 ModelEvaluation.newBuilder() 1255 .setName( 1256 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]") 1257 .toString()) 1258 .setDisplayName("displayName1714148973") 1259 .setMetricsSchemaUri("metricsSchemaUri-182209912") 1260 .setMetrics(Value.newBuilder().setBoolValue(true).build()) 1261 .setCreateTime(Timestamp.newBuilder().build()) 1262 .addAllSliceDimensions(new ArrayList<String>()) 1263 .setDataItemSchemaUri("dataItemSchemaUri-154921298") 1264 .setAnnotationSchemaUri("annotationSchemaUri1480032668") 1265 .setModelExplanation(ModelExplanation.newBuilder().build()) 1266 .addAllExplanationSpecs(new ArrayList<ModelEvaluation.ModelEvaluationExplanationSpec>()) 1267 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 1268 .build(); 1269 mockModelService.addResponse(expectedResponse); 1270 1271 String parent = "parent-995424086"; 1272 ModelEvaluation modelEvaluation = ModelEvaluation.newBuilder().build(); 1273 1274 ModelEvaluation actualResponse = client.importModelEvaluation(parent, modelEvaluation); 1275 Assert.assertEquals(expectedResponse, actualResponse); 1276 1277 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1278 Assert.assertEquals(1, actualRequests.size()); 1279 ImportModelEvaluationRequest actualRequest = 1280 ((ImportModelEvaluationRequest) actualRequests.get(0)); 1281 1282 Assert.assertEquals(parent, actualRequest.getParent()); 1283 Assert.assertEquals(modelEvaluation, actualRequest.getModelEvaluation()); 1284 Assert.assertTrue( 1285 channelProvider.isHeaderSent( 1286 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1287 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1288 } 1289 1290 @Test importModelEvaluationExceptionTest2()1291 public void importModelEvaluationExceptionTest2() throws Exception { 1292 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1293 mockModelService.addException(exception); 1294 1295 try { 1296 String parent = "parent-995424086"; 1297 ModelEvaluation modelEvaluation = ModelEvaluation.newBuilder().build(); 1298 client.importModelEvaluation(parent, modelEvaluation); 1299 Assert.fail("No exception raised"); 1300 } catch (InvalidArgumentException e) { 1301 // Expected exception. 1302 } 1303 } 1304 1305 @Test batchImportModelEvaluationSlicesTest()1306 public void batchImportModelEvaluationSlicesTest() throws Exception { 1307 BatchImportModelEvaluationSlicesResponse expectedResponse = 1308 BatchImportModelEvaluationSlicesResponse.newBuilder() 1309 .addAllImportedModelEvaluationSlices(new ArrayList<String>()) 1310 .build(); 1311 mockModelService.addResponse(expectedResponse); 1312 1313 ModelEvaluationName parent = 1314 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]"); 1315 List<ModelEvaluationSlice> modelEvaluationSlices = new ArrayList<>(); 1316 1317 BatchImportModelEvaluationSlicesResponse actualResponse = 1318 client.batchImportModelEvaluationSlices(parent, modelEvaluationSlices); 1319 Assert.assertEquals(expectedResponse, actualResponse); 1320 1321 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1322 Assert.assertEquals(1, actualRequests.size()); 1323 BatchImportModelEvaluationSlicesRequest actualRequest = 1324 ((BatchImportModelEvaluationSlicesRequest) actualRequests.get(0)); 1325 1326 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1327 Assert.assertEquals(modelEvaluationSlices, actualRequest.getModelEvaluationSlicesList()); 1328 Assert.assertTrue( 1329 channelProvider.isHeaderSent( 1330 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1331 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1332 } 1333 1334 @Test batchImportModelEvaluationSlicesExceptionTest()1335 public void batchImportModelEvaluationSlicesExceptionTest() throws Exception { 1336 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1337 mockModelService.addException(exception); 1338 1339 try { 1340 ModelEvaluationName parent = 1341 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]"); 1342 List<ModelEvaluationSlice> modelEvaluationSlices = new ArrayList<>(); 1343 client.batchImportModelEvaluationSlices(parent, modelEvaluationSlices); 1344 Assert.fail("No exception raised"); 1345 } catch (InvalidArgumentException e) { 1346 // Expected exception. 1347 } 1348 } 1349 1350 @Test batchImportModelEvaluationSlicesTest2()1351 public void batchImportModelEvaluationSlicesTest2() throws Exception { 1352 BatchImportModelEvaluationSlicesResponse expectedResponse = 1353 BatchImportModelEvaluationSlicesResponse.newBuilder() 1354 .addAllImportedModelEvaluationSlices(new ArrayList<String>()) 1355 .build(); 1356 mockModelService.addResponse(expectedResponse); 1357 1358 String parent = "parent-995424086"; 1359 List<ModelEvaluationSlice> modelEvaluationSlices = new ArrayList<>(); 1360 1361 BatchImportModelEvaluationSlicesResponse actualResponse = 1362 client.batchImportModelEvaluationSlices(parent, modelEvaluationSlices); 1363 Assert.assertEquals(expectedResponse, actualResponse); 1364 1365 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1366 Assert.assertEquals(1, actualRequests.size()); 1367 BatchImportModelEvaluationSlicesRequest actualRequest = 1368 ((BatchImportModelEvaluationSlicesRequest) actualRequests.get(0)); 1369 1370 Assert.assertEquals(parent, actualRequest.getParent()); 1371 Assert.assertEquals(modelEvaluationSlices, actualRequest.getModelEvaluationSlicesList()); 1372 Assert.assertTrue( 1373 channelProvider.isHeaderSent( 1374 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1375 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1376 } 1377 1378 @Test batchImportModelEvaluationSlicesExceptionTest2()1379 public void batchImportModelEvaluationSlicesExceptionTest2() throws Exception { 1380 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1381 mockModelService.addException(exception); 1382 1383 try { 1384 String parent = "parent-995424086"; 1385 List<ModelEvaluationSlice> modelEvaluationSlices = new ArrayList<>(); 1386 client.batchImportModelEvaluationSlices(parent, modelEvaluationSlices); 1387 Assert.fail("No exception raised"); 1388 } catch (InvalidArgumentException e) { 1389 // Expected exception. 1390 } 1391 } 1392 1393 @Test batchImportEvaluatedAnnotationsTest()1394 public void batchImportEvaluatedAnnotationsTest() throws Exception { 1395 BatchImportEvaluatedAnnotationsResponse expectedResponse = 1396 BatchImportEvaluatedAnnotationsResponse.newBuilder() 1397 .setImportedEvaluatedAnnotationsCount(-765638363) 1398 .build(); 1399 mockModelService.addResponse(expectedResponse); 1400 1401 ModelEvaluationSliceName parent = 1402 ModelEvaluationSliceName.of( 1403 "[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]", "[SLICE]"); 1404 List<EvaluatedAnnotation> evaluatedAnnotations = new ArrayList<>(); 1405 1406 BatchImportEvaluatedAnnotationsResponse actualResponse = 1407 client.batchImportEvaluatedAnnotations(parent, evaluatedAnnotations); 1408 Assert.assertEquals(expectedResponse, actualResponse); 1409 1410 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1411 Assert.assertEquals(1, actualRequests.size()); 1412 BatchImportEvaluatedAnnotationsRequest actualRequest = 1413 ((BatchImportEvaluatedAnnotationsRequest) actualRequests.get(0)); 1414 1415 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1416 Assert.assertEquals(evaluatedAnnotations, actualRequest.getEvaluatedAnnotationsList()); 1417 Assert.assertTrue( 1418 channelProvider.isHeaderSent( 1419 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1420 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1421 } 1422 1423 @Test batchImportEvaluatedAnnotationsExceptionTest()1424 public void batchImportEvaluatedAnnotationsExceptionTest() throws Exception { 1425 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1426 mockModelService.addException(exception); 1427 1428 try { 1429 ModelEvaluationSliceName parent = 1430 ModelEvaluationSliceName.of( 1431 "[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]", "[SLICE]"); 1432 List<EvaluatedAnnotation> evaluatedAnnotations = new ArrayList<>(); 1433 client.batchImportEvaluatedAnnotations(parent, evaluatedAnnotations); 1434 Assert.fail("No exception raised"); 1435 } catch (InvalidArgumentException e) { 1436 // Expected exception. 1437 } 1438 } 1439 1440 @Test batchImportEvaluatedAnnotationsTest2()1441 public void batchImportEvaluatedAnnotationsTest2() throws Exception { 1442 BatchImportEvaluatedAnnotationsResponse expectedResponse = 1443 BatchImportEvaluatedAnnotationsResponse.newBuilder() 1444 .setImportedEvaluatedAnnotationsCount(-765638363) 1445 .build(); 1446 mockModelService.addResponse(expectedResponse); 1447 1448 String parent = "parent-995424086"; 1449 List<EvaluatedAnnotation> evaluatedAnnotations = new ArrayList<>(); 1450 1451 BatchImportEvaluatedAnnotationsResponse actualResponse = 1452 client.batchImportEvaluatedAnnotations(parent, evaluatedAnnotations); 1453 Assert.assertEquals(expectedResponse, actualResponse); 1454 1455 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1456 Assert.assertEquals(1, actualRequests.size()); 1457 BatchImportEvaluatedAnnotationsRequest actualRequest = 1458 ((BatchImportEvaluatedAnnotationsRequest) actualRequests.get(0)); 1459 1460 Assert.assertEquals(parent, actualRequest.getParent()); 1461 Assert.assertEquals(evaluatedAnnotations, actualRequest.getEvaluatedAnnotationsList()); 1462 Assert.assertTrue( 1463 channelProvider.isHeaderSent( 1464 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1465 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1466 } 1467 1468 @Test batchImportEvaluatedAnnotationsExceptionTest2()1469 public void batchImportEvaluatedAnnotationsExceptionTest2() throws Exception { 1470 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1471 mockModelService.addException(exception); 1472 1473 try { 1474 String parent = "parent-995424086"; 1475 List<EvaluatedAnnotation> evaluatedAnnotations = new ArrayList<>(); 1476 client.batchImportEvaluatedAnnotations(parent, evaluatedAnnotations); 1477 Assert.fail("No exception raised"); 1478 } catch (InvalidArgumentException e) { 1479 // Expected exception. 1480 } 1481 } 1482 1483 @Test getModelEvaluationTest()1484 public void getModelEvaluationTest() throws Exception { 1485 ModelEvaluation expectedResponse = 1486 ModelEvaluation.newBuilder() 1487 .setName( 1488 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]") 1489 .toString()) 1490 .setDisplayName("displayName1714148973") 1491 .setMetricsSchemaUri("metricsSchemaUri-182209912") 1492 .setMetrics(Value.newBuilder().setBoolValue(true).build()) 1493 .setCreateTime(Timestamp.newBuilder().build()) 1494 .addAllSliceDimensions(new ArrayList<String>()) 1495 .setDataItemSchemaUri("dataItemSchemaUri-154921298") 1496 .setAnnotationSchemaUri("annotationSchemaUri1480032668") 1497 .setModelExplanation(ModelExplanation.newBuilder().build()) 1498 .addAllExplanationSpecs(new ArrayList<ModelEvaluation.ModelEvaluationExplanationSpec>()) 1499 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 1500 .build(); 1501 mockModelService.addResponse(expectedResponse); 1502 1503 ModelEvaluationName name = 1504 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]"); 1505 1506 ModelEvaluation actualResponse = client.getModelEvaluation(name); 1507 Assert.assertEquals(expectedResponse, actualResponse); 1508 1509 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1510 Assert.assertEquals(1, actualRequests.size()); 1511 GetModelEvaluationRequest actualRequest = ((GetModelEvaluationRequest) actualRequests.get(0)); 1512 1513 Assert.assertEquals(name.toString(), actualRequest.getName()); 1514 Assert.assertTrue( 1515 channelProvider.isHeaderSent( 1516 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1517 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1518 } 1519 1520 @Test getModelEvaluationExceptionTest()1521 public void getModelEvaluationExceptionTest() throws Exception { 1522 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1523 mockModelService.addException(exception); 1524 1525 try { 1526 ModelEvaluationName name = 1527 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]"); 1528 client.getModelEvaluation(name); 1529 Assert.fail("No exception raised"); 1530 } catch (InvalidArgumentException e) { 1531 // Expected exception. 1532 } 1533 } 1534 1535 @Test getModelEvaluationTest2()1536 public void getModelEvaluationTest2() throws Exception { 1537 ModelEvaluation expectedResponse = 1538 ModelEvaluation.newBuilder() 1539 .setName( 1540 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]") 1541 .toString()) 1542 .setDisplayName("displayName1714148973") 1543 .setMetricsSchemaUri("metricsSchemaUri-182209912") 1544 .setMetrics(Value.newBuilder().setBoolValue(true).build()) 1545 .setCreateTime(Timestamp.newBuilder().build()) 1546 .addAllSliceDimensions(new ArrayList<String>()) 1547 .setDataItemSchemaUri("dataItemSchemaUri-154921298") 1548 .setAnnotationSchemaUri("annotationSchemaUri1480032668") 1549 .setModelExplanation(ModelExplanation.newBuilder().build()) 1550 .addAllExplanationSpecs(new ArrayList<ModelEvaluation.ModelEvaluationExplanationSpec>()) 1551 .setMetadata(Value.newBuilder().setBoolValue(true).build()) 1552 .build(); 1553 mockModelService.addResponse(expectedResponse); 1554 1555 String name = "name3373707"; 1556 1557 ModelEvaluation actualResponse = client.getModelEvaluation(name); 1558 Assert.assertEquals(expectedResponse, actualResponse); 1559 1560 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1561 Assert.assertEquals(1, actualRequests.size()); 1562 GetModelEvaluationRequest actualRequest = ((GetModelEvaluationRequest) actualRequests.get(0)); 1563 1564 Assert.assertEquals(name, actualRequest.getName()); 1565 Assert.assertTrue( 1566 channelProvider.isHeaderSent( 1567 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1568 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1569 } 1570 1571 @Test getModelEvaluationExceptionTest2()1572 public void getModelEvaluationExceptionTest2() throws Exception { 1573 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1574 mockModelService.addException(exception); 1575 1576 try { 1577 String name = "name3373707"; 1578 client.getModelEvaluation(name); 1579 Assert.fail("No exception raised"); 1580 } catch (InvalidArgumentException e) { 1581 // Expected exception. 1582 } 1583 } 1584 1585 @Test listModelEvaluationsTest()1586 public void listModelEvaluationsTest() throws Exception { 1587 ModelEvaluation responsesElement = ModelEvaluation.newBuilder().build(); 1588 ListModelEvaluationsResponse expectedResponse = 1589 ListModelEvaluationsResponse.newBuilder() 1590 .setNextPageToken("") 1591 .addAllModelEvaluations(Arrays.asList(responsesElement)) 1592 .build(); 1593 mockModelService.addResponse(expectedResponse); 1594 1595 ModelName parent = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1596 1597 ListModelEvaluationsPagedResponse pagedListResponse = client.listModelEvaluations(parent); 1598 1599 List<ModelEvaluation> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1600 1601 Assert.assertEquals(1, resources.size()); 1602 Assert.assertEquals(expectedResponse.getModelEvaluationsList().get(0), resources.get(0)); 1603 1604 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1605 Assert.assertEquals(1, actualRequests.size()); 1606 ListModelEvaluationsRequest actualRequest = 1607 ((ListModelEvaluationsRequest) actualRequests.get(0)); 1608 1609 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1610 Assert.assertTrue( 1611 channelProvider.isHeaderSent( 1612 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1613 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1614 } 1615 1616 @Test listModelEvaluationsExceptionTest()1617 public void listModelEvaluationsExceptionTest() throws Exception { 1618 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1619 mockModelService.addException(exception); 1620 1621 try { 1622 ModelName parent = ModelName.of("[PROJECT]", "[LOCATION]", "[MODEL]"); 1623 client.listModelEvaluations(parent); 1624 Assert.fail("No exception raised"); 1625 } catch (InvalidArgumentException e) { 1626 // Expected exception. 1627 } 1628 } 1629 1630 @Test listModelEvaluationsTest2()1631 public void listModelEvaluationsTest2() throws Exception { 1632 ModelEvaluation responsesElement = ModelEvaluation.newBuilder().build(); 1633 ListModelEvaluationsResponse expectedResponse = 1634 ListModelEvaluationsResponse.newBuilder() 1635 .setNextPageToken("") 1636 .addAllModelEvaluations(Arrays.asList(responsesElement)) 1637 .build(); 1638 mockModelService.addResponse(expectedResponse); 1639 1640 String parent = "parent-995424086"; 1641 1642 ListModelEvaluationsPagedResponse pagedListResponse = client.listModelEvaluations(parent); 1643 1644 List<ModelEvaluation> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1645 1646 Assert.assertEquals(1, resources.size()); 1647 Assert.assertEquals(expectedResponse.getModelEvaluationsList().get(0), resources.get(0)); 1648 1649 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1650 Assert.assertEquals(1, actualRequests.size()); 1651 ListModelEvaluationsRequest actualRequest = 1652 ((ListModelEvaluationsRequest) actualRequests.get(0)); 1653 1654 Assert.assertEquals(parent, actualRequest.getParent()); 1655 Assert.assertTrue( 1656 channelProvider.isHeaderSent( 1657 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1658 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1659 } 1660 1661 @Test listModelEvaluationsExceptionTest2()1662 public void listModelEvaluationsExceptionTest2() throws Exception { 1663 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1664 mockModelService.addException(exception); 1665 1666 try { 1667 String parent = "parent-995424086"; 1668 client.listModelEvaluations(parent); 1669 Assert.fail("No exception raised"); 1670 } catch (InvalidArgumentException e) { 1671 // Expected exception. 1672 } 1673 } 1674 1675 @Test getModelEvaluationSliceTest()1676 public void getModelEvaluationSliceTest() throws Exception { 1677 ModelEvaluationSlice expectedResponse = 1678 ModelEvaluationSlice.newBuilder() 1679 .setName( 1680 ModelEvaluationSliceName.of( 1681 "[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]", "[SLICE]") 1682 .toString()) 1683 .setSlice(ModelEvaluationSlice.Slice.newBuilder().build()) 1684 .setMetricsSchemaUri("metricsSchemaUri-182209912") 1685 .setMetrics(Value.newBuilder().setBoolValue(true).build()) 1686 .setCreateTime(Timestamp.newBuilder().build()) 1687 .setModelExplanation(ModelExplanation.newBuilder().build()) 1688 .build(); 1689 mockModelService.addResponse(expectedResponse); 1690 1691 ModelEvaluationSliceName name = 1692 ModelEvaluationSliceName.of( 1693 "[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]", "[SLICE]"); 1694 1695 ModelEvaluationSlice actualResponse = client.getModelEvaluationSlice(name); 1696 Assert.assertEquals(expectedResponse, actualResponse); 1697 1698 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1699 Assert.assertEquals(1, actualRequests.size()); 1700 GetModelEvaluationSliceRequest actualRequest = 1701 ((GetModelEvaluationSliceRequest) actualRequests.get(0)); 1702 1703 Assert.assertEquals(name.toString(), actualRequest.getName()); 1704 Assert.assertTrue( 1705 channelProvider.isHeaderSent( 1706 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1707 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1708 } 1709 1710 @Test getModelEvaluationSliceExceptionTest()1711 public void getModelEvaluationSliceExceptionTest() throws Exception { 1712 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1713 mockModelService.addException(exception); 1714 1715 try { 1716 ModelEvaluationSliceName name = 1717 ModelEvaluationSliceName.of( 1718 "[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]", "[SLICE]"); 1719 client.getModelEvaluationSlice(name); 1720 Assert.fail("No exception raised"); 1721 } catch (InvalidArgumentException e) { 1722 // Expected exception. 1723 } 1724 } 1725 1726 @Test getModelEvaluationSliceTest2()1727 public void getModelEvaluationSliceTest2() throws Exception { 1728 ModelEvaluationSlice expectedResponse = 1729 ModelEvaluationSlice.newBuilder() 1730 .setName( 1731 ModelEvaluationSliceName.of( 1732 "[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]", "[SLICE]") 1733 .toString()) 1734 .setSlice(ModelEvaluationSlice.Slice.newBuilder().build()) 1735 .setMetricsSchemaUri("metricsSchemaUri-182209912") 1736 .setMetrics(Value.newBuilder().setBoolValue(true).build()) 1737 .setCreateTime(Timestamp.newBuilder().build()) 1738 .setModelExplanation(ModelExplanation.newBuilder().build()) 1739 .build(); 1740 mockModelService.addResponse(expectedResponse); 1741 1742 String name = "name3373707"; 1743 1744 ModelEvaluationSlice actualResponse = client.getModelEvaluationSlice(name); 1745 Assert.assertEquals(expectedResponse, actualResponse); 1746 1747 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1748 Assert.assertEquals(1, actualRequests.size()); 1749 GetModelEvaluationSliceRequest actualRequest = 1750 ((GetModelEvaluationSliceRequest) actualRequests.get(0)); 1751 1752 Assert.assertEquals(name, actualRequest.getName()); 1753 Assert.assertTrue( 1754 channelProvider.isHeaderSent( 1755 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1756 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1757 } 1758 1759 @Test getModelEvaluationSliceExceptionTest2()1760 public void getModelEvaluationSliceExceptionTest2() throws Exception { 1761 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1762 mockModelService.addException(exception); 1763 1764 try { 1765 String name = "name3373707"; 1766 client.getModelEvaluationSlice(name); 1767 Assert.fail("No exception raised"); 1768 } catch (InvalidArgumentException e) { 1769 // Expected exception. 1770 } 1771 } 1772 1773 @Test listModelEvaluationSlicesTest()1774 public void listModelEvaluationSlicesTest() throws Exception { 1775 ModelEvaluationSlice responsesElement = ModelEvaluationSlice.newBuilder().build(); 1776 ListModelEvaluationSlicesResponse expectedResponse = 1777 ListModelEvaluationSlicesResponse.newBuilder() 1778 .setNextPageToken("") 1779 .addAllModelEvaluationSlices(Arrays.asList(responsesElement)) 1780 .build(); 1781 mockModelService.addResponse(expectedResponse); 1782 1783 ModelEvaluationName parent = 1784 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]"); 1785 1786 ListModelEvaluationSlicesPagedResponse pagedListResponse = 1787 client.listModelEvaluationSlices(parent); 1788 1789 List<ModelEvaluationSlice> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1790 1791 Assert.assertEquals(1, resources.size()); 1792 Assert.assertEquals(expectedResponse.getModelEvaluationSlicesList().get(0), resources.get(0)); 1793 1794 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1795 Assert.assertEquals(1, actualRequests.size()); 1796 ListModelEvaluationSlicesRequest actualRequest = 1797 ((ListModelEvaluationSlicesRequest) actualRequests.get(0)); 1798 1799 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1800 Assert.assertTrue( 1801 channelProvider.isHeaderSent( 1802 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1803 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1804 } 1805 1806 @Test listModelEvaluationSlicesExceptionTest()1807 public void listModelEvaluationSlicesExceptionTest() throws Exception { 1808 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1809 mockModelService.addException(exception); 1810 1811 try { 1812 ModelEvaluationName parent = 1813 ModelEvaluationName.of("[PROJECT]", "[LOCATION]", "[MODEL]", "[EVALUATION]"); 1814 client.listModelEvaluationSlices(parent); 1815 Assert.fail("No exception raised"); 1816 } catch (InvalidArgumentException e) { 1817 // Expected exception. 1818 } 1819 } 1820 1821 @Test listModelEvaluationSlicesTest2()1822 public void listModelEvaluationSlicesTest2() throws Exception { 1823 ModelEvaluationSlice responsesElement = ModelEvaluationSlice.newBuilder().build(); 1824 ListModelEvaluationSlicesResponse expectedResponse = 1825 ListModelEvaluationSlicesResponse.newBuilder() 1826 .setNextPageToken("") 1827 .addAllModelEvaluationSlices(Arrays.asList(responsesElement)) 1828 .build(); 1829 mockModelService.addResponse(expectedResponse); 1830 1831 String parent = "parent-995424086"; 1832 1833 ListModelEvaluationSlicesPagedResponse pagedListResponse = 1834 client.listModelEvaluationSlices(parent); 1835 1836 List<ModelEvaluationSlice> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1837 1838 Assert.assertEquals(1, resources.size()); 1839 Assert.assertEquals(expectedResponse.getModelEvaluationSlicesList().get(0), resources.get(0)); 1840 1841 List<AbstractMessage> actualRequests = mockModelService.getRequests(); 1842 Assert.assertEquals(1, actualRequests.size()); 1843 ListModelEvaluationSlicesRequest actualRequest = 1844 ((ListModelEvaluationSlicesRequest) actualRequests.get(0)); 1845 1846 Assert.assertEquals(parent, actualRequest.getParent()); 1847 Assert.assertTrue( 1848 channelProvider.isHeaderSent( 1849 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1850 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1851 } 1852 1853 @Test listModelEvaluationSlicesExceptionTest2()1854 public void listModelEvaluationSlicesExceptionTest2() throws Exception { 1855 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1856 mockModelService.addException(exception); 1857 1858 try { 1859 String parent = "parent-995424086"; 1860 client.listModelEvaluationSlices(parent); 1861 Assert.fail("No exception raised"); 1862 } catch (InvalidArgumentException e) { 1863 // Expected exception. 1864 } 1865 } 1866 1867 @Test listLocationsTest()1868 public void listLocationsTest() throws Exception { 1869 Location responsesElement = Location.newBuilder().build(); 1870 ListLocationsResponse expectedResponse = 1871 ListLocationsResponse.newBuilder() 1872 .setNextPageToken("") 1873 .addAllLocations(Arrays.asList(responsesElement)) 1874 .build(); 1875 mockLocations.addResponse(expectedResponse); 1876 1877 ListLocationsRequest request = 1878 ListLocationsRequest.newBuilder() 1879 .setName("name3373707") 1880 .setFilter("filter-1274492040") 1881 .setPageSize(883849137) 1882 .setPageToken("pageToken873572522") 1883 .build(); 1884 1885 ListLocationsPagedResponse pagedListResponse = client.listLocations(request); 1886 1887 List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1888 1889 Assert.assertEquals(1, resources.size()); 1890 Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0)); 1891 1892 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 1893 Assert.assertEquals(1, actualRequests.size()); 1894 ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0)); 1895 1896 Assert.assertEquals(request.getName(), actualRequest.getName()); 1897 Assert.assertEquals(request.getFilter(), actualRequest.getFilter()); 1898 Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); 1899 Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); 1900 Assert.assertTrue( 1901 channelProvider.isHeaderSent( 1902 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1903 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1904 } 1905 1906 @Test listLocationsExceptionTest()1907 public void listLocationsExceptionTest() throws Exception { 1908 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1909 mockLocations.addException(exception); 1910 1911 try { 1912 ListLocationsRequest request = 1913 ListLocationsRequest.newBuilder() 1914 .setName("name3373707") 1915 .setFilter("filter-1274492040") 1916 .setPageSize(883849137) 1917 .setPageToken("pageToken873572522") 1918 .build(); 1919 client.listLocations(request); 1920 Assert.fail("No exception raised"); 1921 } catch (InvalidArgumentException e) { 1922 // Expected exception. 1923 } 1924 } 1925 1926 @Test getLocationTest()1927 public void getLocationTest() throws Exception { 1928 Location expectedResponse = 1929 Location.newBuilder() 1930 .setName("name3373707") 1931 .setLocationId("locationId1541836720") 1932 .setDisplayName("displayName1714148973") 1933 .putAllLabels(new HashMap<String, String>()) 1934 .setMetadata(Any.newBuilder().build()) 1935 .build(); 1936 mockLocations.addResponse(expectedResponse); 1937 1938 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 1939 1940 Location actualResponse = client.getLocation(request); 1941 Assert.assertEquals(expectedResponse, actualResponse); 1942 1943 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 1944 Assert.assertEquals(1, actualRequests.size()); 1945 GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0)); 1946 1947 Assert.assertEquals(request.getName(), actualRequest.getName()); 1948 Assert.assertTrue( 1949 channelProvider.isHeaderSent( 1950 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1951 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1952 } 1953 1954 @Test getLocationExceptionTest()1955 public void getLocationExceptionTest() throws Exception { 1956 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1957 mockLocations.addException(exception); 1958 1959 try { 1960 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 1961 client.getLocation(request); 1962 Assert.fail("No exception raised"); 1963 } catch (InvalidArgumentException e) { 1964 // Expected exception. 1965 } 1966 } 1967 1968 @Test setIamPolicyTest()1969 public void setIamPolicyTest() throws Exception { 1970 Policy expectedResponse = 1971 Policy.newBuilder() 1972 .setVersion(351608024) 1973 .addAllBindings(new ArrayList<Binding>()) 1974 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 1975 .setEtag(ByteString.EMPTY) 1976 .build(); 1977 mockIAMPolicy.addResponse(expectedResponse); 1978 1979 SetIamPolicyRequest request = 1980 SetIamPolicyRequest.newBuilder() 1981 .setResource( 1982 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1983 .toString()) 1984 .setPolicy(Policy.newBuilder().build()) 1985 .setUpdateMask(FieldMask.newBuilder().build()) 1986 .build(); 1987 1988 Policy actualResponse = client.setIamPolicy(request); 1989 Assert.assertEquals(expectedResponse, actualResponse); 1990 1991 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1992 Assert.assertEquals(1, actualRequests.size()); 1993 SetIamPolicyRequest actualRequest = ((SetIamPolicyRequest) actualRequests.get(0)); 1994 1995 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1996 Assert.assertEquals(request.getPolicy(), actualRequest.getPolicy()); 1997 Assert.assertEquals(request.getUpdateMask(), actualRequest.getUpdateMask()); 1998 Assert.assertTrue( 1999 channelProvider.isHeaderSent( 2000 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2001 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2002 } 2003 2004 @Test setIamPolicyExceptionTest()2005 public void setIamPolicyExceptionTest() throws Exception { 2006 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2007 mockIAMPolicy.addException(exception); 2008 2009 try { 2010 SetIamPolicyRequest request = 2011 SetIamPolicyRequest.newBuilder() 2012 .setResource( 2013 EndpointName.ofProjectLocationEndpointName( 2014 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2015 .toString()) 2016 .setPolicy(Policy.newBuilder().build()) 2017 .setUpdateMask(FieldMask.newBuilder().build()) 2018 .build(); 2019 client.setIamPolicy(request); 2020 Assert.fail("No exception raised"); 2021 } catch (InvalidArgumentException e) { 2022 // Expected exception. 2023 } 2024 } 2025 2026 @Test getIamPolicyTest()2027 public void getIamPolicyTest() throws Exception { 2028 Policy expectedResponse = 2029 Policy.newBuilder() 2030 .setVersion(351608024) 2031 .addAllBindings(new ArrayList<Binding>()) 2032 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 2033 .setEtag(ByteString.EMPTY) 2034 .build(); 2035 mockIAMPolicy.addResponse(expectedResponse); 2036 2037 GetIamPolicyRequest request = 2038 GetIamPolicyRequest.newBuilder() 2039 .setResource( 2040 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2041 .toString()) 2042 .setOptions(GetPolicyOptions.newBuilder().build()) 2043 .build(); 2044 2045 Policy actualResponse = client.getIamPolicy(request); 2046 Assert.assertEquals(expectedResponse, actualResponse); 2047 2048 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 2049 Assert.assertEquals(1, actualRequests.size()); 2050 GetIamPolicyRequest actualRequest = ((GetIamPolicyRequest) actualRequests.get(0)); 2051 2052 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 2053 Assert.assertEquals(request.getOptions(), actualRequest.getOptions()); 2054 Assert.assertTrue( 2055 channelProvider.isHeaderSent( 2056 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2057 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2058 } 2059 2060 @Test getIamPolicyExceptionTest()2061 public void getIamPolicyExceptionTest() throws Exception { 2062 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2063 mockIAMPolicy.addException(exception); 2064 2065 try { 2066 GetIamPolicyRequest request = 2067 GetIamPolicyRequest.newBuilder() 2068 .setResource( 2069 EndpointName.ofProjectLocationEndpointName( 2070 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2071 .toString()) 2072 .setOptions(GetPolicyOptions.newBuilder().build()) 2073 .build(); 2074 client.getIamPolicy(request); 2075 Assert.fail("No exception raised"); 2076 } catch (InvalidArgumentException e) { 2077 // Expected exception. 2078 } 2079 } 2080 2081 @Test testIamPermissionsTest()2082 public void testIamPermissionsTest() throws Exception { 2083 TestIamPermissionsResponse expectedResponse = 2084 TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 2085 mockIAMPolicy.addResponse(expectedResponse); 2086 2087 TestIamPermissionsRequest request = 2088 TestIamPermissionsRequest.newBuilder() 2089 .setResource( 2090 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2091 .toString()) 2092 .addAllPermissions(new ArrayList<String>()) 2093 .build(); 2094 2095 TestIamPermissionsResponse actualResponse = client.testIamPermissions(request); 2096 Assert.assertEquals(expectedResponse, actualResponse); 2097 2098 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 2099 Assert.assertEquals(1, actualRequests.size()); 2100 TestIamPermissionsRequest actualRequest = ((TestIamPermissionsRequest) actualRequests.get(0)); 2101 2102 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 2103 Assert.assertEquals(request.getPermissionsList(), actualRequest.getPermissionsList()); 2104 Assert.assertTrue( 2105 channelProvider.isHeaderSent( 2106 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2107 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2108 } 2109 2110 @Test testIamPermissionsExceptionTest()2111 public void testIamPermissionsExceptionTest() throws Exception { 2112 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2113 mockIAMPolicy.addException(exception); 2114 2115 try { 2116 TestIamPermissionsRequest request = 2117 TestIamPermissionsRequest.newBuilder() 2118 .setResource( 2119 EndpointName.ofProjectLocationEndpointName( 2120 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2121 .toString()) 2122 .addAllPermissions(new ArrayList<String>()) 2123 .build(); 2124 client.testIamPermissions(request); 2125 Assert.fail("No exception raised"); 2126 } catch (InvalidArgumentException e) { 2127 // Expected exception. 2128 } 2129 } 2130 } 2131