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.compute.v1; 18 19 import static com.google.cloud.compute.v1.ImagesClient.ListPagedResponse; 20 21 import com.google.api.gax.core.NoCredentialsProvider; 22 import com.google.api.gax.httpjson.GaxHttpJsonProperties; 23 import com.google.api.gax.httpjson.testing.MockHttpService; 24 import com.google.api.gax.rpc.ApiClientHeaderProvider; 25 import com.google.api.gax.rpc.ApiException; 26 import com.google.api.gax.rpc.ApiExceptionFactory; 27 import com.google.api.gax.rpc.InvalidArgumentException; 28 import com.google.api.gax.rpc.StatusCode; 29 import com.google.api.gax.rpc.testing.FakeStatusCode; 30 import com.google.cloud.compute.v1.Operation.Status; 31 import com.google.cloud.compute.v1.stub.HttpJsonImagesStub; 32 import com.google.common.collect.Lists; 33 import java.io.IOException; 34 import java.util.ArrayList; 35 import java.util.Arrays; 36 import java.util.HashMap; 37 import java.util.List; 38 import java.util.concurrent.ExecutionException; 39 import javax.annotation.Generated; 40 import org.junit.After; 41 import org.junit.AfterClass; 42 import org.junit.Assert; 43 import org.junit.Before; 44 import org.junit.BeforeClass; 45 import org.junit.Test; 46 47 @Generated("by gapic-generator-java") 48 public class ImagesClientTest { 49 private static MockHttpService mockService; 50 private static ImagesClient client; 51 52 @BeforeClass startStaticServer()53 public static void startStaticServer() throws IOException { 54 mockService = 55 new MockHttpService( 56 HttpJsonImagesStub.getMethodDescriptors(), ImagesSettings.getDefaultEndpoint()); 57 ImagesSettings settings = 58 ImagesSettings.newBuilder() 59 .setTransportChannelProvider( 60 ImagesSettings.defaultHttpJsonTransportProviderBuilder() 61 .setHttpTransport(mockService) 62 .build()) 63 .setCredentialsProvider(NoCredentialsProvider.create()) 64 .build(); 65 client = ImagesClient.create(settings); 66 } 67 68 @AfterClass stopServer()69 public static void stopServer() { 70 client.close(); 71 } 72 73 @Before setUp()74 public void setUp() {} 75 76 @After tearDown()77 public void tearDown() throws Exception { 78 mockService.reset(); 79 } 80 81 @Test deleteTest()82 public void deleteTest() throws Exception { 83 Operation expectedResponse = 84 Operation.newBuilder() 85 .setClientOperationId("clientOperationId-1230366697") 86 .setCreationTimestamp("creationTimestamp-370203401") 87 .setDescription("description-1724546052") 88 .setEndTime("endTime-1607243192") 89 .setError(Error.newBuilder().build()) 90 .setHttpErrorMessage("httpErrorMessage1577303431") 91 .setHttpErrorStatusCode(0) 92 .setId(3355) 93 .setInsertTime("insertTime966165798") 94 .setKind("kind3292052") 95 .setName("name3373707") 96 .setOperationGroupId("operationGroupId1716161683") 97 .setOperationType("operationType91999553") 98 .setProgress(-1001078227) 99 .setRegion("region-934795532") 100 .setSelfLink("selfLink1191800166") 101 .setStartTime("startTime-2129294769") 102 .setStatus(Status.DONE) 103 .setStatusMessage("statusMessage-958704715") 104 .setTargetId(-815576439) 105 .setTargetLink("targetLink486368555") 106 .setUser("user3599307") 107 .addAllWarnings(new ArrayList<Warnings>()) 108 .setZone("zone3744684") 109 .build(); 110 mockService.addResponse(expectedResponse); 111 112 String project = "project-6911"; 113 String image = "image-769"; 114 115 Operation actualResponse = client.deleteAsync(project, image).get(); 116 Assert.assertEquals(expectedResponse, actualResponse); 117 118 List<String> actualRequests = mockService.getRequestPaths(); 119 Assert.assertEquals(1, actualRequests.size()); 120 121 String apiClientHeaderKey = 122 mockService 123 .getRequestHeaders() 124 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 125 .iterator() 126 .next(); 127 Assert.assertTrue( 128 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 129 .matcher(apiClientHeaderKey) 130 .matches()); 131 } 132 133 @Test deleteExceptionTest()134 public void deleteExceptionTest() throws Exception { 135 ApiException exception = 136 ApiExceptionFactory.createException( 137 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 138 mockService.addException(exception); 139 140 try { 141 String project = "project-6911"; 142 String image = "image-769"; 143 client.deleteAsync(project, image).get(); 144 Assert.fail("No exception raised"); 145 } catch (ExecutionException e) { 146 } 147 } 148 149 @Test deprecateTest()150 public void deprecateTest() throws Exception { 151 Operation expectedResponse = 152 Operation.newBuilder() 153 .setClientOperationId("clientOperationId-1230366697") 154 .setCreationTimestamp("creationTimestamp-370203401") 155 .setDescription("description-1724546052") 156 .setEndTime("endTime-1607243192") 157 .setError(Error.newBuilder().build()) 158 .setHttpErrorMessage("httpErrorMessage1577303431") 159 .setHttpErrorStatusCode(0) 160 .setId(3355) 161 .setInsertTime("insertTime966165798") 162 .setKind("kind3292052") 163 .setName("name3373707") 164 .setOperationGroupId("operationGroupId1716161683") 165 .setOperationType("operationType91999553") 166 .setProgress(-1001078227) 167 .setRegion("region-934795532") 168 .setSelfLink("selfLink1191800166") 169 .setStartTime("startTime-2129294769") 170 .setStatus(Status.DONE) 171 .setStatusMessage("statusMessage-958704715") 172 .setTargetId(-815576439) 173 .setTargetLink("targetLink486368555") 174 .setUser("user3599307") 175 .addAllWarnings(new ArrayList<Warnings>()) 176 .setZone("zone3744684") 177 .build(); 178 mockService.addResponse(expectedResponse); 179 180 String project = "project-6911"; 181 String image = "image-769"; 182 DeprecationStatus deprecationStatusResource = DeprecationStatus.newBuilder().build(); 183 184 Operation actualResponse = 185 client.deprecateAsync(project, image, deprecationStatusResource).get(); 186 Assert.assertEquals(expectedResponse, actualResponse); 187 188 List<String> actualRequests = mockService.getRequestPaths(); 189 Assert.assertEquals(1, actualRequests.size()); 190 191 String apiClientHeaderKey = 192 mockService 193 .getRequestHeaders() 194 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 195 .iterator() 196 .next(); 197 Assert.assertTrue( 198 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 199 .matcher(apiClientHeaderKey) 200 .matches()); 201 } 202 203 @Test deprecateExceptionTest()204 public void deprecateExceptionTest() throws Exception { 205 ApiException exception = 206 ApiExceptionFactory.createException( 207 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 208 mockService.addException(exception); 209 210 try { 211 String project = "project-6911"; 212 String image = "image-769"; 213 DeprecationStatus deprecationStatusResource = DeprecationStatus.newBuilder().build(); 214 client.deprecateAsync(project, image, deprecationStatusResource).get(); 215 Assert.fail("No exception raised"); 216 } catch (ExecutionException e) { 217 } 218 } 219 220 @Test getTest()221 public void getTest() throws Exception { 222 Image expectedResponse = 223 Image.newBuilder() 224 .setArchitecture("architecture839674195") 225 .setArchiveSizeBytes(-1766390198) 226 .setCreationTimestamp("creationTimestamp-370203401") 227 .setDeprecated(DeprecationStatus.newBuilder().build()) 228 .setDescription("description-1724546052") 229 .setDiskSizeGb(-757478089) 230 .setFamily("family-1281860764") 231 .addAllGuestOsFeatures(new ArrayList<GuestOsFeature>()) 232 .setId(3355) 233 .setImageEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 234 .setKind("kind3292052") 235 .setLabelFingerprint("labelFingerprint379449680") 236 .putAllLabels(new HashMap<String, String>()) 237 .addAllLicenseCodes(new ArrayList<Long>()) 238 .addAllLicenses(new ArrayList<String>()) 239 .setName("name3373707") 240 .setRawDisk(RawDisk.newBuilder().build()) 241 .setSatisfiesPzs(true) 242 .setSelfLink("selfLink1191800166") 243 .setShieldedInstanceInitialState(InitialStateConfig.newBuilder().build()) 244 .setSourceDisk("sourceDisk-1111923624") 245 .setSourceDiskEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 246 .setSourceDiskId("sourceDiskId888256403") 247 .setSourceImage("sourceImage-105174528") 248 .setSourceImageEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 249 .setSourceImageId("sourceImageId2006496059") 250 .setSourceSnapshot("sourceSnapshot-1078634753") 251 .setSourceSnapshotEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 252 .setSourceSnapshotId("sourceSnapshotId-1480876934") 253 .setSourceType("sourceType-1111431691") 254 .setStatus("status-892481550") 255 .addAllStorageLocations(new ArrayList<String>()) 256 .build(); 257 mockService.addResponse(expectedResponse); 258 259 String project = "project-6911"; 260 String image = "image-769"; 261 262 Image actualResponse = client.get(project, image); 263 Assert.assertEquals(expectedResponse, actualResponse); 264 265 List<String> actualRequests = mockService.getRequestPaths(); 266 Assert.assertEquals(1, actualRequests.size()); 267 268 String apiClientHeaderKey = 269 mockService 270 .getRequestHeaders() 271 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 272 .iterator() 273 .next(); 274 Assert.assertTrue( 275 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 276 .matcher(apiClientHeaderKey) 277 .matches()); 278 } 279 280 @Test getExceptionTest()281 public void getExceptionTest() throws Exception { 282 ApiException exception = 283 ApiExceptionFactory.createException( 284 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 285 mockService.addException(exception); 286 287 try { 288 String project = "project-6911"; 289 String image = "image-769"; 290 client.get(project, image); 291 Assert.fail("No exception raised"); 292 } catch (InvalidArgumentException e) { 293 // Expected exception. 294 } 295 } 296 297 @Test getFromFamilyTest()298 public void getFromFamilyTest() throws Exception { 299 Image expectedResponse = 300 Image.newBuilder() 301 .setArchitecture("architecture839674195") 302 .setArchiveSizeBytes(-1766390198) 303 .setCreationTimestamp("creationTimestamp-370203401") 304 .setDeprecated(DeprecationStatus.newBuilder().build()) 305 .setDescription("description-1724546052") 306 .setDiskSizeGb(-757478089) 307 .setFamily("family-1281860764") 308 .addAllGuestOsFeatures(new ArrayList<GuestOsFeature>()) 309 .setId(3355) 310 .setImageEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 311 .setKind("kind3292052") 312 .setLabelFingerprint("labelFingerprint379449680") 313 .putAllLabels(new HashMap<String, String>()) 314 .addAllLicenseCodes(new ArrayList<Long>()) 315 .addAllLicenses(new ArrayList<String>()) 316 .setName("name3373707") 317 .setRawDisk(RawDisk.newBuilder().build()) 318 .setSatisfiesPzs(true) 319 .setSelfLink("selfLink1191800166") 320 .setShieldedInstanceInitialState(InitialStateConfig.newBuilder().build()) 321 .setSourceDisk("sourceDisk-1111923624") 322 .setSourceDiskEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 323 .setSourceDiskId("sourceDiskId888256403") 324 .setSourceImage("sourceImage-105174528") 325 .setSourceImageEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 326 .setSourceImageId("sourceImageId2006496059") 327 .setSourceSnapshot("sourceSnapshot-1078634753") 328 .setSourceSnapshotEncryptionKey(CustomerEncryptionKey.newBuilder().build()) 329 .setSourceSnapshotId("sourceSnapshotId-1480876934") 330 .setSourceType("sourceType-1111431691") 331 .setStatus("status-892481550") 332 .addAllStorageLocations(new ArrayList<String>()) 333 .build(); 334 mockService.addResponse(expectedResponse); 335 336 String project = "project-6911"; 337 String family = "family-7978"; 338 339 Image actualResponse = client.getFromFamily(project, family); 340 Assert.assertEquals(expectedResponse, actualResponse); 341 342 List<String> actualRequests = mockService.getRequestPaths(); 343 Assert.assertEquals(1, actualRequests.size()); 344 345 String apiClientHeaderKey = 346 mockService 347 .getRequestHeaders() 348 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 349 .iterator() 350 .next(); 351 Assert.assertTrue( 352 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 353 .matcher(apiClientHeaderKey) 354 .matches()); 355 } 356 357 @Test getFromFamilyExceptionTest()358 public void getFromFamilyExceptionTest() throws Exception { 359 ApiException exception = 360 ApiExceptionFactory.createException( 361 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 362 mockService.addException(exception); 363 364 try { 365 String project = "project-6911"; 366 String family = "family-7978"; 367 client.getFromFamily(project, family); 368 Assert.fail("No exception raised"); 369 } catch (InvalidArgumentException e) { 370 // Expected exception. 371 } 372 } 373 374 @Test getIamPolicyTest()375 public void getIamPolicyTest() throws Exception { 376 Policy expectedResponse = 377 Policy.newBuilder() 378 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 379 .addAllBindings(new ArrayList<Binding>()) 380 .setEtag("etag3123477") 381 .setIamOwned(true) 382 .addAllRules(new ArrayList<Rule>()) 383 .setVersion(351608024) 384 .build(); 385 mockService.addResponse(expectedResponse); 386 387 String project = "project-6911"; 388 String resource = "resource-756"; 389 390 Policy actualResponse = client.getIamPolicy(project, resource); 391 Assert.assertEquals(expectedResponse, actualResponse); 392 393 List<String> actualRequests = mockService.getRequestPaths(); 394 Assert.assertEquals(1, actualRequests.size()); 395 396 String apiClientHeaderKey = 397 mockService 398 .getRequestHeaders() 399 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 400 .iterator() 401 .next(); 402 Assert.assertTrue( 403 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 404 .matcher(apiClientHeaderKey) 405 .matches()); 406 } 407 408 @Test getIamPolicyExceptionTest()409 public void getIamPolicyExceptionTest() throws Exception { 410 ApiException exception = 411 ApiExceptionFactory.createException( 412 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 413 mockService.addException(exception); 414 415 try { 416 String project = "project-6911"; 417 String resource = "resource-756"; 418 client.getIamPolicy(project, resource); 419 Assert.fail("No exception raised"); 420 } catch (InvalidArgumentException e) { 421 // Expected exception. 422 } 423 } 424 425 @Test insertTest()426 public void insertTest() throws Exception { 427 Operation expectedResponse = 428 Operation.newBuilder() 429 .setClientOperationId("clientOperationId-1230366697") 430 .setCreationTimestamp("creationTimestamp-370203401") 431 .setDescription("description-1724546052") 432 .setEndTime("endTime-1607243192") 433 .setError(Error.newBuilder().build()) 434 .setHttpErrorMessage("httpErrorMessage1577303431") 435 .setHttpErrorStatusCode(0) 436 .setId(3355) 437 .setInsertTime("insertTime966165798") 438 .setKind("kind3292052") 439 .setName("name3373707") 440 .setOperationGroupId("operationGroupId1716161683") 441 .setOperationType("operationType91999553") 442 .setProgress(-1001078227) 443 .setRegion("region-934795532") 444 .setSelfLink("selfLink1191800166") 445 .setStartTime("startTime-2129294769") 446 .setStatus(Status.DONE) 447 .setStatusMessage("statusMessage-958704715") 448 .setTargetId(-815576439) 449 .setTargetLink("targetLink486368555") 450 .setUser("user3599307") 451 .addAllWarnings(new ArrayList<Warnings>()) 452 .setZone("zone3744684") 453 .build(); 454 mockService.addResponse(expectedResponse); 455 456 String project = "project-6911"; 457 Image imageResource = Image.newBuilder().build(); 458 459 Operation actualResponse = client.insertAsync(project, imageResource).get(); 460 Assert.assertEquals(expectedResponse, actualResponse); 461 462 List<String> actualRequests = mockService.getRequestPaths(); 463 Assert.assertEquals(1, actualRequests.size()); 464 465 String apiClientHeaderKey = 466 mockService 467 .getRequestHeaders() 468 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 469 .iterator() 470 .next(); 471 Assert.assertTrue( 472 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 473 .matcher(apiClientHeaderKey) 474 .matches()); 475 } 476 477 @Test insertExceptionTest()478 public void insertExceptionTest() throws Exception { 479 ApiException exception = 480 ApiExceptionFactory.createException( 481 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 482 mockService.addException(exception); 483 484 try { 485 String project = "project-6911"; 486 Image imageResource = Image.newBuilder().build(); 487 client.insertAsync(project, imageResource).get(); 488 Assert.fail("No exception raised"); 489 } catch (ExecutionException e) { 490 } 491 } 492 493 @Test listTest()494 public void listTest() throws Exception { 495 Image responsesElement = Image.newBuilder().build(); 496 ImageList expectedResponse = 497 ImageList.newBuilder() 498 .setNextPageToken("") 499 .addAllItems(Arrays.asList(responsesElement)) 500 .build(); 501 mockService.addResponse(expectedResponse); 502 503 String project = "project-6911"; 504 505 ListPagedResponse pagedListResponse = client.list(project); 506 507 List<Image> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 508 509 Assert.assertEquals(1, resources.size()); 510 Assert.assertEquals(expectedResponse.getItemsList().get(0), resources.get(0)); 511 512 List<String> actualRequests = mockService.getRequestPaths(); 513 Assert.assertEquals(1, actualRequests.size()); 514 515 String apiClientHeaderKey = 516 mockService 517 .getRequestHeaders() 518 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 519 .iterator() 520 .next(); 521 Assert.assertTrue( 522 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 523 .matcher(apiClientHeaderKey) 524 .matches()); 525 } 526 527 @Test listExceptionTest()528 public void listExceptionTest() throws Exception { 529 ApiException exception = 530 ApiExceptionFactory.createException( 531 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 532 mockService.addException(exception); 533 534 try { 535 String project = "project-6911"; 536 client.list(project); 537 Assert.fail("No exception raised"); 538 } catch (InvalidArgumentException e) { 539 // Expected exception. 540 } 541 } 542 543 @Test patchTest()544 public void patchTest() throws Exception { 545 Operation expectedResponse = 546 Operation.newBuilder() 547 .setClientOperationId("clientOperationId-1230366697") 548 .setCreationTimestamp("creationTimestamp-370203401") 549 .setDescription("description-1724546052") 550 .setEndTime("endTime-1607243192") 551 .setError(Error.newBuilder().build()) 552 .setHttpErrorMessage("httpErrorMessage1577303431") 553 .setHttpErrorStatusCode(0) 554 .setId(3355) 555 .setInsertTime("insertTime966165798") 556 .setKind("kind3292052") 557 .setName("name3373707") 558 .setOperationGroupId("operationGroupId1716161683") 559 .setOperationType("operationType91999553") 560 .setProgress(-1001078227) 561 .setRegion("region-934795532") 562 .setSelfLink("selfLink1191800166") 563 .setStartTime("startTime-2129294769") 564 .setStatus(Status.DONE) 565 .setStatusMessage("statusMessage-958704715") 566 .setTargetId(-815576439) 567 .setTargetLink("targetLink486368555") 568 .setUser("user3599307") 569 .addAllWarnings(new ArrayList<Warnings>()) 570 .setZone("zone3744684") 571 .build(); 572 mockService.addResponse(expectedResponse); 573 574 String project = "project-6911"; 575 String image = "image-769"; 576 Image imageResource = Image.newBuilder().build(); 577 578 Operation actualResponse = client.patchAsync(project, image, imageResource).get(); 579 Assert.assertEquals(expectedResponse, actualResponse); 580 581 List<String> actualRequests = mockService.getRequestPaths(); 582 Assert.assertEquals(1, actualRequests.size()); 583 584 String apiClientHeaderKey = 585 mockService 586 .getRequestHeaders() 587 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 588 .iterator() 589 .next(); 590 Assert.assertTrue( 591 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 592 .matcher(apiClientHeaderKey) 593 .matches()); 594 } 595 596 @Test patchExceptionTest()597 public void patchExceptionTest() throws Exception { 598 ApiException exception = 599 ApiExceptionFactory.createException( 600 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 601 mockService.addException(exception); 602 603 try { 604 String project = "project-6911"; 605 String image = "image-769"; 606 Image imageResource = Image.newBuilder().build(); 607 client.patchAsync(project, image, imageResource).get(); 608 Assert.fail("No exception raised"); 609 } catch (ExecutionException e) { 610 } 611 } 612 613 @Test setIamPolicyTest()614 public void setIamPolicyTest() throws Exception { 615 Policy expectedResponse = 616 Policy.newBuilder() 617 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 618 .addAllBindings(new ArrayList<Binding>()) 619 .setEtag("etag3123477") 620 .setIamOwned(true) 621 .addAllRules(new ArrayList<Rule>()) 622 .setVersion(351608024) 623 .build(); 624 mockService.addResponse(expectedResponse); 625 626 String project = "project-6911"; 627 String resource = "resource-756"; 628 GlobalSetPolicyRequest globalSetPolicyRequestResource = 629 GlobalSetPolicyRequest.newBuilder().build(); 630 631 Policy actualResponse = client.setIamPolicy(project, resource, globalSetPolicyRequestResource); 632 Assert.assertEquals(expectedResponse, actualResponse); 633 634 List<String> actualRequests = mockService.getRequestPaths(); 635 Assert.assertEquals(1, actualRequests.size()); 636 637 String apiClientHeaderKey = 638 mockService 639 .getRequestHeaders() 640 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 641 .iterator() 642 .next(); 643 Assert.assertTrue( 644 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 645 .matcher(apiClientHeaderKey) 646 .matches()); 647 } 648 649 @Test setIamPolicyExceptionTest()650 public void setIamPolicyExceptionTest() throws Exception { 651 ApiException exception = 652 ApiExceptionFactory.createException( 653 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 654 mockService.addException(exception); 655 656 try { 657 String project = "project-6911"; 658 String resource = "resource-756"; 659 GlobalSetPolicyRequest globalSetPolicyRequestResource = 660 GlobalSetPolicyRequest.newBuilder().build(); 661 client.setIamPolicy(project, resource, globalSetPolicyRequestResource); 662 Assert.fail("No exception raised"); 663 } catch (InvalidArgumentException e) { 664 // Expected exception. 665 } 666 } 667 668 @Test setLabelsTest()669 public void setLabelsTest() throws Exception { 670 Operation expectedResponse = 671 Operation.newBuilder() 672 .setClientOperationId("clientOperationId-1230366697") 673 .setCreationTimestamp("creationTimestamp-370203401") 674 .setDescription("description-1724546052") 675 .setEndTime("endTime-1607243192") 676 .setError(Error.newBuilder().build()) 677 .setHttpErrorMessage("httpErrorMessage1577303431") 678 .setHttpErrorStatusCode(0) 679 .setId(3355) 680 .setInsertTime("insertTime966165798") 681 .setKind("kind3292052") 682 .setName("name3373707") 683 .setOperationGroupId("operationGroupId1716161683") 684 .setOperationType("operationType91999553") 685 .setProgress(-1001078227) 686 .setRegion("region-934795532") 687 .setSelfLink("selfLink1191800166") 688 .setStartTime("startTime-2129294769") 689 .setStatus(Status.DONE) 690 .setStatusMessage("statusMessage-958704715") 691 .setTargetId(-815576439) 692 .setTargetLink("targetLink486368555") 693 .setUser("user3599307") 694 .addAllWarnings(new ArrayList<Warnings>()) 695 .setZone("zone3744684") 696 .build(); 697 mockService.addResponse(expectedResponse); 698 699 String project = "project-6911"; 700 String resource = "resource-756"; 701 GlobalSetLabelsRequest globalSetLabelsRequestResource = 702 GlobalSetLabelsRequest.newBuilder().build(); 703 704 Operation actualResponse = 705 client.setLabelsAsync(project, resource, globalSetLabelsRequestResource).get(); 706 Assert.assertEquals(expectedResponse, actualResponse); 707 708 List<String> actualRequests = mockService.getRequestPaths(); 709 Assert.assertEquals(1, actualRequests.size()); 710 711 String apiClientHeaderKey = 712 mockService 713 .getRequestHeaders() 714 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 715 .iterator() 716 .next(); 717 Assert.assertTrue( 718 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 719 .matcher(apiClientHeaderKey) 720 .matches()); 721 } 722 723 @Test setLabelsExceptionTest()724 public void setLabelsExceptionTest() throws Exception { 725 ApiException exception = 726 ApiExceptionFactory.createException( 727 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 728 mockService.addException(exception); 729 730 try { 731 String project = "project-6911"; 732 String resource = "resource-756"; 733 GlobalSetLabelsRequest globalSetLabelsRequestResource = 734 GlobalSetLabelsRequest.newBuilder().build(); 735 client.setLabelsAsync(project, resource, globalSetLabelsRequestResource).get(); 736 Assert.fail("No exception raised"); 737 } catch (ExecutionException e) { 738 } 739 } 740 741 @Test testIamPermissionsTest()742 public void testIamPermissionsTest() throws Exception { 743 TestPermissionsResponse expectedResponse = 744 TestPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 745 mockService.addResponse(expectedResponse); 746 747 String project = "project-6911"; 748 String resource = "resource-756"; 749 TestPermissionsRequest testPermissionsRequestResource = 750 TestPermissionsRequest.newBuilder().build(); 751 752 TestPermissionsResponse actualResponse = 753 client.testIamPermissions(project, resource, testPermissionsRequestResource); 754 Assert.assertEquals(expectedResponse, actualResponse); 755 756 List<String> actualRequests = mockService.getRequestPaths(); 757 Assert.assertEquals(1, actualRequests.size()); 758 759 String apiClientHeaderKey = 760 mockService 761 .getRequestHeaders() 762 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 763 .iterator() 764 .next(); 765 Assert.assertTrue( 766 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 767 .matcher(apiClientHeaderKey) 768 .matches()); 769 } 770 771 @Test testIamPermissionsExceptionTest()772 public void testIamPermissionsExceptionTest() throws Exception { 773 ApiException exception = 774 ApiExceptionFactory.createException( 775 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 776 mockService.addException(exception); 777 778 try { 779 String project = "project-6911"; 780 String resource = "resource-756"; 781 TestPermissionsRequest testPermissionsRequestResource = 782 TestPermissionsRequest.newBuilder().build(); 783 client.testIamPermissions(project, resource, testPermissionsRequestResource); 784 Assert.fail("No exception raised"); 785 } catch (InvalidArgumentException e) { 786 // Expected exception. 787 } 788 } 789 } 790