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.VizierServiceClient.ListLocationsPagedResponse; 20 import static com.google.cloud.aiplatform.v1.VizierServiceClient.ListStudiesPagedResponse; 21 import static com.google.cloud.aiplatform.v1.VizierServiceClient.ListTrialsPagedResponse; 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.iam.v1.AuditConfig; 37 import com.google.iam.v1.Binding; 38 import com.google.iam.v1.GetIamPolicyRequest; 39 import com.google.iam.v1.GetPolicyOptions; 40 import com.google.iam.v1.Policy; 41 import com.google.iam.v1.SetIamPolicyRequest; 42 import com.google.iam.v1.TestIamPermissionsRequest; 43 import com.google.iam.v1.TestIamPermissionsResponse; 44 import com.google.longrunning.Operation; 45 import com.google.protobuf.AbstractMessage; 46 import com.google.protobuf.Any; 47 import com.google.protobuf.ByteString; 48 import com.google.protobuf.Empty; 49 import com.google.protobuf.FieldMask; 50 import com.google.protobuf.Timestamp; 51 import io.grpc.StatusRuntimeException; 52 import java.io.IOException; 53 import java.util.ArrayList; 54 import java.util.Arrays; 55 import java.util.HashMap; 56 import java.util.List; 57 import java.util.UUID; 58 import java.util.concurrent.ExecutionException; 59 import javax.annotation.Generated; 60 import org.junit.After; 61 import org.junit.AfterClass; 62 import org.junit.Assert; 63 import org.junit.Before; 64 import org.junit.BeforeClass; 65 import org.junit.Test; 66 67 @Generated("by gapic-generator-java") 68 public class VizierServiceClientTest { 69 private static MockIAMPolicy mockIAMPolicy; 70 private static MockLocations mockLocations; 71 private static MockServiceHelper mockServiceHelper; 72 private static MockVizierService mockVizierService; 73 private LocalChannelProvider channelProvider; 74 private VizierServiceClient client; 75 76 @BeforeClass startStaticServer()77 public static void startStaticServer() { 78 mockVizierService = new MockVizierService(); 79 mockLocations = new MockLocations(); 80 mockIAMPolicy = new MockIAMPolicy(); 81 mockServiceHelper = 82 new MockServiceHelper( 83 UUID.randomUUID().toString(), 84 Arrays.<MockGrpcService>asList(mockVizierService, mockLocations, mockIAMPolicy)); 85 mockServiceHelper.start(); 86 } 87 88 @AfterClass stopServer()89 public static void stopServer() { 90 mockServiceHelper.stop(); 91 } 92 93 @Before setUp()94 public void setUp() throws IOException { 95 mockServiceHelper.reset(); 96 channelProvider = mockServiceHelper.createChannelProvider(); 97 VizierServiceSettings settings = 98 VizierServiceSettings.newBuilder() 99 .setTransportChannelProvider(channelProvider) 100 .setCredentialsProvider(NoCredentialsProvider.create()) 101 .build(); 102 client = VizierServiceClient.create(settings); 103 } 104 105 @After tearDown()106 public void tearDown() throws Exception { 107 client.close(); 108 } 109 110 @Test createStudyTest()111 public void createStudyTest() throws Exception { 112 Study expectedResponse = 113 Study.newBuilder() 114 .setName(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 115 .setDisplayName("displayName1714148973") 116 .setStudySpec(StudySpec.newBuilder().build()) 117 .setCreateTime(Timestamp.newBuilder().build()) 118 .setInactiveReason("inactiveReason1923653263") 119 .build(); 120 mockVizierService.addResponse(expectedResponse); 121 122 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 123 Study study = Study.newBuilder().build(); 124 125 Study actualResponse = client.createStudy(parent, study); 126 Assert.assertEquals(expectedResponse, actualResponse); 127 128 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 129 Assert.assertEquals(1, actualRequests.size()); 130 CreateStudyRequest actualRequest = ((CreateStudyRequest) actualRequests.get(0)); 131 132 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 133 Assert.assertEquals(study, actualRequest.getStudy()); 134 Assert.assertTrue( 135 channelProvider.isHeaderSent( 136 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 137 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 138 } 139 140 @Test createStudyExceptionTest()141 public void createStudyExceptionTest() throws Exception { 142 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 143 mockVizierService.addException(exception); 144 145 try { 146 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 147 Study study = Study.newBuilder().build(); 148 client.createStudy(parent, study); 149 Assert.fail("No exception raised"); 150 } catch (InvalidArgumentException e) { 151 // Expected exception. 152 } 153 } 154 155 @Test createStudyTest2()156 public void createStudyTest2() throws Exception { 157 Study expectedResponse = 158 Study.newBuilder() 159 .setName(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 160 .setDisplayName("displayName1714148973") 161 .setStudySpec(StudySpec.newBuilder().build()) 162 .setCreateTime(Timestamp.newBuilder().build()) 163 .setInactiveReason("inactiveReason1923653263") 164 .build(); 165 mockVizierService.addResponse(expectedResponse); 166 167 String parent = "parent-995424086"; 168 Study study = Study.newBuilder().build(); 169 170 Study actualResponse = client.createStudy(parent, study); 171 Assert.assertEquals(expectedResponse, actualResponse); 172 173 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 174 Assert.assertEquals(1, actualRequests.size()); 175 CreateStudyRequest actualRequest = ((CreateStudyRequest) actualRequests.get(0)); 176 177 Assert.assertEquals(parent, actualRequest.getParent()); 178 Assert.assertEquals(study, actualRequest.getStudy()); 179 Assert.assertTrue( 180 channelProvider.isHeaderSent( 181 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 182 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 183 } 184 185 @Test createStudyExceptionTest2()186 public void createStudyExceptionTest2() throws Exception { 187 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 188 mockVizierService.addException(exception); 189 190 try { 191 String parent = "parent-995424086"; 192 Study study = Study.newBuilder().build(); 193 client.createStudy(parent, study); 194 Assert.fail("No exception raised"); 195 } catch (InvalidArgumentException e) { 196 // Expected exception. 197 } 198 } 199 200 @Test getStudyTest()201 public void getStudyTest() throws Exception { 202 Study expectedResponse = 203 Study.newBuilder() 204 .setName(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 205 .setDisplayName("displayName1714148973") 206 .setStudySpec(StudySpec.newBuilder().build()) 207 .setCreateTime(Timestamp.newBuilder().build()) 208 .setInactiveReason("inactiveReason1923653263") 209 .build(); 210 mockVizierService.addResponse(expectedResponse); 211 212 StudyName name = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 213 214 Study actualResponse = client.getStudy(name); 215 Assert.assertEquals(expectedResponse, actualResponse); 216 217 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 218 Assert.assertEquals(1, actualRequests.size()); 219 GetStudyRequest actualRequest = ((GetStudyRequest) actualRequests.get(0)); 220 221 Assert.assertEquals(name.toString(), actualRequest.getName()); 222 Assert.assertTrue( 223 channelProvider.isHeaderSent( 224 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 225 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 226 } 227 228 @Test getStudyExceptionTest()229 public void getStudyExceptionTest() throws Exception { 230 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 231 mockVizierService.addException(exception); 232 233 try { 234 StudyName name = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 235 client.getStudy(name); 236 Assert.fail("No exception raised"); 237 } catch (InvalidArgumentException e) { 238 // Expected exception. 239 } 240 } 241 242 @Test getStudyTest2()243 public void getStudyTest2() throws Exception { 244 Study expectedResponse = 245 Study.newBuilder() 246 .setName(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 247 .setDisplayName("displayName1714148973") 248 .setStudySpec(StudySpec.newBuilder().build()) 249 .setCreateTime(Timestamp.newBuilder().build()) 250 .setInactiveReason("inactiveReason1923653263") 251 .build(); 252 mockVizierService.addResponse(expectedResponse); 253 254 String name = "name3373707"; 255 256 Study actualResponse = client.getStudy(name); 257 Assert.assertEquals(expectedResponse, actualResponse); 258 259 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 260 Assert.assertEquals(1, actualRequests.size()); 261 GetStudyRequest actualRequest = ((GetStudyRequest) actualRequests.get(0)); 262 263 Assert.assertEquals(name, actualRequest.getName()); 264 Assert.assertTrue( 265 channelProvider.isHeaderSent( 266 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 267 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 268 } 269 270 @Test getStudyExceptionTest2()271 public void getStudyExceptionTest2() throws Exception { 272 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 273 mockVizierService.addException(exception); 274 275 try { 276 String name = "name3373707"; 277 client.getStudy(name); 278 Assert.fail("No exception raised"); 279 } catch (InvalidArgumentException e) { 280 // Expected exception. 281 } 282 } 283 284 @Test listStudiesTest()285 public void listStudiesTest() throws Exception { 286 Study responsesElement = Study.newBuilder().build(); 287 ListStudiesResponse expectedResponse = 288 ListStudiesResponse.newBuilder() 289 .setNextPageToken("") 290 .addAllStudies(Arrays.asList(responsesElement)) 291 .build(); 292 mockVizierService.addResponse(expectedResponse); 293 294 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 295 296 ListStudiesPagedResponse pagedListResponse = client.listStudies(parent); 297 298 List<Study> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 299 300 Assert.assertEquals(1, resources.size()); 301 Assert.assertEquals(expectedResponse.getStudiesList().get(0), resources.get(0)); 302 303 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 304 Assert.assertEquals(1, actualRequests.size()); 305 ListStudiesRequest actualRequest = ((ListStudiesRequest) actualRequests.get(0)); 306 307 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 308 Assert.assertTrue( 309 channelProvider.isHeaderSent( 310 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 311 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 312 } 313 314 @Test listStudiesExceptionTest()315 public void listStudiesExceptionTest() throws Exception { 316 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 317 mockVizierService.addException(exception); 318 319 try { 320 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 321 client.listStudies(parent); 322 Assert.fail("No exception raised"); 323 } catch (InvalidArgumentException e) { 324 // Expected exception. 325 } 326 } 327 328 @Test listStudiesTest2()329 public void listStudiesTest2() throws Exception { 330 Study responsesElement = Study.newBuilder().build(); 331 ListStudiesResponse expectedResponse = 332 ListStudiesResponse.newBuilder() 333 .setNextPageToken("") 334 .addAllStudies(Arrays.asList(responsesElement)) 335 .build(); 336 mockVizierService.addResponse(expectedResponse); 337 338 String parent = "parent-995424086"; 339 340 ListStudiesPagedResponse pagedListResponse = client.listStudies(parent); 341 342 List<Study> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 343 344 Assert.assertEquals(1, resources.size()); 345 Assert.assertEquals(expectedResponse.getStudiesList().get(0), resources.get(0)); 346 347 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 348 Assert.assertEquals(1, actualRequests.size()); 349 ListStudiesRequest actualRequest = ((ListStudiesRequest) actualRequests.get(0)); 350 351 Assert.assertEquals(parent, actualRequest.getParent()); 352 Assert.assertTrue( 353 channelProvider.isHeaderSent( 354 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 355 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 356 } 357 358 @Test listStudiesExceptionTest2()359 public void listStudiesExceptionTest2() throws Exception { 360 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 361 mockVizierService.addException(exception); 362 363 try { 364 String parent = "parent-995424086"; 365 client.listStudies(parent); 366 Assert.fail("No exception raised"); 367 } catch (InvalidArgumentException e) { 368 // Expected exception. 369 } 370 } 371 372 @Test deleteStudyTest()373 public void deleteStudyTest() throws Exception { 374 Empty expectedResponse = Empty.newBuilder().build(); 375 mockVizierService.addResponse(expectedResponse); 376 377 StudyName name = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 378 379 client.deleteStudy(name); 380 381 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 382 Assert.assertEquals(1, actualRequests.size()); 383 DeleteStudyRequest actualRequest = ((DeleteStudyRequest) actualRequests.get(0)); 384 385 Assert.assertEquals(name.toString(), actualRequest.getName()); 386 Assert.assertTrue( 387 channelProvider.isHeaderSent( 388 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 389 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 390 } 391 392 @Test deleteStudyExceptionTest()393 public void deleteStudyExceptionTest() throws Exception { 394 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 395 mockVizierService.addException(exception); 396 397 try { 398 StudyName name = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 399 client.deleteStudy(name); 400 Assert.fail("No exception raised"); 401 } catch (InvalidArgumentException e) { 402 // Expected exception. 403 } 404 } 405 406 @Test deleteStudyTest2()407 public void deleteStudyTest2() throws Exception { 408 Empty expectedResponse = Empty.newBuilder().build(); 409 mockVizierService.addResponse(expectedResponse); 410 411 String name = "name3373707"; 412 413 client.deleteStudy(name); 414 415 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 416 Assert.assertEquals(1, actualRequests.size()); 417 DeleteStudyRequest actualRequest = ((DeleteStudyRequest) actualRequests.get(0)); 418 419 Assert.assertEquals(name, actualRequest.getName()); 420 Assert.assertTrue( 421 channelProvider.isHeaderSent( 422 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 423 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 424 } 425 426 @Test deleteStudyExceptionTest2()427 public void deleteStudyExceptionTest2() throws Exception { 428 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 429 mockVizierService.addException(exception); 430 431 try { 432 String name = "name3373707"; 433 client.deleteStudy(name); 434 Assert.fail("No exception raised"); 435 } catch (InvalidArgumentException e) { 436 // Expected exception. 437 } 438 } 439 440 @Test lookupStudyTest()441 public void lookupStudyTest() throws Exception { 442 Study expectedResponse = 443 Study.newBuilder() 444 .setName(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 445 .setDisplayName("displayName1714148973") 446 .setStudySpec(StudySpec.newBuilder().build()) 447 .setCreateTime(Timestamp.newBuilder().build()) 448 .setInactiveReason("inactiveReason1923653263") 449 .build(); 450 mockVizierService.addResponse(expectedResponse); 451 452 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 453 454 Study actualResponse = client.lookupStudy(parent); 455 Assert.assertEquals(expectedResponse, actualResponse); 456 457 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 458 Assert.assertEquals(1, actualRequests.size()); 459 LookupStudyRequest actualRequest = ((LookupStudyRequest) actualRequests.get(0)); 460 461 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 462 Assert.assertTrue( 463 channelProvider.isHeaderSent( 464 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 465 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 466 } 467 468 @Test lookupStudyExceptionTest()469 public void lookupStudyExceptionTest() throws Exception { 470 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 471 mockVizierService.addException(exception); 472 473 try { 474 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 475 client.lookupStudy(parent); 476 Assert.fail("No exception raised"); 477 } catch (InvalidArgumentException e) { 478 // Expected exception. 479 } 480 } 481 482 @Test lookupStudyTest2()483 public void lookupStudyTest2() throws Exception { 484 Study expectedResponse = 485 Study.newBuilder() 486 .setName(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 487 .setDisplayName("displayName1714148973") 488 .setStudySpec(StudySpec.newBuilder().build()) 489 .setCreateTime(Timestamp.newBuilder().build()) 490 .setInactiveReason("inactiveReason1923653263") 491 .build(); 492 mockVizierService.addResponse(expectedResponse); 493 494 String parent = "parent-995424086"; 495 496 Study actualResponse = client.lookupStudy(parent); 497 Assert.assertEquals(expectedResponse, actualResponse); 498 499 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 500 Assert.assertEquals(1, actualRequests.size()); 501 LookupStudyRequest actualRequest = ((LookupStudyRequest) actualRequests.get(0)); 502 503 Assert.assertEquals(parent, actualRequest.getParent()); 504 Assert.assertTrue( 505 channelProvider.isHeaderSent( 506 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 507 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 508 } 509 510 @Test lookupStudyExceptionTest2()511 public void lookupStudyExceptionTest2() throws Exception { 512 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 513 mockVizierService.addException(exception); 514 515 try { 516 String parent = "parent-995424086"; 517 client.lookupStudy(parent); 518 Assert.fail("No exception raised"); 519 } catch (InvalidArgumentException e) { 520 // Expected exception. 521 } 522 } 523 524 @Test suggestTrialsTest()525 public void suggestTrialsTest() throws Exception { 526 SuggestTrialsResponse expectedResponse = 527 SuggestTrialsResponse.newBuilder() 528 .addAllTrials(new ArrayList<Trial>()) 529 .setStartTime(Timestamp.newBuilder().build()) 530 .setEndTime(Timestamp.newBuilder().build()) 531 .build(); 532 Operation resultOperation = 533 Operation.newBuilder() 534 .setName("suggestTrialsTest") 535 .setDone(true) 536 .setResponse(Any.pack(expectedResponse)) 537 .build(); 538 mockVizierService.addResponse(resultOperation); 539 540 SuggestTrialsRequest request = 541 SuggestTrialsRequest.newBuilder() 542 .setParent(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 543 .setSuggestionCount(390130452) 544 .setClientId("clientId908408390") 545 .build(); 546 547 SuggestTrialsResponse actualResponse = client.suggestTrialsAsync(request).get(); 548 Assert.assertEquals(expectedResponse, actualResponse); 549 550 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 551 Assert.assertEquals(1, actualRequests.size()); 552 SuggestTrialsRequest actualRequest = ((SuggestTrialsRequest) actualRequests.get(0)); 553 554 Assert.assertEquals(request.getParent(), actualRequest.getParent()); 555 Assert.assertEquals(request.getSuggestionCount(), actualRequest.getSuggestionCount()); 556 Assert.assertEquals(request.getClientId(), actualRequest.getClientId()); 557 Assert.assertTrue( 558 channelProvider.isHeaderSent( 559 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 560 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 561 } 562 563 @Test suggestTrialsExceptionTest()564 public void suggestTrialsExceptionTest() throws Exception { 565 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 566 mockVizierService.addException(exception); 567 568 try { 569 SuggestTrialsRequest request = 570 SuggestTrialsRequest.newBuilder() 571 .setParent(StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]").toString()) 572 .setSuggestionCount(390130452) 573 .setClientId("clientId908408390") 574 .build(); 575 client.suggestTrialsAsync(request).get(); 576 Assert.fail("No exception raised"); 577 } catch (ExecutionException e) { 578 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 579 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 580 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 581 } 582 } 583 584 @Test createTrialTest()585 public void createTrialTest() throws Exception { 586 Trial expectedResponse = 587 Trial.newBuilder() 588 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 589 .setId("id3355") 590 .addAllParameters(new ArrayList<Trial.Parameter>()) 591 .setFinalMeasurement(Measurement.newBuilder().build()) 592 .addAllMeasurements(new ArrayList<Measurement>()) 593 .setStartTime(Timestamp.newBuilder().build()) 594 .setEndTime(Timestamp.newBuilder().build()) 595 .setClientId("clientId908408390") 596 .setInfeasibleReason("infeasibleReason1040725388") 597 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 598 .putAllWebAccessUris(new HashMap<String, String>()) 599 .build(); 600 mockVizierService.addResponse(expectedResponse); 601 602 StudyName parent = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 603 Trial trial = Trial.newBuilder().build(); 604 605 Trial actualResponse = client.createTrial(parent, trial); 606 Assert.assertEquals(expectedResponse, actualResponse); 607 608 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 609 Assert.assertEquals(1, actualRequests.size()); 610 CreateTrialRequest actualRequest = ((CreateTrialRequest) actualRequests.get(0)); 611 612 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 613 Assert.assertEquals(trial, actualRequest.getTrial()); 614 Assert.assertTrue( 615 channelProvider.isHeaderSent( 616 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 617 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 618 } 619 620 @Test createTrialExceptionTest()621 public void createTrialExceptionTest() throws Exception { 622 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 623 mockVizierService.addException(exception); 624 625 try { 626 StudyName parent = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 627 Trial trial = Trial.newBuilder().build(); 628 client.createTrial(parent, trial); 629 Assert.fail("No exception raised"); 630 } catch (InvalidArgumentException e) { 631 // Expected exception. 632 } 633 } 634 635 @Test createTrialTest2()636 public void createTrialTest2() throws Exception { 637 Trial expectedResponse = 638 Trial.newBuilder() 639 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 640 .setId("id3355") 641 .addAllParameters(new ArrayList<Trial.Parameter>()) 642 .setFinalMeasurement(Measurement.newBuilder().build()) 643 .addAllMeasurements(new ArrayList<Measurement>()) 644 .setStartTime(Timestamp.newBuilder().build()) 645 .setEndTime(Timestamp.newBuilder().build()) 646 .setClientId("clientId908408390") 647 .setInfeasibleReason("infeasibleReason1040725388") 648 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 649 .putAllWebAccessUris(new HashMap<String, String>()) 650 .build(); 651 mockVizierService.addResponse(expectedResponse); 652 653 String parent = "parent-995424086"; 654 Trial trial = Trial.newBuilder().build(); 655 656 Trial actualResponse = client.createTrial(parent, trial); 657 Assert.assertEquals(expectedResponse, actualResponse); 658 659 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 660 Assert.assertEquals(1, actualRequests.size()); 661 CreateTrialRequest actualRequest = ((CreateTrialRequest) actualRequests.get(0)); 662 663 Assert.assertEquals(parent, actualRequest.getParent()); 664 Assert.assertEquals(trial, actualRequest.getTrial()); 665 Assert.assertTrue( 666 channelProvider.isHeaderSent( 667 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 668 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 669 } 670 671 @Test createTrialExceptionTest2()672 public void createTrialExceptionTest2() throws Exception { 673 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 674 mockVizierService.addException(exception); 675 676 try { 677 String parent = "parent-995424086"; 678 Trial trial = Trial.newBuilder().build(); 679 client.createTrial(parent, trial); 680 Assert.fail("No exception raised"); 681 } catch (InvalidArgumentException e) { 682 // Expected exception. 683 } 684 } 685 686 @Test getTrialTest()687 public void getTrialTest() throws Exception { 688 Trial expectedResponse = 689 Trial.newBuilder() 690 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 691 .setId("id3355") 692 .addAllParameters(new ArrayList<Trial.Parameter>()) 693 .setFinalMeasurement(Measurement.newBuilder().build()) 694 .addAllMeasurements(new ArrayList<Measurement>()) 695 .setStartTime(Timestamp.newBuilder().build()) 696 .setEndTime(Timestamp.newBuilder().build()) 697 .setClientId("clientId908408390") 698 .setInfeasibleReason("infeasibleReason1040725388") 699 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 700 .putAllWebAccessUris(new HashMap<String, String>()) 701 .build(); 702 mockVizierService.addResponse(expectedResponse); 703 704 TrialName name = TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]"); 705 706 Trial actualResponse = client.getTrial(name); 707 Assert.assertEquals(expectedResponse, actualResponse); 708 709 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 710 Assert.assertEquals(1, actualRequests.size()); 711 GetTrialRequest actualRequest = ((GetTrialRequest) actualRequests.get(0)); 712 713 Assert.assertEquals(name.toString(), actualRequest.getName()); 714 Assert.assertTrue( 715 channelProvider.isHeaderSent( 716 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 717 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 718 } 719 720 @Test getTrialExceptionTest()721 public void getTrialExceptionTest() throws Exception { 722 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 723 mockVizierService.addException(exception); 724 725 try { 726 TrialName name = TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]"); 727 client.getTrial(name); 728 Assert.fail("No exception raised"); 729 } catch (InvalidArgumentException e) { 730 // Expected exception. 731 } 732 } 733 734 @Test getTrialTest2()735 public void getTrialTest2() throws Exception { 736 Trial expectedResponse = 737 Trial.newBuilder() 738 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 739 .setId("id3355") 740 .addAllParameters(new ArrayList<Trial.Parameter>()) 741 .setFinalMeasurement(Measurement.newBuilder().build()) 742 .addAllMeasurements(new ArrayList<Measurement>()) 743 .setStartTime(Timestamp.newBuilder().build()) 744 .setEndTime(Timestamp.newBuilder().build()) 745 .setClientId("clientId908408390") 746 .setInfeasibleReason("infeasibleReason1040725388") 747 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 748 .putAllWebAccessUris(new HashMap<String, String>()) 749 .build(); 750 mockVizierService.addResponse(expectedResponse); 751 752 String name = "name3373707"; 753 754 Trial actualResponse = client.getTrial(name); 755 Assert.assertEquals(expectedResponse, actualResponse); 756 757 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 758 Assert.assertEquals(1, actualRequests.size()); 759 GetTrialRequest actualRequest = ((GetTrialRequest) actualRequests.get(0)); 760 761 Assert.assertEquals(name, actualRequest.getName()); 762 Assert.assertTrue( 763 channelProvider.isHeaderSent( 764 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 765 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 766 } 767 768 @Test getTrialExceptionTest2()769 public void getTrialExceptionTest2() throws Exception { 770 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 771 mockVizierService.addException(exception); 772 773 try { 774 String name = "name3373707"; 775 client.getTrial(name); 776 Assert.fail("No exception raised"); 777 } catch (InvalidArgumentException e) { 778 // Expected exception. 779 } 780 } 781 782 @Test listTrialsTest()783 public void listTrialsTest() throws Exception { 784 Trial responsesElement = Trial.newBuilder().build(); 785 ListTrialsResponse expectedResponse = 786 ListTrialsResponse.newBuilder() 787 .setNextPageToken("") 788 .addAllTrials(Arrays.asList(responsesElement)) 789 .build(); 790 mockVizierService.addResponse(expectedResponse); 791 792 StudyName parent = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 793 794 ListTrialsPagedResponse pagedListResponse = client.listTrials(parent); 795 796 List<Trial> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 797 798 Assert.assertEquals(1, resources.size()); 799 Assert.assertEquals(expectedResponse.getTrialsList().get(0), resources.get(0)); 800 801 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 802 Assert.assertEquals(1, actualRequests.size()); 803 ListTrialsRequest actualRequest = ((ListTrialsRequest) actualRequests.get(0)); 804 805 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 806 Assert.assertTrue( 807 channelProvider.isHeaderSent( 808 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 809 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 810 } 811 812 @Test listTrialsExceptionTest()813 public void listTrialsExceptionTest() throws Exception { 814 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 815 mockVizierService.addException(exception); 816 817 try { 818 StudyName parent = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 819 client.listTrials(parent); 820 Assert.fail("No exception raised"); 821 } catch (InvalidArgumentException e) { 822 // Expected exception. 823 } 824 } 825 826 @Test listTrialsTest2()827 public void listTrialsTest2() throws Exception { 828 Trial responsesElement = Trial.newBuilder().build(); 829 ListTrialsResponse expectedResponse = 830 ListTrialsResponse.newBuilder() 831 .setNextPageToken("") 832 .addAllTrials(Arrays.asList(responsesElement)) 833 .build(); 834 mockVizierService.addResponse(expectedResponse); 835 836 String parent = "parent-995424086"; 837 838 ListTrialsPagedResponse pagedListResponse = client.listTrials(parent); 839 840 List<Trial> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 841 842 Assert.assertEquals(1, resources.size()); 843 Assert.assertEquals(expectedResponse.getTrialsList().get(0), resources.get(0)); 844 845 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 846 Assert.assertEquals(1, actualRequests.size()); 847 ListTrialsRequest actualRequest = ((ListTrialsRequest) actualRequests.get(0)); 848 849 Assert.assertEquals(parent, actualRequest.getParent()); 850 Assert.assertTrue( 851 channelProvider.isHeaderSent( 852 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 853 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 854 } 855 856 @Test listTrialsExceptionTest2()857 public void listTrialsExceptionTest2() throws Exception { 858 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 859 mockVizierService.addException(exception); 860 861 try { 862 String parent = "parent-995424086"; 863 client.listTrials(parent); 864 Assert.fail("No exception raised"); 865 } catch (InvalidArgumentException e) { 866 // Expected exception. 867 } 868 } 869 870 @Test addTrialMeasurementTest()871 public void addTrialMeasurementTest() throws Exception { 872 Trial expectedResponse = 873 Trial.newBuilder() 874 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 875 .setId("id3355") 876 .addAllParameters(new ArrayList<Trial.Parameter>()) 877 .setFinalMeasurement(Measurement.newBuilder().build()) 878 .addAllMeasurements(new ArrayList<Measurement>()) 879 .setStartTime(Timestamp.newBuilder().build()) 880 .setEndTime(Timestamp.newBuilder().build()) 881 .setClientId("clientId908408390") 882 .setInfeasibleReason("infeasibleReason1040725388") 883 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 884 .putAllWebAccessUris(new HashMap<String, String>()) 885 .build(); 886 mockVizierService.addResponse(expectedResponse); 887 888 AddTrialMeasurementRequest request = 889 AddTrialMeasurementRequest.newBuilder() 890 .setTrialName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 891 .setMeasurement(Measurement.newBuilder().build()) 892 .build(); 893 894 Trial actualResponse = client.addTrialMeasurement(request); 895 Assert.assertEquals(expectedResponse, actualResponse); 896 897 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 898 Assert.assertEquals(1, actualRequests.size()); 899 AddTrialMeasurementRequest actualRequest = ((AddTrialMeasurementRequest) actualRequests.get(0)); 900 901 Assert.assertEquals(request.getTrialName(), actualRequest.getTrialName()); 902 Assert.assertEquals(request.getMeasurement(), actualRequest.getMeasurement()); 903 Assert.assertTrue( 904 channelProvider.isHeaderSent( 905 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 906 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 907 } 908 909 @Test addTrialMeasurementExceptionTest()910 public void addTrialMeasurementExceptionTest() throws Exception { 911 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 912 mockVizierService.addException(exception); 913 914 try { 915 AddTrialMeasurementRequest request = 916 AddTrialMeasurementRequest.newBuilder() 917 .setTrialName( 918 TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 919 .setMeasurement(Measurement.newBuilder().build()) 920 .build(); 921 client.addTrialMeasurement(request); 922 Assert.fail("No exception raised"); 923 } catch (InvalidArgumentException e) { 924 // Expected exception. 925 } 926 } 927 928 @Test completeTrialTest()929 public void completeTrialTest() throws Exception { 930 Trial expectedResponse = 931 Trial.newBuilder() 932 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 933 .setId("id3355") 934 .addAllParameters(new ArrayList<Trial.Parameter>()) 935 .setFinalMeasurement(Measurement.newBuilder().build()) 936 .addAllMeasurements(new ArrayList<Measurement>()) 937 .setStartTime(Timestamp.newBuilder().build()) 938 .setEndTime(Timestamp.newBuilder().build()) 939 .setClientId("clientId908408390") 940 .setInfeasibleReason("infeasibleReason1040725388") 941 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 942 .putAllWebAccessUris(new HashMap<String, String>()) 943 .build(); 944 mockVizierService.addResponse(expectedResponse); 945 946 CompleteTrialRequest request = 947 CompleteTrialRequest.newBuilder() 948 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 949 .setFinalMeasurement(Measurement.newBuilder().build()) 950 .setTrialInfeasible(true) 951 .setInfeasibleReason("infeasibleReason1040725388") 952 .build(); 953 954 Trial actualResponse = client.completeTrial(request); 955 Assert.assertEquals(expectedResponse, actualResponse); 956 957 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 958 Assert.assertEquals(1, actualRequests.size()); 959 CompleteTrialRequest actualRequest = ((CompleteTrialRequest) actualRequests.get(0)); 960 961 Assert.assertEquals(request.getName(), actualRequest.getName()); 962 Assert.assertEquals(request.getFinalMeasurement(), actualRequest.getFinalMeasurement()); 963 Assert.assertEquals(request.getTrialInfeasible(), actualRequest.getTrialInfeasible()); 964 Assert.assertEquals(request.getInfeasibleReason(), actualRequest.getInfeasibleReason()); 965 Assert.assertTrue( 966 channelProvider.isHeaderSent( 967 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 968 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 969 } 970 971 @Test completeTrialExceptionTest()972 public void completeTrialExceptionTest() throws Exception { 973 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 974 mockVizierService.addException(exception); 975 976 try { 977 CompleteTrialRequest request = 978 CompleteTrialRequest.newBuilder() 979 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 980 .setFinalMeasurement(Measurement.newBuilder().build()) 981 .setTrialInfeasible(true) 982 .setInfeasibleReason("infeasibleReason1040725388") 983 .build(); 984 client.completeTrial(request); 985 Assert.fail("No exception raised"); 986 } catch (InvalidArgumentException e) { 987 // Expected exception. 988 } 989 } 990 991 @Test deleteTrialTest()992 public void deleteTrialTest() throws Exception { 993 Empty expectedResponse = Empty.newBuilder().build(); 994 mockVizierService.addResponse(expectedResponse); 995 996 TrialName name = TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]"); 997 998 client.deleteTrial(name); 999 1000 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 1001 Assert.assertEquals(1, actualRequests.size()); 1002 DeleteTrialRequest actualRequest = ((DeleteTrialRequest) actualRequests.get(0)); 1003 1004 Assert.assertEquals(name.toString(), actualRequest.getName()); 1005 Assert.assertTrue( 1006 channelProvider.isHeaderSent( 1007 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1008 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1009 } 1010 1011 @Test deleteTrialExceptionTest()1012 public void deleteTrialExceptionTest() throws Exception { 1013 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1014 mockVizierService.addException(exception); 1015 1016 try { 1017 TrialName name = TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]"); 1018 client.deleteTrial(name); 1019 Assert.fail("No exception raised"); 1020 } catch (InvalidArgumentException e) { 1021 // Expected exception. 1022 } 1023 } 1024 1025 @Test deleteTrialTest2()1026 public void deleteTrialTest2() throws Exception { 1027 Empty expectedResponse = Empty.newBuilder().build(); 1028 mockVizierService.addResponse(expectedResponse); 1029 1030 String name = "name3373707"; 1031 1032 client.deleteTrial(name); 1033 1034 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 1035 Assert.assertEquals(1, actualRequests.size()); 1036 DeleteTrialRequest actualRequest = ((DeleteTrialRequest) actualRequests.get(0)); 1037 1038 Assert.assertEquals(name, actualRequest.getName()); 1039 Assert.assertTrue( 1040 channelProvider.isHeaderSent( 1041 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1042 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1043 } 1044 1045 @Test deleteTrialExceptionTest2()1046 public void deleteTrialExceptionTest2() throws Exception { 1047 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1048 mockVizierService.addException(exception); 1049 1050 try { 1051 String name = "name3373707"; 1052 client.deleteTrial(name); 1053 Assert.fail("No exception raised"); 1054 } catch (InvalidArgumentException e) { 1055 // Expected exception. 1056 } 1057 } 1058 1059 @Test checkTrialEarlyStoppingStateTest()1060 public void checkTrialEarlyStoppingStateTest() throws Exception { 1061 CheckTrialEarlyStoppingStateResponse expectedResponse = 1062 CheckTrialEarlyStoppingStateResponse.newBuilder().setShouldStop(true).build(); 1063 Operation resultOperation = 1064 Operation.newBuilder() 1065 .setName("checkTrialEarlyStoppingStateTest") 1066 .setDone(true) 1067 .setResponse(Any.pack(expectedResponse)) 1068 .build(); 1069 mockVizierService.addResponse(resultOperation); 1070 1071 CheckTrialEarlyStoppingStateRequest request = 1072 CheckTrialEarlyStoppingStateRequest.newBuilder() 1073 .setTrialName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 1074 .build(); 1075 1076 CheckTrialEarlyStoppingStateResponse actualResponse = 1077 client.checkTrialEarlyStoppingStateAsync(request).get(); 1078 Assert.assertEquals(expectedResponse, actualResponse); 1079 1080 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 1081 Assert.assertEquals(1, actualRequests.size()); 1082 CheckTrialEarlyStoppingStateRequest actualRequest = 1083 ((CheckTrialEarlyStoppingStateRequest) actualRequests.get(0)); 1084 1085 Assert.assertEquals(request.getTrialName(), actualRequest.getTrialName()); 1086 Assert.assertTrue( 1087 channelProvider.isHeaderSent( 1088 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1089 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1090 } 1091 1092 @Test checkTrialEarlyStoppingStateExceptionTest()1093 public void checkTrialEarlyStoppingStateExceptionTest() throws Exception { 1094 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1095 mockVizierService.addException(exception); 1096 1097 try { 1098 CheckTrialEarlyStoppingStateRequest request = 1099 CheckTrialEarlyStoppingStateRequest.newBuilder() 1100 .setTrialName( 1101 TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 1102 .build(); 1103 client.checkTrialEarlyStoppingStateAsync(request).get(); 1104 Assert.fail("No exception raised"); 1105 } catch (ExecutionException e) { 1106 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1107 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1108 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1109 } 1110 } 1111 1112 @Test stopTrialTest()1113 public void stopTrialTest() throws Exception { 1114 Trial expectedResponse = 1115 Trial.newBuilder() 1116 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 1117 .setId("id3355") 1118 .addAllParameters(new ArrayList<Trial.Parameter>()) 1119 .setFinalMeasurement(Measurement.newBuilder().build()) 1120 .addAllMeasurements(new ArrayList<Measurement>()) 1121 .setStartTime(Timestamp.newBuilder().build()) 1122 .setEndTime(Timestamp.newBuilder().build()) 1123 .setClientId("clientId908408390") 1124 .setInfeasibleReason("infeasibleReason1040725388") 1125 .setCustomJob(CustomJobName.of("[PROJECT]", "[LOCATION]", "[CUSTOM_JOB]").toString()) 1126 .putAllWebAccessUris(new HashMap<String, String>()) 1127 .build(); 1128 mockVizierService.addResponse(expectedResponse); 1129 1130 StopTrialRequest request = 1131 StopTrialRequest.newBuilder() 1132 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 1133 .build(); 1134 1135 Trial actualResponse = client.stopTrial(request); 1136 Assert.assertEquals(expectedResponse, actualResponse); 1137 1138 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 1139 Assert.assertEquals(1, actualRequests.size()); 1140 StopTrialRequest actualRequest = ((StopTrialRequest) actualRequests.get(0)); 1141 1142 Assert.assertEquals(request.getName(), actualRequest.getName()); 1143 Assert.assertTrue( 1144 channelProvider.isHeaderSent( 1145 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1146 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1147 } 1148 1149 @Test stopTrialExceptionTest()1150 public void stopTrialExceptionTest() throws Exception { 1151 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1152 mockVizierService.addException(exception); 1153 1154 try { 1155 StopTrialRequest request = 1156 StopTrialRequest.newBuilder() 1157 .setName(TrialName.of("[PROJECT]", "[LOCATION]", "[STUDY]", "[TRIAL]").toString()) 1158 .build(); 1159 client.stopTrial(request); 1160 Assert.fail("No exception raised"); 1161 } catch (InvalidArgumentException e) { 1162 // Expected exception. 1163 } 1164 } 1165 1166 @Test listOptimalTrialsTest()1167 public void listOptimalTrialsTest() throws Exception { 1168 ListOptimalTrialsResponse expectedResponse = 1169 ListOptimalTrialsResponse.newBuilder().addAllOptimalTrials(new ArrayList<Trial>()).build(); 1170 mockVizierService.addResponse(expectedResponse); 1171 1172 StudyName parent = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 1173 1174 ListOptimalTrialsResponse actualResponse = client.listOptimalTrials(parent); 1175 Assert.assertEquals(expectedResponse, actualResponse); 1176 1177 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 1178 Assert.assertEquals(1, actualRequests.size()); 1179 ListOptimalTrialsRequest actualRequest = ((ListOptimalTrialsRequest) actualRequests.get(0)); 1180 1181 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1182 Assert.assertTrue( 1183 channelProvider.isHeaderSent( 1184 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1185 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1186 } 1187 1188 @Test listOptimalTrialsExceptionTest()1189 public void listOptimalTrialsExceptionTest() throws Exception { 1190 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1191 mockVizierService.addException(exception); 1192 1193 try { 1194 StudyName parent = StudyName.of("[PROJECT]", "[LOCATION]", "[STUDY]"); 1195 client.listOptimalTrials(parent); 1196 Assert.fail("No exception raised"); 1197 } catch (InvalidArgumentException e) { 1198 // Expected exception. 1199 } 1200 } 1201 1202 @Test listOptimalTrialsTest2()1203 public void listOptimalTrialsTest2() throws Exception { 1204 ListOptimalTrialsResponse expectedResponse = 1205 ListOptimalTrialsResponse.newBuilder().addAllOptimalTrials(new ArrayList<Trial>()).build(); 1206 mockVizierService.addResponse(expectedResponse); 1207 1208 String parent = "parent-995424086"; 1209 1210 ListOptimalTrialsResponse actualResponse = client.listOptimalTrials(parent); 1211 Assert.assertEquals(expectedResponse, actualResponse); 1212 1213 List<AbstractMessage> actualRequests = mockVizierService.getRequests(); 1214 Assert.assertEquals(1, actualRequests.size()); 1215 ListOptimalTrialsRequest actualRequest = ((ListOptimalTrialsRequest) actualRequests.get(0)); 1216 1217 Assert.assertEquals(parent, actualRequest.getParent()); 1218 Assert.assertTrue( 1219 channelProvider.isHeaderSent( 1220 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1221 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1222 } 1223 1224 @Test listOptimalTrialsExceptionTest2()1225 public void listOptimalTrialsExceptionTest2() throws Exception { 1226 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1227 mockVizierService.addException(exception); 1228 1229 try { 1230 String parent = "parent-995424086"; 1231 client.listOptimalTrials(parent); 1232 Assert.fail("No exception raised"); 1233 } catch (InvalidArgumentException e) { 1234 // Expected exception. 1235 } 1236 } 1237 1238 @Test listLocationsTest()1239 public void listLocationsTest() throws Exception { 1240 Location responsesElement = Location.newBuilder().build(); 1241 ListLocationsResponse expectedResponse = 1242 ListLocationsResponse.newBuilder() 1243 .setNextPageToken("") 1244 .addAllLocations(Arrays.asList(responsesElement)) 1245 .build(); 1246 mockLocations.addResponse(expectedResponse); 1247 1248 ListLocationsRequest request = 1249 ListLocationsRequest.newBuilder() 1250 .setName("name3373707") 1251 .setFilter("filter-1274492040") 1252 .setPageSize(883849137) 1253 .setPageToken("pageToken873572522") 1254 .build(); 1255 1256 ListLocationsPagedResponse pagedListResponse = client.listLocations(request); 1257 1258 List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1259 1260 Assert.assertEquals(1, resources.size()); 1261 Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0)); 1262 1263 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 1264 Assert.assertEquals(1, actualRequests.size()); 1265 ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0)); 1266 1267 Assert.assertEquals(request.getName(), actualRequest.getName()); 1268 Assert.assertEquals(request.getFilter(), actualRequest.getFilter()); 1269 Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); 1270 Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); 1271 Assert.assertTrue( 1272 channelProvider.isHeaderSent( 1273 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1274 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1275 } 1276 1277 @Test listLocationsExceptionTest()1278 public void listLocationsExceptionTest() throws Exception { 1279 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1280 mockLocations.addException(exception); 1281 1282 try { 1283 ListLocationsRequest request = 1284 ListLocationsRequest.newBuilder() 1285 .setName("name3373707") 1286 .setFilter("filter-1274492040") 1287 .setPageSize(883849137) 1288 .setPageToken("pageToken873572522") 1289 .build(); 1290 client.listLocations(request); 1291 Assert.fail("No exception raised"); 1292 } catch (InvalidArgumentException e) { 1293 // Expected exception. 1294 } 1295 } 1296 1297 @Test getLocationTest()1298 public void getLocationTest() throws Exception { 1299 Location expectedResponse = 1300 Location.newBuilder() 1301 .setName("name3373707") 1302 .setLocationId("locationId1541836720") 1303 .setDisplayName("displayName1714148973") 1304 .putAllLabels(new HashMap<String, String>()) 1305 .setMetadata(Any.newBuilder().build()) 1306 .build(); 1307 mockLocations.addResponse(expectedResponse); 1308 1309 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 1310 1311 Location actualResponse = client.getLocation(request); 1312 Assert.assertEquals(expectedResponse, actualResponse); 1313 1314 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 1315 Assert.assertEquals(1, actualRequests.size()); 1316 GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0)); 1317 1318 Assert.assertEquals(request.getName(), actualRequest.getName()); 1319 Assert.assertTrue( 1320 channelProvider.isHeaderSent( 1321 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1322 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1323 } 1324 1325 @Test getLocationExceptionTest()1326 public void getLocationExceptionTest() throws Exception { 1327 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1328 mockLocations.addException(exception); 1329 1330 try { 1331 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 1332 client.getLocation(request); 1333 Assert.fail("No exception raised"); 1334 } catch (InvalidArgumentException e) { 1335 // Expected exception. 1336 } 1337 } 1338 1339 @Test setIamPolicyTest()1340 public void setIamPolicyTest() throws Exception { 1341 Policy expectedResponse = 1342 Policy.newBuilder() 1343 .setVersion(351608024) 1344 .addAllBindings(new ArrayList<Binding>()) 1345 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 1346 .setEtag(ByteString.EMPTY) 1347 .build(); 1348 mockIAMPolicy.addResponse(expectedResponse); 1349 1350 SetIamPolicyRequest request = 1351 SetIamPolicyRequest.newBuilder() 1352 .setResource( 1353 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1354 .toString()) 1355 .setPolicy(Policy.newBuilder().build()) 1356 .setUpdateMask(FieldMask.newBuilder().build()) 1357 .build(); 1358 1359 Policy actualResponse = client.setIamPolicy(request); 1360 Assert.assertEquals(expectedResponse, actualResponse); 1361 1362 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1363 Assert.assertEquals(1, actualRequests.size()); 1364 SetIamPolicyRequest actualRequest = ((SetIamPolicyRequest) actualRequests.get(0)); 1365 1366 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1367 Assert.assertEquals(request.getPolicy(), actualRequest.getPolicy()); 1368 Assert.assertEquals(request.getUpdateMask(), actualRequest.getUpdateMask()); 1369 Assert.assertTrue( 1370 channelProvider.isHeaderSent( 1371 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1372 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1373 } 1374 1375 @Test setIamPolicyExceptionTest()1376 public void setIamPolicyExceptionTest() throws Exception { 1377 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1378 mockIAMPolicy.addException(exception); 1379 1380 try { 1381 SetIamPolicyRequest request = 1382 SetIamPolicyRequest.newBuilder() 1383 .setResource( 1384 EndpointName.ofProjectLocationEndpointName( 1385 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1386 .toString()) 1387 .setPolicy(Policy.newBuilder().build()) 1388 .setUpdateMask(FieldMask.newBuilder().build()) 1389 .build(); 1390 client.setIamPolicy(request); 1391 Assert.fail("No exception raised"); 1392 } catch (InvalidArgumentException e) { 1393 // Expected exception. 1394 } 1395 } 1396 1397 @Test getIamPolicyTest()1398 public void getIamPolicyTest() throws Exception { 1399 Policy expectedResponse = 1400 Policy.newBuilder() 1401 .setVersion(351608024) 1402 .addAllBindings(new ArrayList<Binding>()) 1403 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 1404 .setEtag(ByteString.EMPTY) 1405 .build(); 1406 mockIAMPolicy.addResponse(expectedResponse); 1407 1408 GetIamPolicyRequest request = 1409 GetIamPolicyRequest.newBuilder() 1410 .setResource( 1411 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1412 .toString()) 1413 .setOptions(GetPolicyOptions.newBuilder().build()) 1414 .build(); 1415 1416 Policy actualResponse = client.getIamPolicy(request); 1417 Assert.assertEquals(expectedResponse, actualResponse); 1418 1419 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1420 Assert.assertEquals(1, actualRequests.size()); 1421 GetIamPolicyRequest actualRequest = ((GetIamPolicyRequest) actualRequests.get(0)); 1422 1423 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1424 Assert.assertEquals(request.getOptions(), actualRequest.getOptions()); 1425 Assert.assertTrue( 1426 channelProvider.isHeaderSent( 1427 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1428 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1429 } 1430 1431 @Test getIamPolicyExceptionTest()1432 public void getIamPolicyExceptionTest() throws Exception { 1433 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1434 mockIAMPolicy.addException(exception); 1435 1436 try { 1437 GetIamPolicyRequest request = 1438 GetIamPolicyRequest.newBuilder() 1439 .setResource( 1440 EndpointName.ofProjectLocationEndpointName( 1441 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1442 .toString()) 1443 .setOptions(GetPolicyOptions.newBuilder().build()) 1444 .build(); 1445 client.getIamPolicy(request); 1446 Assert.fail("No exception raised"); 1447 } catch (InvalidArgumentException e) { 1448 // Expected exception. 1449 } 1450 } 1451 1452 @Test testIamPermissionsTest()1453 public void testIamPermissionsTest() throws Exception { 1454 TestIamPermissionsResponse expectedResponse = 1455 TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 1456 mockIAMPolicy.addResponse(expectedResponse); 1457 1458 TestIamPermissionsRequest request = 1459 TestIamPermissionsRequest.newBuilder() 1460 .setResource( 1461 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1462 .toString()) 1463 .addAllPermissions(new ArrayList<String>()) 1464 .build(); 1465 1466 TestIamPermissionsResponse actualResponse = client.testIamPermissions(request); 1467 Assert.assertEquals(expectedResponse, actualResponse); 1468 1469 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1470 Assert.assertEquals(1, actualRequests.size()); 1471 TestIamPermissionsRequest actualRequest = ((TestIamPermissionsRequest) actualRequests.get(0)); 1472 1473 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1474 Assert.assertEquals(request.getPermissionsList(), actualRequest.getPermissionsList()); 1475 Assert.assertTrue( 1476 channelProvider.isHeaderSent( 1477 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1478 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1479 } 1480 1481 @Test testIamPermissionsExceptionTest()1482 public void testIamPermissionsExceptionTest() throws Exception { 1483 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1484 mockIAMPolicy.addException(exception); 1485 1486 try { 1487 TestIamPermissionsRequest request = 1488 TestIamPermissionsRequest.newBuilder() 1489 .setResource( 1490 EndpointName.ofProjectLocationEndpointName( 1491 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 1492 .toString()) 1493 .addAllPermissions(new ArrayList<String>()) 1494 .build(); 1495 client.testIamPermissions(request); 1496 Assert.fail("No exception raised"); 1497 } catch (InvalidArgumentException e) { 1498 // Expected exception. 1499 } 1500 } 1501 } 1502